Skip to main content

PrismNote

A fast, local-first, Jupyter-compatible data-science notebook with built-in AI.

CI License: Apache 2.0 prismnote on PyPI

What it is

PrismNote is a data-science notebook served by a single executable: a Rust (Axum) backend, a React + TypeScript (Vite) frontend embedded in the release binary, and a thin Python launcher on PyPI that downloads the matching prebuilt server binary on first run. It executes code in 15+ languages, runs SQL against local engines and 9+ databases, sandboxes untrusted/AI-generated code in disposable Docker containers, and provides integrated code assistance via Claude, OpenAI, or a local Ollama model. The core notebook semantics (cross-cell state, real error handling, per-notebook kernel isolation, .ipynb import/export) are verified to match real Jupyter behavior.

Features / Highlights

  • Jupyter-compatible kernel semantics — cross-cell state, real tracebacks, and per-notebook kernel isolation (a regression that used to share one global Python namespace across notebooks is fixed and re-verified live).
  • SQL cells against real backends — SQLite and DuckDB (embedded, no server), PostgreSQL and MySQL via real servers; all covered by integration tests with genuine CREATE TABLE/INSERT/SELECT round trips.
  • Cloud warehouse connectors — real connection + query execution for Snowflake, BigQuery, Redshift, Azure Synapse, Databricks, Athena (real SigV4), Presto, and Trino.
  • Sandboxed code execution — each run spawns a brand-new disposable Docker container: no network by default, memory/CPU/process limits, a wall-clock timeout, and real stdout/stderr/exit-code capture.
  • Integrated AI, privacy-friendly — code explain/fix/complete, NL-to-SQL, and RunPod fine-tuning, all disabled until you configure a provider (including local Ollama).
  • Key integrations — dbt (real CLI + manifest/run-result parsing), GitHub (Contents API backup/sync), Airflow REST, Kubernetes (kubectl), RunPod GraphQL, and real cloud-storage clients for S3/GCS/Azure Blob/Google Drive.
  • Single-binary distribution — the release build embeds the frontend; pip install prismnote gives you one command to run.

Who it's for / Use cases

  • Data scientists and analysts who want the Jupyter experience plus real SQL and warehouse access from the same notebook — no separate BI tool.
  • People running untrusted or AI-generated code who want real container sandboxing (no network, enforced limits, timeout) rather than in-process execution.
  • Local-first users who don't want a heavyweight hosted notebook platform; everything runs on your machine by default.

What it is not

  • No prebuilt binary for Windows/Linux yet. The published release binary is macOS Apple Silicon only; other platforms must build from source.
  • MongoDB is not implemented (an explicit error, not fake success).
  • Data-quality scoring is not wired to real execution — the two scoring code paths are the one integration still without a working implementation.
  • Idle kernels are never evicted (resource management improvement, not a correctness gap).
  • Not without known gaps. Backend tests pass (170, plus 114 frontend/backend vitest), but frontend lint (435 errors) and Playwright e2e (57/85) currently fail in CI without failing the build — tracked in ROADMAP_HONEST.md.
  • The PyPI metadata says Development Status :: 5 - Production/Stable; the repo's own docs are more honest — this is actively developed single-maintainer software, and ROADMAP_HONEST.md is the source of truth for what's broken or unverified.

Project status

v1.12.0 (PyPI). Active and CI-green for build/tests; the honest, current set of bugs and gaps is maintained in ROADMAP_HONEST.md. Release history: CHANGELOG.md and GitHub Releases.

Installation

pip install prismnote
prismnote

On first run, the thin Python launcher (python/prismnote/_cli.py) downloads the matching prebuilt server binary from GitHub Releases and execs it. As of this version the prebuilt binary is published for macOS (Apple Silicon) only; other platforms build from source:

git clone https://github.com/Mullassery/PrismNote.git
cd PrismNote
make build          # builds the frontend first and embeds it into the binary

make build is the only path that produces a binary that serves the UI (target/release/prismnote). A bare cargo build --release builds a backend with no frontend assets.

Requirements: Rust (stable), Node 20.19+ (Vite 8), and Docker for sandboxed code execution.

Quick start

pip install prismnote
prismnote             # serves the app; printed URL, default http://localhost:8000

Create a notebook, add a SQL cell, and query, e.g., a local DuckDB file — or a Python cell and run it. Enable AI/config by copying .env.example to .env (Google Sign-In and AI features are disabled until configured).

Usage

  • SQL backends: SQLite and DuckDB run embedded with no server required; PostgreSQL/MySQL need a reachable server. MongoDB returns an explicit not-implemented error.
  • Sandboxed languages: Python, Bash/shell, JavaScript (Node), Ruby — each run in a fresh, limited, disposable Docker container (requires Docker).
  • Warehouse queries: Snowflake, BigQuery, Redshift, Azure Synapse, Databricks, Athena, Presto, Trino via crates/server/src/cloud_warehouse/.
  • Cloud storage: S3, GCS, Azure Blob, Google Drive clients wired to the /cloud-storage API (unit-tested HTTP clients; automatic notebook-backup scheduling on top is not yet built).
  • AI/MCP: see docs/guides/AI_MCP_INTEGRATION.md and the MCP examples in examples/.
  • Development: backend on http://localhost:8000 (cargo run); frontend dev server on http://localhost:5173 (cd frontend && npm install && npm run dev).

Documentation

Contributing

See CONTRIBUTING.md (dev setup, real test/lint commands) and CODE_OF_CONDUCT.md. Security issues: report via SECURITY.md, not public issues.

  • MudFish — Rust-native web crawling and intelligence engine; feed crawl results into notebooks and RAG pipelines
  • ClusterAudienceKit — RFM analysis, K-Means clustering, CLV, churn detection, and lookalikes for data science work
  • PyReverseETL — quality-validated data activation with audit trail and lineage, a natural step after analysis
  • PyInferenceManager — multi-provider LLM inference executor, complements PrismNote's AI integration
  • MessageBirds — open-source, event-driven Customer Data & Engagement Platform (Rust + TypeScript)

Browse all projects →

License

Apache License 2.0. See LICENSE for the full terms.

Metadata

Release files for prismnote 1.12.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for prismnote 1.12.1
File Size Uploaded Provenance Actions
prismnote-1.12.1.tar.gz 34.6 kB Without provenance Details for prismnote-1.12.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for prismnote 1.12.1
File Interpreter ABI Platform Actions
prismnote-1.12.1-py3-none-any.whl Python 3 none any Details for prismnote-1.12.1-py3-none-any.whl

Total release size: 58.8 kB

Release files / prismnote-1.12.1.tar.gz

Download URL prismnote-1.12.1.tar.gz
Size 34.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a7db1624aaea1f59a38fa3c25652fc3e5791d9c8ee9068476f5da697f86b790c
BLAKE2b-256 checksum
How to use checksums
b888bb9da08089505a9c6344b6d84f578933c13ad054637999fde6f73a8fc344
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release files / prismnote-1.12.1-py3-none-any.whl

Download URL prismnote-1.12.1-py3-none-any.whl
Size 24.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9745e4d73be326ffe3bf935e014be21bbd2f1068ba0628be1da1b7679a176f0e
BLAKE2b-256 checksum
How to use checksums
70bd3cbe7d550e3fae5224f28cccb62138a9d60b63df2ae6c4d9ea027318776d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Security for prismnote 1.12.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page