All docs

Body Architecture

The 7-layer living schema: Genome, Cells, Organism, Nervous System, Skin, Evolution, Consciousness.

The Living Schema

UIX is not just a format — it's a living schema designed like a biological system. Each layer adds composability, meaning, and intelligence.

The 7 Layers

LayerNameDescription
1GenomeIndivisible primitives: constraints, values, capabilities, events
2CellsCanonical node DNA with embedded renderers for all platforms
3OrganismThe UIXDocument — nodes, tokens, components, soul, mind
4Nervous SystemDeclarative data/state/intent wiring (no logic in schema)
5SkinPlatform renderer specs live inside blueprints
6EvolutionUser-derived / community types built from existing blueprints
7ConsciousnessPre-computed mind surface + AI reads/writes/transforms all layers

Layer 1: Genome (UIXAtom)

Atoms are the smallest indivisible units of UI. They define the constraints and capabilities a node type can have — like DNA instructions.

Every blueprint is built from atoms. An atom says "this type can have padding" or "this type emits a click event."

Layer 2: Cells (UIXNodeBlueprint + UIXCanonicalRegistry)

A blueprint is the canonical definition of a node type. It includes:

  • Default props, layout, and style
  • Atoms that define its capabilities
  • Embedded renderers for every supported platform
  • Test hints for the Immune System
typescript
const registry = createBuiltInRegistry(); // 21 blueprints
const bp = resolveBlueprint(registry, 'Button');
const renderer = resolveRenderer(registry, 'Button', 'flutter');

Layer 3: Organism (UIXDocument)

The document is the organism — a complete, self-contained UI definition. With a canonical registry embedded, a UIXDocument is fully self-describing. Drop it anywhere and it knows how to render itself.

Layer 4: Nervous System (UIXBindings)

Bindings connect UI nodes to data and intent without embedding logic:

json
{
  "dataBinding": "user.profile.name",
  "errorBinding": "user.profile.error",
  "intentBinding": "user.profile.save"
}

The schema says what data flows where. The runtime says how.

Layer 5: Skin (UIXRendererSpec)

Renderer specifications live inside blueprints, not in external adapters. When a platform needs to render a Button, it looks up the blueprint's renderer template for that platform.

Layer 6: Evolution (UIXDerivedNode)

Teams can create derived node types from existing blueprints:

typescript
const derived = deriveNode(registry, 'Button', 'PrimaryButton', {
  defaultProps: { label: 'Submit', variant: 'primary' },
});

Layer 7: Consciousness (UIXMind)

The Mind is a pre-computed AI reasoning surface built from the document:

typescript
const mind = buildMind(doc);
mind.screenType;       // 'authentication'
mind.summary;          // 'Authenticates existing users'
mind.intents;          // ['auth.login', 'auth.setEmail']

Cross-Cutting Concepts

  • Soul — WHY (semantic purpose, user goal, journey, emotion)
  • Mind — HOW (AI reasoning, screen type, bindings, relationships)
  • Physics — MOTION (mass, inertia, gravity for transitions)
  • Chemistry — BONDS (affinity, repulsion, catalysts for composition)
  • Immune System — HEALTH (test coverage, regression detection, QA insights)