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/octave.tsx
Views: 687
/*1* This file is part of CoCalc: Copyright © 2022 Sagemath, Inc.2* License: MS-RSL – see LICENSE.md for details3*/45import { Layout } from "antd";67import Content from "components/landing/content";8import Footer from "components/landing/footer";9import Head from "components/landing/head";10import Header from "components/landing/header";11import Info from "components/landing/info";12import Pitch from "components/landing/pitch";13import SignIn from "components/landing/sign-in";14import Snapshots from "components/landing/snapshots";15import { Paragraph, Title } from "components/misc";16import A from "components/misc/A";17import { Customize } from "lib/customize";18import withCustomize from "lib/with-customize";19import octaveJupyter from "public/features/cocalc-octave-jupyter-20200511.png";20import octaveTerminal from "public/features/cocalc-octave-terminal-20200511.png";21import octaveX11 from "public/features/cocalc-octave-x11-20200511.png";22import logo from "public/features/octave-logo.svg";23import x11Terminal from "public/features/octave-x11-terminal.png";2425const octave = <A href="https://www.gnu.org/software/octave/index">Octave</A>;26const title = "Run Octave Online";2728export default function Octave({ customize }) {29return (30<Customize value={customize}>31<Head title={title} />32<Layout>33<Header page="features" subPage="octave" runnableTag="octave" />34<Layout.Content>35<Content36landing37startup={"Octave"}38body={logo}39title={title}40subtitle={41<>42Run {octave} in an online Terminal, a Jupyter Notebook or an X1143desktop. Octave is largely compatible with MATLAB®! For many44teaching purposes you can use Octave instead of MATLAB.45</>46}47subtitleBelow={true}48image={octaveJupyter}49alt="Plotting a Sombrero in a Jupyter notebook using Octave"50/>5152<Pitch53col1={54<>55<Title level={2}>Run Octave on CoCalc</Title>56<Paragraph>57<ul>58<li>59Via CoCalc's own real-time synchronized{" "}60<strong>61<A href="/features/jupyter-notebook">62Jupyter Notebooks63</A>64</strong>65.66</li>67<li>68A full, collaborative, real-time synchronized{" "}69<strong>70<A href="/features/terminal">Linux Terminal</A>71</strong>72.73</li>74<li>75A{" "}76<strong>77<A href="/features/x11">78virtual X11 graphical Linux desktop79</A>80</strong>81.82</li>83</ul>84</Paragraph>8586<Title level={2}>Packages</Title>87<Paragraph>88Browse a{" "}89<A href="/software/octave">90list of all installed Octave packages...91</A>92</Paragraph>93</>94}95col2={96<>97<Title level={3}>Benefits of working online</Title>98<Paragraph>99<ul>100<li>101You no longer have to{" "}102<strong>install and maintain</strong> Octave. In103particular when you're{" "}104<A href="/features/teaching">teaching a class</A>,105students just have to sign in to CoCalc to get started!106</li>107<li>108All your files are private, stored persistently,109snapshotted and backed up.110</li>111<li>112You can invite <strong>collaborators</strong> to your113project to simultaneously edit the same files.114</li>115<li>116Everything runs remotely, which means you do not have to117worry about messing up your own computer.{" "}118</li>119</ul>120</Paragraph>121</>122}123/>124125<SignIn startup="Octave" />126127<Info.Heading128description={129<>There are many ways to use Octave online via CoCalc.</>130}131>132Feature Overview133</Info.Heading>134135<Info136title="Jupyter Notebook support"137icon="ipynb"138image={octaveJupyter}139anchor="a-jupyter"140alt="Using Octave in a Jupyter notebook"141>142<Paragraph>143CoCalc offers its own Jupyter Notebook implementation. It has a144few key advantages.145</Paragraph>146<Paragraph>147<ol>148<li>149<strong>Realtime synchronization</strong>: two or more150collaborators can edit the same notebook at the same time.151Everyone sees what others are typing.152</li>153<li>154<strong>Remote session</strong>: the notebook's kernel runs155remotely. This means you only need a web browser and Internet156access. Don't worry about software setup.157</li>158<li>159If you depend on using the classical Jupyter notebook or160JupyterLab, it is also very easy to{" "}161<A href="https://doc.cocalc.com/jupyter.html#alternatives-plain-jupyter-server-and-jupyterlab-server">162use Octave via these services as well163</A>164.165</li>166</ol>167</Paragraph>168</Info>169170<Info171title="Octave in a Terminal"172icon="octave"173image={octaveTerminal}174anchor="a-terminal"175alt="Using Octave in a CoCalc terminal"176caption="Octave in CoCalc's Terminal"177>178<Paragraph>179You can edit Octave code and run it in a Terminal as{" "}180<A href="https://doc.cocalc.com/frame-editor.html">181explained here182</A>183.184</Paragraph>185<Paragraph>186File changes are tracked in detail via{" "}187<A href="https://doc.cocalc.com/time-travel.html">TimeTravel</A>:188this means you can see the progress of your changes or see exactly189what collaborators and students did when you weren't looking.190</Paragraph>191</Info>192193<Info194title="Octave in an X11 Graphical Desktop"195icon="window-restore"196image={octaveX11}197anchor="a-x11"198alt="Using the traditional Octave GUI via X11"199wide200>201<Paragraph>202You can start Octave's GUI in a full remote desktop as{" "}203<A href="https://doc.cocalc.com/x11.html">explained here</A>.204</Paragraph>205<Paragraph>206Accessing a full GUI app remotely adds latency, but you're freed207from the limitations of a Terminal or Jupyter Notebook. Multiple208people can interact with the graphical Octave app from different209web browsers, though you're limited to one mouse cursor.210</Paragraph>211</Info>212213<Info214title="Octave in an X11 Terminal"215icon="terminal"216image={x11Terminal}217anchor="a-x11-terminal"218caption="X11 Terminal with interactive 3D plot"219alt="Using a Terminal with Octave and X11 to draw an interactive 3D plot"220wide221>222<Paragraph>223Run any graphical applications written for Octave in your web224browser!225</Paragraph>226<Paragraph>227You can start Octave in the X11 graphical terminal. When you plot228graphics they will appear in a window to the right. In the example229in the screenshot, it is possible to grab and rotate the 3D plot.230</Paragraph>231</Info>232233<Snapshots />234235<SignIn startup="Octave" />236</Layout.Content>237<Footer />238</Layout>239</Customize>240);241}242243export async function getServerSideProps(context) {244return await withCustomize({ context });245}246247248