PrismNote
SQL analytics notebooks that run offline. On your computer. No cloud required.
Write SQL queries in a notebook that saves locally, switch between 8 warehouses (Snowflake, BigQuery, Redshift, Postgres, MySQL, DuckDB, Spark, ClickHouse) without changing code, and execute everything offline. Built for data scientists and engineers who want control.
30-Second Start
from prismnote import Notebook
# Create notebook (saved locally)
nb = Notebook("my_analysis.pnb")
# Connect to any warehouse
nb.connect("snowflake", account="xy12345", warehouse="compute_wh")
# Write SQL directly
result = nb.query("""
SELECT customer_id, COUNT(*) as purchases
FROM orders
GROUP BY customer_id
ORDER BY purchases DESC
""")
# Results in Python
print(result)
Why PrismNote?
The Problem:
- Jupyter notebooks for SQL are clunky (no syntax highlighting, no auto-complete)
- Cloud notebooks (Colab, Databricks) lock your data in the cloud
- Switching between databases requires rewriting code
- No offline support (can't work on the plane)
The Solution:
- Native SQL notebooks with full IDE features
- Runs completely offline (no data leaves your machine)
- Switch warehouses without changing a line of code
- Version control your analysis (plain text format)
Key Features
- 8 Warehouse Support: Snowflake, BigQuery, Redshift, Postgres, MySQL, DuckDB, Spark, ClickHouse
- Local-First: Notebooks saved on your computer, not the cloud
- Offline Execution: Run queries without internet connection (for local databases)
- SQL + Python: Mix SQL queries with Python for analysis
- Auto-Complete: Full SQL syntax highlighting and warehouse-aware suggestions
- Result Visualization: Built-in charts, tables, and statistical summaries
- Export Ready: Save results as CSV, Parquet, JSON
Real-World Use Cases
Data Exploration:
# Quickly explore a new dataset
nb = Notebook("exploration.pnb")
nb.connect("bigquery", project="my-project")
# Instant feedback, no context switching
nb.query("SELECT * FROM dataset LIMIT 100")
Cross-Warehouse Analysis:
# Pull from two different databases
results_snowflake = nb.query_snowflake("SELECT * FROM sales")
results_postgres = nb.query_postgres("SELECT * FROM products")
# Combine in Python
merged = pd.merge(results_snowflake, results_postgres, on='id')
Offline Analysis:
# DuckDB for local, offline data science
nb = Notebook("offline_analysis.pnb")
nb.connect("duckdb", path="local.db")
nb.query("SELECT * FROM my_local_data") # Works on airplane
Warehouse Support Matrix
| Warehouse | Status | Auth | Notes |
|---|---|---|---|
| Snowflake | ✅ | Username/Key | Full support |
| BigQuery | ✅ | Service Account | Full support |
| Redshift | ✅ | Username/Password | Full support |
| PostgreSQL | ✅ | Connection String | Full support |
| MySQL | ✅ | Connection String | Full support |
| DuckDB | ✅ | Local File | Offline support |
| Apache Spark | ✅ | PySpark Session | Full support |
| ClickHouse | ✅ | Connection String | Full support |
Installation
pip install prismnote
# or with uv
uv pip install prismnote
Documentation
- Quick Start Guide — Get running in 5 minutes
- Warehouse Guide — Connect to your database
- SQL Reference — Warehouse-specific SQL features
- Examples — Real-world notebooks
License
Proprietary License - Free to use with explicit attribution. See LICENSE.
PrismNote v2.0.0 | Local-first SQL notebooks | Python 3.10+
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file prismnote-1.9.0.tar.gz.
File metadata
- Download URL: prismnote-1.9.0.tar.gz
- Upload date:
- Size: 24.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2705adfa53da352a02db25a53d9b3c55764f32d18e20a75ce8187e36bd495a30
|
|
| MD5 |
c0294d412920eeef258662637db124c8
|
|
| BLAKE2b-256 |
35ba0f3461bd572ca60169943fe978acb9c70c93379ee1bf9f72f583e77acf56
|
File details
Details for the file prismnote-1.9.0-py3-none-any.whl.
File metadata
- Download URL: prismnote-1.9.0-py3-none-any.whl
- Upload date:
- Size: 25.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
479e20b2b2cb5ddd5ac21f5dd3ccefa969f08533154e7196ba487ecf0ab6d1c0
|
|
| MD5 |
cb931b292ecd6e08e9ee83f2ae498bff
|
|
| BLAKE2b-256 |
0c76de58cb3869fefcf80327934553e80024f2e61603be1dad5746f818a17bb9
|