One framework ecosystem across 8 languages, backed by Nucleus — a single database engine with 14 data models. Ship web, mobile, desktop, and AI from one mental model.
Website · Documentation · llms.txt · Contributing
Neutron is a modular, multi-language full-stack framework. Every component is independent and connected by one thing — the PostgreSQL wire protocol that Nucleus speaks. Import only what you need: SQL ships by default, and every other data model is an optional import that strips out at compile time.
npm create @neutron-build@latestScaffolds a TypeScript app with file-based routing, SSR on Preact, and a typed Nucleus client. Then:
cd my-app && npm run devFull guide: neutron.build/docs.
For Python, install the published framework directly:
pip install neutron-frameworkThe package imports as neutron. See the Python quickstart.
- 8 languages, one contract. TypeScript, Rust, Go, Python, Elixir, Zig, Julia, and Mojo. The six web-framework SDKs (TypeScript, Rust, Go, Python, Elixir, Zig) implement the same framework contract — RFC 7807 errors, a standard middleware order,
GET /health, graceful shutdown — while the code stays idiomatic in each language. A language-agnostic conformance matrix inconformance/verifies this live: all six booted SDKs pass 12/12 dimensions (Go, Rust, Python, TypeScript, Elixir, Zig — measured 2026-08-22). Julia (scientific computing) and Mojo (ML) are client libraries, not web SDKs. - 14 data models, one database. Nucleus combines relational and specialty storage: SQL, KV, Vector, TimeSeries, Document, Graph, FTS, Geo, Blob, Streams, Columnar, Datalog, CDC, and PubSub — with a PostgreSQL wire endpoint and model-specific APIs. SQL/client compatibility is bounded by the recorded conformance results. 381,558 lines of Rust, 5,721 declared tests, MVCC + WAL crash recovery.
- Fast. On the TypeScript benchmark harness in
typescript/benchmarks/, Neutron beat Next.js on all 8 scenarios in every recorded run (2026-02 to 2026-08) and Astro on 6–8 of 8 depending on the run. Absolute throughput varies several-fold across machines — recorded 8-scenario averages span ~3.3k–28.6k req/s — so run the harness on your own hardware before quoting a number. - Honest about its limits.
docs/RESIDUAL_RISKS.mdis a standing register of what is not hardened — cross-model transactions, two index paths that read the whole table, what "formally verified" does and does not mean here — kept separate from the release notes on purpose, with each entry naming the test or measurement behind it. - Agent-native. Ships
llms.txt+llms-full.txt, a first-party MCP server (neutron mcp— 17 Nucleus tools plussearch_docs/get_doc), and anAGENTS.mdin every scaffolded app — so AI coding agents can build with Neutron from day one.
| Directory | Language | Description |
|---|---|---|
typescript/ |
TypeScript | UI framework — SSR, file-based routing, Preact, islands, signals |
rust/ |
Rust | Web framework — Hyper, trie routing, HTTP/1–2 (+HTTP/3 behind the http3 feature), 19 composable crates |
go/ |
Go | Backend framework — generics, OpenAPI 3.1, OAuth2, WebAuthn, jobs |
python/ |
Python | AI app framework — Starlette + Pydantic, RAG, MCP integration |
elixir/ |
Elixir | OTP fault-tolerant backend — Plug + Bandit, channels, presence |
| Directory | Language | Description |
|---|---|---|
nucleus/ |
Rust | Multi-model engine — SQL, KV, Vector, TimeSeries, Document, Graph, FTS, Geo, Blob, Streams, Columnar, Datalog, CDC, PubSub |
studio/ |
TypeScript | Visual database manager — all 14 data models in one UI |
| Directory | Language | Description |
|---|---|---|
zig/ |
Zig | Systems/embedded Nucleus client — comptime-typed queries, fixed-capacity connection pool |
julia/ |
Julia | Scientific-computing client — DataFrames, DiffEq, Flux, CUDA, Makie bridges |
mojo/ |
Mojo | ML library — tensors, quantization, inference (preview; built on Mojo 1.0) |
| Directory | Language | Description |
|---|---|---|
native/ |
TypeScript | Mobile — React-compatible components to native iOS/Android views (RN Fabric); Preact on web via compat alias |
desktop/ |
Rust + TS | Desktop apps — Tauri 2.0 + Preact, 12 plugin crates, Nucleus embedded mode (bundle-size targets, not yet measured) |
cli/ |
Go | Universal CLI — neutron new/dev/studio/generate/migrate, plus neutron mcp |
| Directory | Language | Description |
|---|---|---|
lean4/ |
Lean 4 | Machine-checked proofs of models of the core algorithms (MVCC, B-tree, WAL, Raft) |
quint/ |
Quint | Bounded model-checking of the distributed protocols (Multi-Raft, resharding, distributed tx) |
Each language ships an idiomatic Nucleus client. The Nucleus engine's 14 data models are SQL, KV, Vector, TimeSeries, Document, Graph, FTS, Geo, Blob, Streams, Columnar, Datalog, CDC, PubSub — per-SDK model coverage varies and is not collectively certified; each bullet below states its own scope.
- TypeScript —
@neutron-build/sql(alpha): Drizzle-shaped schema in code, no codegen, typed CRUD + nested relational reads in one statement (db.query.users.findFirst({ with: { posts: true } })), one readable SQL statement per call,toSQL()everywhere; verified on PostgreSQL 15, 16, 17 and 18 with bothpostgresandpgdrivers (changing a generated column's expression needs 17+; Nucleus not claimed). See its support matrix. Existing Drizzle users keep Drizzle through@neutron-build/data's typed interop wrapper. - Rust — Typed model handles via
NucleusClient - Go — Typed generics, struct tags
- Python — Pydantic models, async
- Elixir — Postgrex pool, OTP patterns
- Zig — Comptime, zero overhead
- Julia — Multiple dispatch, ecosystem bridges
See studio/ for the visual database manager and llms.txt for an AI-readable reference.
# Rust (nucleus/, rust/)
cargo build && cargo test
# TypeScript (typescript/, native/ use pnpm; studio/ uses npm)
pnpm install && pnpm test
# Go (cli/, go/)
go build ./... && go test ./...
# Python
cd python && pip install -e ".[test]" && pytestSee AGENTS.md for contributor and AI-agent guidance, and CLAUDE.md for the full ecosystem map. Each package directory has its own README.
Path-filtered per directory — a change to rust/ only runs rust.yml, and so on for typescript.yml, nucleus.yml, mojo-validation.yml, cli.yml, and desktop.yml.
- MIT — all framework projects (
typescript/,rust/,go/,python/,elixir/,zig/,julia/,mojo/,studio/,native/,desktop/,cli/,lean4/,quint/) - BSL 1.1 — Nucleus database engine (
nucleus/), converts to MIT on 2046-01-01