Stacks / Docs

Medium

JupyterHub / marimo

Notebooks you host. JupyterHub is BSD-3-Clause; marimo is Apache-2.0 — Google Colab without the hosted runtime seat.

The problem

Google Colab is a hosted notebook runtime. You wanted kernels, users, and a notebook file on hardware you control. JupyterHub is BSD-3-Clause (jupyterhub/jupyterhub; last push 24 Oct 2026) — a multi-user server that spawns Jupyter notebook servers. marimo is Apache-2.0 (marimo-team/marimo; last push 25 Oct 2026) — a reactive Python notebook stored as a script. JupyterLab is BSD-3-Clause if the job is the IDE JupyterHub can spawn. This is not Colab's every GPU SKU, Drive mount, or hosted runtime. A research Q&A notebook stays on /replace/notebooklm (SurfSense).

Replaces

Google Colab

Replace Google Colab See all best open-source data science notebooks

Estimated SaaS saved

$1,200

per year, small team, before lock-in

Start on Railway

SurfSense if this is a research Q&A notebook, not a data-science kernel

Sponsor this stack Tip jar

Placeholder: JupyterHub (proxy plus a spawner) or marimo plus a volume for notebooks. Bind HTTP to 0.0.0.0:$PORT. No one-click template in this repo yet — Start on Railway. Cited research stays on /stacks/surfsense-research.

The stack

Cost table

You stop payingTypical / yearSelf-host instead
Google Colab / hosted notebook (small team)$1,200JupyterHub or marimo + a volume

Agent setup prompt

Replace Google Colab with JupyterHub (preferred) or marimo (https://jupyterhub.readthedocs.io / https://marimo.io).

- Official docs. Persist notebooks on a volume. Create one user and one notebook. Do not claim Colab GPUs, Drive mounts, or hosted runtimes.
- marimo if the job is a reactive Python file. JupyterLab is the IDE JupyterHub can spawn. Research Q&A stays on /stacks/surfsense-research.
- Write AGENT_PROMPT.md.

Also as markdown: /stacks/jupyterhub-notebooks.md

FAQ

JupyterHub or marimo?
JupyterHub if you want the published Colab-shaped multi-user server (the path). marimo if you want that reactive Python file — /compare/jupyterhub-vs-marimo.
Is this NotebookLM?
No. Cited research stays on /replace/notebooklm (SurfSense). This page is a data-science kernel.
Are these free?
JupyterHub and JupyterLab are BSD-3-Clause. marimo is Apache-2.0. You pay hosting and any GPUs you attach. Template users never pay c17.