Skip to main content

The Data Runtime for Context that Travels

Data that carries
its own logic.

Stof is a superset of JSON with functions and types built in — portable, lightweight logic that travels with your data and runs anywhere, sandboxed.

Animation showing that a JSON object is already a valid Stof document: the outer braces and key quotes are removed, types are added to each field, and a greet function is added alongside the data.

Valid JSON is already valid Stof.

Every JSON document you have is already a Stof document. Start with the data you have, add logic where you need it, and export back to JSON — or YAML, or TOML — any time.

Fast.

A lean Rust core that runs native, in WebAssembly, or from Python. Parsing and execution in microseconds — light enough to embed anywhere your data goes.

Secure.

Sandboxed by default. A document can only touch what you explicitly hand it — no filesystem, no network — so logic that arrives over the wire is safe to run.

Extensible.

Documents can transform themselves — reshape their data, add fields, even parse new functions into themselves while they run. The program grows with the data.

Install

Bring the data you already have.

npm i @formata/stofcargo add stofpip install stof

Node, Deno, Bun, browsers, and edge runtimes via WebAssembly. Native Rust crate. Python bindings on PyPI.

Read the docs