CoCalc as an online service for collaborative computing with Jupyter Notebooks, Linux terminals, LaTeX document editing, and more. Learn more about CoCalc itself in the CoCalc documentation.

Features and Benefits#

This CoCalc Cloud variant makes it possible to run CoCalc on your own cluster. This solves a couple of problems, enhances what your users can do with the cluster, and openes up new possibilities:

  • White-Labeling: CoCalc Cloud can be customized to look like your own service: change the name, icon, description, etc.

  • Software installation: CoCalc Cloud provides a complete software stack that includes a full Linux distribution, Python, R, Julia, SageMath, LaTeX, and much more. This stack is ready to use and consistent across all projects. You can install additional software in your own project – which is kind of equivalent of a traditional un-privileged user account on a Linux system. This is a huge advantage over the traditional approach of installing software on a shared cluster, where you have to deal with consistency, etc. On top of that, for special purpose projects you can define a customized software environment.

  • Resource management: CoCalc Cloud provides a resource management system that allows you to control how much resources each project can use. This is faciliated using “Licenses”, which define resource quotas and have a start and end time of their validity. These licenses are powerful enough to add or modify kuberntes pod attributes like Taint tolerations, Node selectors, etc. This means it is possible to setup a heterogeneous cluster for several workgroups, and control which group can use which nodes for thir computations.

  • Teaching: CoCalc Cloud inherits all the functionality for teaching a course, including NBGrader.

  • Collaboration: CoCalc Cloud provides all the functionality for collaboration, i.e. multiple users can edit and evaluate the same Jupyter Notebook, LaTeX Documents, Chat “on the side” of each file, etc. This is a huge advantage over sharing files via emails or a shared file system.

  • Publishing: all files can be shared on this platform, publicly or internally, and a quickly rendered preview lets you read the document online without having to download it. If enabled, it’s even possible to run cells in a shared Jupyter Notebook or code block snippets in a Markdown document.

  • Access internal services: since CoCalc Cloud runs in your cluster and you have full control over the networking configuration, projects can access internal resources like other parts of the cluster, services like your own Apache Spark cluster, etc.

  • Privacy/Security: CoCalc Cloud runs in your cluster, so you have full control over the data. You can even run it in an air-gapped environment or inside an isolated VPN.

  • SSO Authentication: CoCalc Cloud supports SSO authentication via SAML or OAuth2. This means you can integrate it with your existing authentication system, and users can login with their existing credentials.

  • Included Servers: Each CoCalc Cloud project includes a way to run a traditional Jupyter Classic or JupyterLab server. This gives your users an escape hatch to work in a familiar environment. Similarly, VSCode is pre-installed and available as well.