Praxis 2.0 Documentation

August 8, 2026 · View on GitHub

Welcome to the official Praxis documentation. Praxis is the full-stack declarative application framework for the Plures ecosystem — typed logic, reactive state, local-first data, and visual tooling for Svelte, Node, and the browser.

New to Praxis? Start with the Getting Started guide. Upgrading from 1.x? See the Migration Guide.

Quick Start

npm install @plures/praxis
npx praxis create app my-app

Documentation Index

Core Concepts

DocumentDescription
What is PraxisOverview and philosophy
Praxis-Core APIStable API surface and guarantees
Extending Praxis-CoreExtension guidelines
Schema ModelPraxis Schema Format (PSF)
Logic EngineFacts, events, rules, and constraints
UI GenerationComponent generation from schemas
PluresDB IntegrationLocal-first data with reactive storage
Code ↔ Canvas SyncBidirectional synchronization
CLI UsageCommand-line interface reference
Building ExtensionsExtending Praxis

Guides

GuideDescription
Getting StartedFirst steps with Praxis
Svelte IntegrationUsing Praxis with Svelte 5
CanvasVisual development with CodeCanvas
History & State PatternsUndo/redo and time-travel debugging
Parallel State PatternsManaging parallel state machines
OrchestrationDistributed system coordination
CI/CD PipelineContinuous integration setup

Tutorials

TutorialDescription
Getting StartedcreateApp, schema, rules, constraints
Advanced Rules + ConstraintsRule pipelines, ordering, constraints
Cloud Sync + Auth WorkflowAuth gating, PluresDB cloud relay, offline sync
Build Your First AppStep-by-step beginner tutorial
Todo with PluresDBLocal-first todo application
Form BuilderDynamic form creation
E-commerce CartShopping cart with checkout flow

Decision Ledger

ResourceDescription
Dogfooding GuideDecision Ledger workflow
Behavior LedgerRule/constraint change log
Contract IndexMachine-readable contract inventory

Examples

ExampleDescription
Unified AppcreateApp() with rules and Mermaid docs
Hero ShopFull e-commerce application
TodoMinimal todo application
Form BuilderDynamic form builder
Offline ChatLocal-first chat application
Terminal NodeCommand execution with YAML schemas
Cloud SyncMulti-client synchronization
Decision LedgerContracts, validation, SARIF output

Architecture

flowchart TB
    subgraph Schema["Schema Layer"]
        PSF[Praxis Schema Format]
    end

    subgraph Generation["Code Generation"]
        PSF --> Types[TypeScript Types]
        PSF --> Components[Svelte Components]
        PSF --> Logic[Logic Engine]
        PSF --> Docs[Documentation]
    end

    subgraph Runtime["Runtime"]
        Logic --> Engine[Praxis Engine]
        Components --> UI[User Interface]
        Engine <--> PluresDB[(PluresDB)]
        Engine <--> Cloud[Praxis Cloud]
    end

    subgraph Tools["Development Tools"]
        Canvas[CodeCanvas]
        CLI[Praxis CLI]
        StateDocs[State-Docs]
    end

    Canvas <--> PSF
    CLI --> Generation
    Engine --> StateDocs

Dogfooding

We actively dogfood all Plures tools during development:

1.x Documentation Archive

Historical documentation from Praxis 1.x development is preserved in archive/1.x/.

Community

License

Praxis is open source under the MIT License.


Next: What is Praxis?