hover the atom · observe · collapse ψ

ψThe Continuum Framework

Your app exists in every runtime.
Until you run it.

Write the domain once. It lives in superposition across every context: server, edge, browser, agents. Running it is the observation that collapses it into one. Stone.js orchestrates the collapse.

Application = Domain × Context Resolution

ψThe principle

Architecture, borrowed from quantum mechanics.

The Continuum is built on the uncertainty principle and wave-function collapse, applied to software. Not a metaphor for show: each law maps to a mechanism we ship.

Σ

SUPERPOSITION

All contexts, latent

From the system's point of view, the outer context is in superposition: every platform, request and input source exists in potential, as long as none has been integrated, selected, collapsed.

OBSERVATION

Runtime is the measurement

At runtime, in the integration dimension, the intention is collapsed, normalised and stabilised into a usable internal context. That decoherence is where raw reality meets your logic.

ENTANGLEMENT

Backend ⟷ frontend, correlated

One schema validates the API and the form. One rule guards the route and shapes the UI. Measure one side: the other is already correct.

Δ

CONTEXTUAL UNCERTAINTY

Defer the where. Own the what.

A domain cannot, at the same time, know its execution context exactly and evolve independently of it. Know it too well and you are coupled; ignore it and you fail the intent. Stone.js keeps the where uncertain while you build the what, at full speed.


ψSuperposition, in code

Stack adapters. Collapse at runtime.

There is no build-time choice to regret. Install as many adapters as you want: they superpose in your code, visibly. Work locally on Node, ship the same class to a Lambda. The contextual collapse happens at runtime, in the integration dimension. Toggle contexts:

state: |API⟩ · service · collapse deferred to runtime

import { NodeHttp } from '@stone-js/node-http-adapter'
import { AwsLambdaHttp } from '@stone-js/aws-lambda-http-adapter'

@NodeHttp()
@AwsLambdaHttp()
@Routing()
@StoneApp()
export class Application {}

ψTwo paradigms, one state

Decorators or define*. Superposed, until you choose.

Both paradigms are first-class and 1:1: same domain, same power. Pick one in the docs and every example follows you, classes only or functions only.

|declarative⟩ · classes

@EventHandler('/tasks')
export class TasksController {
  constructor ({ tasks }) { this.tasks = tasks }

  @Get('/')
  list () { return this.tasks.list() }
}

|imperative⟩ · functions

export const Routes = defineRoutes([
  [({ tasks }) => () => tasks.list(),
    { path: '/tasks', method: 'GET' }],
])

// same domain, same power

ψThe geological record

Each era buried the last one's frameworks.

A cross-section of thirty years of execution contexts. Frameworks welded to their era went down with it: collapsed states, fossilised in place. The vein that crosses every stratum is a domain that never collapsed. It stayed in superposition.

AgentsYour app as MCP tools: the runtime that talks back2025 →
EdgeWorkers, isolates, WinterCG2020
ServerlessFunctions, cold starts, pay-per-call2015
ContainersDocker, orchestration2013
NodeJavaScript leaves the browser2009
LAMPThe monolith years2004
CGIWhere it all began1995

the same domain crosses every stratum · that is the continuum


ψShip faster

Start from a template. Learn from the recipes.

Scaffold a real, running app in one command, then follow the blog recipes that build on the very same starters.

From the blog

All posts →

ψAgent-native

Your domain, observable by machines.

Agents are the next execution context, and Stone.js treats them as first-class: the agent that builds your app, and the agent that calls it. No other framework is built this way.

@stone-js/mcp-dev

One command, stone mcp, serves your coding agent the framework's map and a live, read-only view of your app: concepts, modules, routes, config, plus Agent Skills. Consulted in real time, no package scanning, no guessing.

@stone-js/mcp coming

Expose your running domain to AI agents as MCP tools, the same domain your REST API serves, without touching a handler. The MCP equivalent of your REST API.

“The LLM masters the context.
You master the domain.
Together, you ship.”

ψBefore the framework

“An application is not an object.
It is an act.”

The Continuum Architecture manifesto

Read the manifesto →

Learn the core once. Command every context.

One base of knowledge. Every dimension open: this era's, and the next.


Stone.js

Your app exists in every runtime. Until you run it.

An open-source project by Stone Foundation
Created by Mr. Stone (Evens Pierre)