Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Path: blob/master/src/packages/next/pages/features/julia.tsx
Views: 687
/*1* This file is part of CoCalc: Copyright © 2021 Sagemath, Inc.2* License: MS-RSL – see LICENSE.md for details3*/45import { Layout } from "antd";67import { Icon } from "@cocalc/frontend/components/icon";8import Content from "components/landing/content";9import Footer from "components/landing/footer";10import Head from "components/landing/head";11import Header from "components/landing/header";12import Image from "components/landing/image";13import Info from "components/landing/info";14import Pitch from "components/landing/pitch";15import SignIn from "components/landing/sign-in";16import Snapshots from "components/landing/snapshots";17import { Paragraph, Title } from "components/misc";18import A from "components/misc/A";19import { Customize } from "lib/customize";20import withCustomize from "lib/with-customize";21import juliaCode from "public/features/julia-code.png";22import splash from "public/features/julia-jupyter.png";23import logo from "public/features/julia-logo.svg";24import nbgraderScreenshot from "public/features/julia-nbgrader.png";25import plutoLogo from "public/features/pluto-logo.svg";26import plutoScreenshot from "public/features/pluto-plot.png";2728const component = "Julia";29const title = `Run ${component} Online`;3031export default function Julia({ customize }) {32return (33<Customize value={customize}>34<Head title={title} />35<Layout>36<Header page="features" subPage="julia" runnableTag="jl" />37<Layout.Content>38<Content39landing40startup={component}41body={logo}42title={title}43subtitleBelow={true}44subtitle={45<>46<div>47Run {component} scripts, <A href="">Pluto notebooks</A>,{" "}48<A href="/features/jupyter-notebook">Jupyter notebooks</A> in49a full, online environment.50</div>51</>52}53image={splash}54alt={55"Using Julia in a Jupyter notebook to plot and do symbolic computation"56}57/>58<Pitch59col1={60<>61<Title level={2}>62<Icon name="julia" /> Run{" "}63<A href="https://julialang.org/">Julia</A> on CoCalc64</Title>65<Paragraph>66<ul>67<li>68Use CoCalc's own realtime collaborative{" "}69<strong>70<A href="/features/jupyter-notebook">71Jupyter Notebooks72</A>73</strong>74.75</li>76<li>77Use Julia from the collaborative,{" "}78<strong>79<A href="/features/terminal">Linux Terminal</A>80</strong>{" "}81or{" "}82<A href="/features/x11">83virtual X11 graphical Linux desktop84</A>85.86</li>87<li>88Easily launch a{" "}89<A href="https://doc.cocalc.com/howto/pluto.html">90Pluto.jl notebook server91</A>{" "}92in your CoCalc project.93</li>94</ul>95</Paragraph>9697<Title level={2}>Packages</Title>98<Paragraph>99CoCalc includes over 500{" "}100<A href="/software/julia">pre-installed Julia packages,</A>{" "}101and if something is missing you can{" "}102<A href="https://doc.cocalc.com/howto/install-julia-package.html">103easily install more packages.104</A>105</Paragraph>106</>107}108col2={109<>110<Title level={2}>Benefits of working with Julia online</Title>111<Paragraph>112<ul>113<li>114You no longer have to{" "}115<strong>install and maintain</strong> Julia. In particular116when you're{" "}117<A href="/features/teaching">teaching a class</A>,118students just have to sign in to CoCalc to get started!119</li>120<li>121All your files are private, stored persistently,122snapshotted and backed up.123</li>124<li>125You can invite <strong>collaborators</strong> to your126project to simultaneously edit the same notebooks or code127files.128</li>129<li>130Everything runs remotely, which means you do not have to131worry about messing up your own computer.{" "}132</li>133</ul>134</Paragraph>135</>136}137/>138139<SignIn startup={component} />140141<Info.Heading142description={143<>There are many ways to use {component} online via CoCalc.</>144}145>146Feature Overview147</Info.Heading>148149<Info150title={151<>152<A href="https://github.com/fonsp/Pluto.jl#readme">153<Image154src={plutoLogo}155height={70}156width={250}157alt="the Pluto.jl Logo"158/>159<br />160Use Reactive Notebooks Built for Julia161</A>162</>163}164image={plutoScreenshot}165alt={"A screenshot of the Pluto notebook."}166anchor="pluto"167wide168>169<Paragraph>170You can use the{" "}171<A href="https://doc.cocalc.com/howto/pluto.html">172Pluto.jl notebook server173</A>{" "}174in any CoCalc project. Pluto is an open source lightweight and175reactive notebook written in Julia.176</Paragraph>177</Info>178179<Info180title={"Teach using Julia and Nbgrader"}181image={nbgraderScreenshot}182alt={"A screenshot using nbgrader with Julia."}183anchor="nbgrader"184>185<Paragraph>186CoCalc's{" "}187<A href="/features/teaching">188integrated course management system189</A>{" "}190fully supports{" "}191<A href="https://doc.cocalc.com/teaching-nbgrader.html">192using nbgrader together with Julia193</A>{" "}194Jupyter Notebooks.195</Paragraph>196<Paragraph>197We provide custom Julia templates for all the nbgrader cell types.198</Paragraph>199<Paragraph>200Tests run in the student's project, so malicious code won't impact201anybody except the student.202</Paragraph>203</Info>204205<Info206title={"Collaboratively Edit and Run Julia Code"}207image={juliaCode}208alt={"A screenshot involving Julia code, a terminal, and chat."}209anchor="code"210>211<Paragraph>212CoCalc includes a realtime collaborative Julia code editor with213syntax highlighting and code folding.214</Paragraph>215<Paragraph>216You can also run Julia code in a terminal side-by-side the .jl217file you are editing.218</Paragraph>219<Paragraph>220In addition, you can chat with other CoCalc users about your code.221</Paragraph>222</Info>223224<Snapshots />225226<SignIn startup={component} />227</Layout.Content>228<Footer />229</Layout>230</Customize>231);232}233234export async function getServerSideProps(context) {235return await withCustomize({ context });236}237238239