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/sage.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 Info from "components/landing/info";13import LaTeX from "components/landing/latex";14import Pitch from "components/landing/pitch";15import SignIn from "components/landing/sign-in";16import Snapshots from "components/landing/snapshots";17import { Paragraph, Text, Title } from "components/misc";18import A from "components/misc/A";19import { Customize } from "lib/customize";20import withCustomize from "lib/with-customize";2122import SiteName from "components/share/site-name";23import sagetexScreenshot from "public/features/cocalc-sagemath-sagetex.png";24import sageLogo from "public/features/sage-circular-v2.svg";25import sageNbgrader from "public/features/sage-nbgrader.png";26import sageScreenshot from "public/features/sage-worksheet.png";27import juypterScreenshot from "public/features/sagemath-jupyter.png";2829const component = "SageMath";30const title = `Use SageMath Online`;3132export default function Sage({ customize }) {33return (34<Customize value={customize}>35<Head title={title} />36<Layout>37<Header page="features" subPage="sage" runnableTag="sage" />38<Layout.Content>39<Content40landing41startup={component}42body={sageLogo}43title={44<>45Use <A href="https://www.sagemath.org/">SageMath</A> Online46</>47}48subtitle={49<>50The goal of <A href="https://www.sagemath.org/">SageMath</A> is51to create a viable free open source alternative to Magma, Maple,52Mathematica and Matlab by building on top of many existing53open-source packages, including NumPy, SciPy, matplotlib, SymPy,54Maxima, GAP, FLINT, and{" "}55<A href="/features/r-statistical-software">R</A>.56</>57}58subtitleBelow={true}59image={juypterScreenshot}60alt={"Using Sage in a Worksheet"}61/>6263<Pitch64col1={65<>66<Title level={2}>67<Icon name="sagemath" /> Start using{" "}68<A href="https://sagemath.org/">SageMath</A> on <SiteName />69</Title>70<Paragraph>71<ol>72<li>73Start by <A href="/auth/sign-up">signing up</A> for a free{" "}74<SiteName /> account.75</li>76<li>77Read the{" "}78<A href="https://doc.cocalc.com/getting-started.html">79getting started guide80</A>{" "}81to orient yourself and create your first project.82</li>83</ol>84After creating your first project, go ahead and create85<ul>86<li>87a{" "}88<A href="/features/jupyter-notebook">Jupyter Notebooks</A>{" "}89file,90</li>91<li>a Sage Worksheet,</li>92<li>93a <LaTeX /> document, or94</li>95<li>96a plaintext <Text code>*.sage</Text> file and run sage in97a <A href="/features/terminal">Linux Terminal</A>.98</li>99</ul>100</Paragraph>101</>102}103col2={104<>105<Title level={2}>106<Icon name="smile" /> Benefits of SageMath on <SiteName />107</Title>108<Paragraph>109<ul>110<li>111You no longer have to{" "}112<strong>113<A href="https://www.sagemath.org/download.html">114install and maintain115</A>116</strong>{" "}117SageMath, which can be challenging since Sage is large.118When you're{" "}119<A href="/features/teaching">teaching a class</A>,120students just have to sign in to CoCalc to get started!121</li>122<li>123You can easily{" "}124<A href="https://github.com/sagemathinc/cocalc-howto/blob/main/build-sage.md">125build Sage from source and run it on extremely powerful126computers127</A>{" "}128for only a few cents.129</li>130<li>131You can still easily run <b>older versions of Sage</b>{" "}132since many are all preinstalled in every CoCalc project.133</li>134<li>135All your files are private, stored persistently,136snapshotted and backed up; moreover, you can <b>rsync</b>{" "}137them to your computer or push them to <b>GitHub</b>.138</li>139<li>140You can invite <strong>collaborators</strong> to your141project to simultaneously edit the same notebooks or code142files.143</li>144<li>145Everything runs remotely, which means you do not have to146worry about messing up your own computer.{" "}147</li>148</ul>149<iframe150width="560"151height="315"152src="https://www.youtube.com/embed/b8e8qq-KWbA?si=620SEO8C1JBYXpJL"153title="YouTube video player"154frameBorder="0"155allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"156allowFullScreen157></iframe>158</Paragraph>159</>160}161/>162163<SignIn startup={component} />164165<Info.Heading166description={167<>There are many ways to use {component} online via CoCalc.</>168}169>170Feature Overview171</Info.Heading>172173<Info174title={"SageMath Worksheets"}175image={sageScreenshot}176alt={"Using SageMath in a Worksheet"}177anchor="sagews"178icon="sagemath"179wide180>181<Paragraph>182CoCalc's{" "}183<A href="https://doc.cocalc.com/sagews.html">184SageMath Worksheets185</A>{" "}186are a single document experience that can be more friendly than187the Jupyter notebook "multiple cells" approach.188</Paragraph>189<Paragraph>190They are a great way to teach SageMath, since you can easily191include text, code, and output in a single document.192</Paragraph>193</Info>194195<Info196title={197<>198SageMath in <LaTeX /> documents199</>200}201image={sagetexScreenshot}202alt={"Using SageMath in a LaTeX document"}203anchor="latex"204wide205>206<Paragraph>207You can also embed SageMath code in your{" "}208<A href="/features/latex-editor">209<LaTeX /> documents210</A>211.212</Paragraph>213<Paragraph>214This means you no longer have to manually copy and paste output215from SageMath worksheets into your LaTeX documents.216</Paragraph>217<Paragraph>218Learn more about{" "}219<A href={"https://ctan.org/pkg/sagetex?lang=en"}>SageTeX</A> and{" "}220<A href={"https://doc.cocalc.com/latex.html#sage"}>221how to use it in CoCalc222</A>223.224</Paragraph>225</Info>226227<Info228title={"SageMath in Jupyter Notebooks"}229image={juypterScreenshot}230alt={"Using SageMath in a Jupyter Notebook"}231anchor="jupyter"232icon="jupyter"233wide234>235<Paragraph>236You can also use SageMath in{" "}237<A href="/features/jupyter-notebook">Jupyter Notebooks</A>.238</Paragraph>239<Paragraph>240This is a great way to teach SageMath, since you can easily241include text, code, and output in a single document.242</Paragraph>243<Paragraph>244Learn more about{" "}245<A href="https://doc.cocalc.com/jupyter.html">246how to use SageMath in Jupyter Notebooks247</A>248.249</Paragraph>250</Info>251252<Info253title={"Teach using SageMath and Nbgrader"}254image={sageNbgrader}255alt={"A screenshot using nbgrader with SageMath."}256anchor="nbgrader"257icon="graduation-cap"258wide259>260<Paragraph>261CoCalc's{" "}262<A href="/features/teaching">263integrated course management system264</A>{" "}265fully supports{" "}266<A href="https://doc.cocalc.com/teaching-nbgrader.html">267using nbgrader together with SageMath268</A>{" "}269Jupyter Notebooks.270</Paragraph>271<Paragraph>272We provide custom Python templates for all the nbgrader cell273types.274</Paragraph>275<Paragraph>276Tests run in the student's project by default, so malicious code277won't impact anybody except the student.278</Paragraph>279</Info>280281<Snapshots />282283<SignIn startup={component} />284</Layout.Content>285<Footer />286</Layout>287</Customize>288);289}290291export async function getServerSideProps(context) {292return await withCustomize({ context });293}294295296