Stacks

Draft Protocol & Reference Implementation

Portable full-stack conventions and testable capability contracts, grounded in a source-audited TypeScript/Bun implementation.

Protocol, Clearly Bounded

Part I defines portable conventions, lifecycle guarantees, capability contracts, profiles, and non-goals. Runtime and syntax remain implementation choices.

Source-Audited

Implementation statements are generated from a checksummed Stacks evidence set pinned to source bf1245e3, evidence revision 6008859d, and RFC revision cda56fb.

Honest Maturity

Capabilities are labeled Implemented, Partial, Experimental, Planned, or Not Audited. Configured providers are not assumed to be working drivers.

Model–View–Action

Models define domain data, Views project prepared data, and transport-independent Actions hold reusable application behavior.

AI-Efficient Authoring

Stacks conventions reduce app-owned boilerplate, while buddy ai:context gives LLMs deterministic application intent without dependency trees, secrets, caches, or build output.

Testable Conformance

Core, Standard, and Complete have 47 public requirement IDs, runner-neutral fixtures, a report schema, and an independent runner. Stacks currently claims no profile.

Type Evidence

Stacks.js combines compiler inference, runtime validation, generated declarations, migrations, API artifacts, and contract tests—with dynamic boundaries disclosed.

Security With Caveats

The paper documents concrete controls and material limits; it does not turn framework features into blanket security or legal-compliance claims.

Pre-1.0 by Design

Stacks.js is usable for evaluation and active development, but selected drivers and delivery targets must be verified for each workload.

Stacks White Paper

Protocol 1.0 Draft · Source snapshot 21 July 2026 · Pre-1.0

Stacks proposes a language-neutral protocol for the recurring coordination work of full-stack applications: routing, validation, Actions, persistence, authentication, background work, rendering, observability, and deployment boundaries.

Stacks.js is the first reference implementation. It is written in TypeScript for Bun. The current paper ingests a deterministic manifest at bf1245e3, which classifies 90 versioned package manifests without presenting count as quality evidence.

Read this first

The protocol is a governed working draft, not a ratified standard. The public RFC repository includes a catalog, fixtures, report schema, and independent Python runner. Stacks.js emits a schema-valid report whose profileClaim is null.

The audit found substantial implemented surfaces for routing, Actions, Models, migrations, validation, auth, queues, real-time messaging, notifications, AI, logging, and health. It also found important boundaries:

  • queue execution supports sync, database, and Redis; known unsupported names fail configuration or dispatch loudly;
  • OpenAPI generation is explicit, so checked-in output can be stale or empty;
  • analytics provides integrations and a client script, not the previously claimed complete reporting system;
  • environment encryption v2 uses X25519, HKDF-SHA-256, and AES-256-GCM but remains experimental pending RFC and independent review;
  • Craft desktop launch/build paths require an external Craft binary; signed updates and provenance exist, but the support matrix has zero stable targets;
  • native mobile delivery is not established by the audited Stacks source.

The full paper turns those findings into a concrete maturity matrix and a testable conformance design.

Reference snapshot

FieldValue
Source revisionbf1245e336ab14551e22cb7d88284f93e649a1a2
Evidence6008859d6e3d75e115261d6b7de76826324788da · checksummed generated page
RFC suitecda56fb8f967ca9f7522b119425a3f438f7f2fe9
Root manifest0.70.52
Framework workspaces0.70.161
RuntimeBun ^1.3.0
System requirementsGit 2.47.0, SQLite 3.47.2
Protocol status1.0 working draft

Quick start

The supplied source recommends Pantry for toolchain provisioning:

curl -fsSL https://pantry.dev | bash
panx @stacksjs/buddy new my-project
cd my-project
buddy dev

Use buddy list and buddy <command> --help for the installed version’s command surface.

Next steps

The Stacks.js source is MIT-licensed. The white paper recommends publishing an explicit specification license before Protocol 1.0 ratification.