Skip to content

Make Deepnote a first-class notebook runtime #162

Description

@Artmann

We're building Deepnote to be both a universal notebook runtime and a production-ready notebook format that works seamlessly across all environments.

We want Deepnote to be a first-class notebook execution environment. This means supporting all major notebook formats like .ipynb (Jupyter) and .py (Marimo), not just our own. We're building multi-language execution support so you can run Python, JavaScript, R, and Julia notebooks. The runtime should work anywhere: on your local machine, in VSCode, from the CLI, in CI/CD pipelines, in the browser via WebAssembly, or in remote containers.

Portable & Production-Ready Notebooks

Our .deepnote format needs to be version control friendly. The primary notebook file should only change when the code actually changes, not on every execution. We're separating runtime outputs into .deepnoterun files to achieve this stability.

We're capturing complete runtime metadata, environment details, and dependency versions so notebooks can be reliably reproduced. We're making notebooks reactive by automatically tracking dependencies between blocks, so changes propagate intelligently. And we're making them parametrizable through input blocks that can be set via CLI, APIs, or other interfaces.

The format needs to be extensible and well-defined so it can evolve with future needs.

Key Technical Directions

We're building bidirectional conversion with maximal compatibility between formats. When you convert .ipynb to .deepnote and back, we preserve everything. We're aiming for lossless round-trip conversions wherever feasible.

We're making headless execution a first-class feature with CLI support, so notebooks can run in automation and CI/CD and be used by LLM agents like Cursor. The runtime will be container-ready for production deployments.

We're building full VSCode and Cursor integration with native LLM agent support. We're also exploring support for other IDEs, such as PyCharm and Zed. File conversion should happen automatically when you open a notebook in any of these editors.

Related Work

This epic spans multiple repositories. The deepnote/deepnote repo handles file format, conversion tools, and CLI. The deepnote/deepnote-toolkit repo contains the kernel, execution engine, and runtime. The deepnote/vscode-deepnote repo handles editor integration and reactive execution UI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions