Skip to content

Commit

Permalink
deploy updates
Browse files Browse the repository at this point in the history
  • Loading branch information
novoselt committed Aug 12, 2024
1 parent e6fbfcf commit 0bea3a0
Show file tree
Hide file tree
Showing 225 changed files with 482 additions and 36 deletions.
7 changes: 7 additions & 0 deletions _sources/alternativeto/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Alternatives
============

.. toctree::
:maxdepth: 2

jupyterhub
28 changes: 13 additions & 15 deletions _sources/alternativeto/jupyterhub.rst.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
:orphan:

Alternative to JupyterHub
=========================

Expand All @@ -12,7 +10,7 @@ Key Features of JupyterHub
--------------------------
These are copied from https://jupyter.org/hub

- **Customizable** - JupyterHub can be used to serve a variety of environments. It supports dozens of kernels with the Jupyter server, and can be used to serve a variety of user interfaces including the Jupyter Notebook, Jupyter Lab, RStudio, nteract, and more.
- **Customizable** - JupyterHub can be used to serve a variety of environments. It supports dozens of kernels with the Jupyter server, and can be used to serve a variety of user interfaces including the Jupyter Notebook, JupyterLab, RStudio, nteract, and more.

- **Flexible** - JupyterHub can be configured with authentication in order to provide access to a subset of users. Authentication is pluggable, supporting a number of authentication protocols (such as OAuth and GitHub).

Expand All @@ -26,29 +24,29 @@ Portability

Note that JupyterHub is "just a software project", i.e. in order to make use of it and benefit from the above features, you do need to own appropriate hardware or setup a suitable environment with some cloud provider. You also need to have sufficient technical expertise and time to do this or hire someone else to do it for you. Exact time and money requirements depend a lot on the situation, but tend to be quite noticeable. There are companies that are happy to sell you their JupyterHub support services.

CoCalc also can be deployed in a variety of ways as a standalone instance just for you or your organization. The main difference with JupyterHub is that CoCalc is NOT a fully open-source project, we use Microsoft Reference Source License. You can look at the source code, but you cannot run an instance yourself without getting a permission from us. Third party companies also cannot provide support without having a suitable arrangement with us. We are, however, happy to discuss your needs if an OnPrem installation works well your case, we do have a number of such customers!
CoCalc also can be deployed in a variety of ways as a standalone instance just for you or your organization. The main difference with JupyterHub is that CoCalc is NOT a fully open-source project, we use `Microsoft Reference Source License <https://github.com/sagemathinc/cocalc/blob/master/LICENSE.md>`_. You can look at the `source code <https://github.com/sagemathinc/cocalc>`_, but you cannot run an instance yourself without getting permission from us. Third party companies also cannot provide support without having a suitable arrangement with us. We are happy to discuss your needs if an :doc:`OnPrem </on-premises>` installation suits your case. We already have a number of customers using this setup!

In many cases, however, it makes sense to directly use our hosted option - we already have a configured and actively managed cluster which you can use, easily increasing or decreasing the computational power available to you, including vast CPU and GPU resources.
In many cases, however, it makes sense to directly use our hosted service - a fully configured and actively managed cluster which you can use, easily increasing or decreasing the computational power available to you, including :doc:`vast CPU and GPU resources </compute_server>`.

Flexibility
-----------

Just as JupyterHub, CoCalc supports dozens of Jupyter kernels. Many of them are preconfigured and you can add more, both in the hosted and OnPrem installations. CoCalc allows you to easily run JupyterLab, VS Code, or R IDE on any of the servers in your project, so you can use the same familiar interfaces, if you choose so. However, CoCalc also gives you its own interface to work with Jupyter notebooks, and it does have a number of advantages:
Similar to JupyterHub, CoCalc can work with multiple :doc:`Jupyter kernels </howto/jupyter-kernel-selection>`. Many of them are preconfigured and you can add more, both in the hosted and OnPrem installations. CoCalc allows you to easily run :doc:`JupyterLab </servers>`, :doc:`/vscode`, or R IDE on any of the servers in your project, so you can use the same familiar interfaces, if you choose so. However, CoCalc also gives you its own interface to work with Jupyter notebooks, and it does have a number of advantages:

- server-side notebook state - the output is preserved if you close your browser or switch to a different machine
- full real-time collaboration - simultaneous editing of the same file and chat
- the best and most complete support of IPyWidgets that we are aware off, including sharing widget state between collaborators
- AI Assistant to generate and fix code, transalate between programming languages, and more
- TimeTravel automatic version control and backup system to complement ``git``
- **Server-side notebook state** - When you close your browser (or it crashes, or your laptop goes to sleep) new output is accumulated and saved, waiting for you to resume your work.
- **IPyWidgets support** - Our support is the best and most complete one that we are aware off. Collaborators see the same state of all widgets, since it is synchronized with the server.
- **Full real-time collaboration** - Edit the same file simultaneously with your collaborators, see their cursors, use the side chat, and video chat.
- **AI Assistant** - Choose your favourite LLM to help you generate, fix, and improve code, translate between programming languages, and :doc:`more </ai>`.
- **TimeTravel** - Our unique :doc:`automatic version control </time-travel>` and backup system complements ``git``.

Of course, apart from Jupyter notebooks CoCalc supports many other document types, including LaTeX documents, Linux terminals, Markdown, chats, courses, etc.
Of course, apart from :doc:`/jupyter`, CoCalc supports many other document types, including :doc:`LaTeX documents </latex>`, :doc:`Linux terminals </terminal>`, :doc:`/markdown`, :doc:`/chat`, :doc:`Courses </teaching-instructors>`, etc.

CoCalc does not have plugins that extend its functionality, rather everything available is included right away. In this sense you may consider JupyterHub to be more flexible/tunable, but it conveniently brings us to the next point.
CoCalc does not have plugins that extend its functionality, instead everything is included right away. In this sense you may consider JupyterHub to be more flexible/tunable, but it conveniently brings us to the next point.


Reliability
-----------

CoCalc functionality is continuously tested as a single unit in our production environment. Occasionally, there are bugs and regressions which we try to address as soon as possible. You may not even become aware of the problem because of our continuous monitoring of the service and other users reporting problems as well.
CoCalc functionality is continuously tested as a single unit in our production environment. Occasionally, there are bugs and regressions which we try to address as soon as possible. You may not even become aware of the problem because of our `continuous monitoring <https://status.cocalc.com/>`_ of the service and other users reporting problems as well.

With JupyterHub, on the other hand, our experience has shown that a user may attempt to install an innocuously looking plugin to discover that not only it does not work, but the whole environment becomes unusable and requires admin intervention to be fixed.
With JupyterHub, on the other hand, our experience has shown that a user may attempt to install an innocuously looking plugin (``jupyterlab-git`` to be specific) to discover that not only it does not work, but the whole environment becomes unusable and requires admin intervention to be fixed.
1 change: 1 addition & 0 deletions _sources/contents.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ This explains in depth how you can work productively on `CoCalc`_.
:maxdepth: 2

introduction
alternativeto/index
working_with
platform
user_interface
Expand Down
1 change: 1 addition & 0 deletions account-dropdown.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="platform.html">Platform</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="user_interface.html">User Interface</a><ul class="current">
Expand Down
1 change: 1 addition & 0 deletions account-toolbar.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="platform.html">Platform</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="user_interface.html">User Interface</a><ul class="current">
Expand Down
1 change: 1 addition & 0 deletions account/licenses.html
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="../working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="../platform.html">Platform</a></li>
<li class="toctree-l1"><a class="reference internal" href="../user_interface.html">User Interface</a></li>
Expand Down
1 change: 1 addition & 0 deletions account/preferences.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="../working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="../platform.html">Platform</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../user_interface.html">User Interface</a><ul class="current">
Expand Down
1 change: 1 addition & 0 deletions account/public-files.html
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="../working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="../platform.html">Platform</a></li>
<li class="toctree-l1"><a class="reference internal" href="../user_interface.html">User Interface</a></li>
Expand Down
1 change: 1 addition & 0 deletions account/purchases.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="../working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="../platform.html">Platform</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../user_interface.html">User Interface</a><ul class="current">
Expand Down
1 change: 1 addition & 0 deletions account/ssh.html
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="../working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="../platform.html">Platform</a></li>
<li class="toctree-l1"><a class="reference internal" href="../user_interface.html">User Interface</a></li>
Expand Down
1 change: 1 addition & 0 deletions account/support.html
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="../working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="../platform.html">Platform</a></li>
<li class="toctree-l1"><a class="reference internal" href="../user_interface.html">User Interface</a></li>
Expand Down
1 change: 1 addition & 0 deletions activity-bar.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1"><a class="reference internal" href="working_with.html">Working With</a></li>
<li class="toctree-l1"><a class="reference internal" href="platform.html">Platform</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="user_interface.html">User Interface</a><ul class="current">
Expand Down
1 change: 1 addition & 0 deletions ai.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="alternativeto/index.html">Alternatives</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="working_with.html">Working With</a><ul class="current">
<li class="toctree-l2 current"><a class="current reference internal" href="#">AI Assistant</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#llm-choice-and-billing">LLM Choice and Billing</a></li>
Expand Down
Loading

0 comments on commit 0bea3a0

Please sign in to comment.