Architecture
Architecture
Pax monorepo layout, package map, and system boundaries for CLI, scenes, compilers, and agents.
Pax is a TypeScript monorepo using pnpm workspaces and Turborepo. The public CLI is paxfx from @pax-sh/cli. Library packages under packages/* own scene, motion, Lottie, WebGL, spatial, recipes, critic, MCP, and adapter concerns.
Package map
| Package | Role |
|---|---|
apps/web | Website and documentation |
packages/cli | paxfx executable |
packages/core | Shared primitives |
packages/config | Configuration layering |
packages/scene | Creative scene specification |
packages/motion | Design and motion primitives |
packages/lottie | Lottie and dotLottie tooling |
packages/webgl | Three.js / R3F runtime |
packages/spatial | Prepared splat workflows |
packages/recipes | Reusable creative instruments |
packages/critic | Visual QA, rendered checks, and repair |
packages/mcp | MCP server (23 tools) |
packages/adapters | Provider-neutral execution |
packages/effects | Canvas and WebGL effect engines |
packages/effects-adapters | Effect components for six frameworks |
packages/blocks | Curated blocks registry and runtime |
packages/charts | Dither chart engine |
Data flow
Recipe / author -> Scene JSON -> Compilers -> Preview -> Export
^
|
Agent (MCP / CLI)Boundaries
- Local-first: no Pax-hosted inference or databases by default
- Honest compilers: each target documents supported layer types
- Privacy: repository scans stay on disk unless you opt into external inference
Related
Was this page helpful?
Answers are not recorded or transmitted. Pax has no telemetry.