Learn the syntax in order
Walk through bindings, scalar values, containers, types, comments, and multiline text before moving into references and nodes.
Start typing to search the site.
Developer Start
If you are evaluating AEON as a developer, the first useful question is: what do I write, what does the runtime produce, and where does validation happen?
import { runRuntime } from "@altopelago/aeon-runtime";
const source = [
'app:object = {',
' name:string = "AEON demo"',
' port:number = 8080',
' enabled:boolean = true',
'}'
].join("\n");
const result = runRuntime(source, {
mode: "strict",
output: "json",
includeAnnotations: true
});
if (result.meta.errors.length === 0) {
console.log(result.document);
}
The finalized JSON projection is plain application data produced after AEON has checked the source claims.
{
"app": {
"name": "AEON demo",
"port": 8080,
"enabled": true
}
}
WriteStart with typed bindings, objects, lists, tuples, references, and prose blocks in the playground.
ValidateRun in strict mode when you want reserved datatypes, explicit structure, and fail-closed diagnostics.
MaterializeAsk for JSON when you want ordinary application data after AEON has preserved and checked the source claims.
InspectTurn on annotations when tooling needs source spans, comments, or parallel metadata without changing the data.
Install
AEON 0.16.0 is published for TypeScript, Rust, and native Python. The language remains AEON v1. This release makes canonical ordering reference-safe, requires type-only generic arguments, and preserves exact numeric clarifiers. Document navigation and SANSA integration from 0.15.0 remain available.
# TypeScript and JavaScript
npm install @altopelago/aeon-runtime@0.16.0
# Rust
cargo add altopelago-aeon@0.16.0
# CPython 3.12 through 3.14
python -m pip install altopelago-aeon==0.16.0
TypeScriptUse @altopelago/aeon-runtime for the coordinated compile, validation, reference, finalization, and diagnostics pipeline. Lower-level packages remain available under the @altopelago scope.
RustUse altopelago-aeon as the public facade for compiling, validating, loading, materializing, and exchanging AEON through portable AES and Telex. Metadata-preserving document navigation and SANSA Query are separate from JSON materialization.
PythonUse altopelago-aeon for native CPython bindings backed by the Rust implementation. Import altopelago.aeon for compilation, canonical formatting, document loading, AEOS validation, file helpers, and Telex. Pytonic views preserve metadata and support SANSA Query; experimental mutation planning does not apply changes.
Examples
The examples repository is the best next stop when you want to see AEON source beside runnable code. Start with the Hello World examples, then move into typed objects, schemas, validation, and runtime output.
Hello WorldBegin with the smallest source files to see how bindings and scalar values become application data.
Runtime loopsCompare source input, validation diagnostics, and accepted JSON projections in compact examples before wiring AEON into a larger project.
Language patternsUse the examples to learn objects, lists, references, schemas, and browser demos in practical context.
Next
Walk through bindings, scalar values, containers, types, comments, and multiline text before moving into references and nodes.
Read how vocabulary, grammar, profiles, schemas, conventions, and Tonics add meaning without giving documents authority over themselves.
Use the playground to switch modes, inspect AES and data output, and see annotation stream behavior while you edit.