{"slug": "marimohub-self-hostable-marimo-notebooks", "title": "marimohub – self-hostable marimo notebooks", "summary": "The marimo team released marimohub, a self-hostable platform for storing, managing, and running marimo notebooks on a team's own infrastructure. The hub keeps notebook metadata, versions, snapshots, and system records in an object store instead of a separate database, and lets operators swap storage (CoreWeave CAIOS, S3-compatible, Google Cloud Storage, Azure Blob Storage, filesystem, or Cloudflare R2), compute (CoreWeave Sandboxes, Modal, AWS ECS Fargate, Kubernetes, Docker, Podman, E2B, Cloudflare Containers, or local subprocesses), and identity (OpenID Connect, trusted SSO proxies, Google IAP, or Cloudflare Access) behind TypeScript ports. It requires Node >= 24.11, pnpm 10.34.5, and uv plus Python for local notebook kernels, and is licensed under the Apache License, Version 2.0.", "body_md": "marimohub is a self-hostable platform for storing, managing, and running\n[marimo](https://marimo.io) notebooks. It is built for teams that want to run\nnotebooks on their own infrastructure while choosing their own storage, compute,\nand identity providers.\n\nThe hub has no separate database. Notebook metadata, versions, snapshots, and system records live in an object store, so the object store is the source of truth you back up and recover. External systems sit behind TypeScript ports, so operators can swap providers without changing the domain logic.\n\n- Bring your own **storage** : CoreWeave CAIOS, S3-compatible storage, Google Cloud\nStorage, Azure Blob Storage, filesystem, or Cloudflare R2.\n- Bring your own **compute** : CoreWeave Sandboxes, Modal, AWS ECS Fargate,\nKubernetes, Docker, Podman, E2B, Cloudflare Containers, or local subprocesses.\n- Bring your own **identity** : OpenID Connect, trusted SSO proxies, Google IAP,\nor Cloudflare Access.\n- Optional managed AI, versioned integrations, encrypted values, external secret references, and short-lived federated cloud access.\n\nUse marimohub when you want a self-hosted notebook hub with a small operational surface and explicit provider choices. If you want a hosted SaaS or do not want to operate storage, compute, and auth, this is probably not the right shape yet.\n\nRequirements: Node >= 24.11, pnpm 10.34.5, and `uv` plus Python if you want to\nstart local notebook kernels.\n\n```\npnpm install --frozen-lockfile\npnpm dev\n```\n\n`pnpm dev` watches the TypeScript server and runs it with the Vite web app in\nparallel. It skips the production server build. The local stack uses:\n\n- `memory` storage, which is non-durable\n- `local` compute, which starts`uv run marimo edit`\n- `dev` auth, which signs everyone in as a fixed local super admin\n- integrations and metadata browsing, with a welcome notebook and sample environment\n\nSet `MARIMOHUB_DEV_PERSIST=true` to keep local state in the Git-ignored\n`.context/dev-storage` directory. Run `pnpm dev:reset` after stopping the dev\nstack to clear it.\n\nSee [Testing locally](https://github.com/marimo-team/marimohub/blob/main/docs/testing-locally.md) for the full local path and the\nproduction swaps for each backend.\n\nMost deployments use the config-driven server image: set `MARIMOHUB_*`\nenvironment variables and let `@marimo-hub/config` select the adapters. Custom\nruntimes can compose the packages directly as a library.\n\nStart with [Getting started](https://github.com/marimo-team/marimohub/blob/main/docs/getting-started.md), then choose a deployment\nguide:\n\nUseful references:\n\n- [Configuration](https://github.com/marimo-team/marimohub/blob/main/docs/configuration.md) - every`MARIMOHUB_*` variable\n- [Storage](https://github.com/marimo-team/marimohub/blob/main/docs/storage.md) ,[Compute](https://github.com/marimo-team/marimohub/blob/main/docs/compute.md) , and[Auth](https://github.com/marimo-team/marimohub/blob/main/docs/auth.md) - backend choices\n- [Security](https://github.com/marimo-team/marimohub/blob/main/docs/security.md) ,[Operations](https://github.com/marimo-team/marimohub/blob/main/docs/operations.md) , and[Troubleshooting](https://github.com/marimo-team/marimohub/blob/main/docs/troubleshooting.md) - production operation\n- [API & client](https://github.com/marimo-team/marimohub/blob/main/docs/api.md) - HTTP response envelope and generated client\n\nThis is a pnpm and vite-plus TypeScript monorepo.\n\n```\npnpm check\npnpm test\npnpm build\n```\n\nRead [CONTRIBUTING.md](https://github.com/marimo-team/marimohub/blob/main/CONTRIBUTING.md) before opening a pull request. For\narchitecture and internal design, start with\n[development_docs/architecture.md](https://github.com/marimo-team/marimohub/blob/main/development_docs/architecture.md) and\n[development_docs/bucket_spec.md](https://github.com/marimo-team/marimohub/blob/main/development_docs/bucket_spec.md). Integration\nkind contributors should also read\n[development_docs/integrations.md](https://github.com/marimo-team/marimohub/blob/main/development_docs/integrations.md).\n\nmarimohub is licensed under the Apache License, Version 2.0. See\n[LICENSE](https://github.com/marimo-team/marimohub/blob/main/LICENSE).", "url": "https://wpnews.pro/news/marimohub-self-hostable-marimo-notebooks", "canonical_source": "https://github.com/marimo-team/marimohub", "published_at": "2026-10-04 00:55:59+00:00", "updated_at": "2026-10-04 01:06:29.366366+00:00", "lang": "en", "topics": ["developer-tools", "ai-tools", "ai-infrastructure"], "entities": ["marimohub", "marimo", "CoreWeave", "Modal", "AWS ECS Fargate", "Kubernetes", "Cloudflare", "E2B"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/marimohub-self-hostable-marimo-notebooks", "markdown": "https://wpnews.pro/news/marimohub-self-hostable-marimo-notebooks.md", "text": "https://wpnews.pro/news/marimohub-self-hostable-marimo-notebooks.txt", "jsonld": "https://wpnews.pro/news/marimohub-self-hostable-marimo-notebooks.jsonld"}}