Architecture

Architecture

Pax monorepo layout, package map, and system boundaries for CLI, scenes, compilers, and agents.

1 min readUpdated

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

PackageRole
apps/webWebsite and documentation
packages/clipaxfx executable
packages/coreShared primitives
packages/configConfiguration layering
packages/sceneCreative scene specification
packages/motionDesign and motion primitives
packages/lottieLottie and dotLottie tooling
packages/webglThree.js / R3F runtime
packages/spatialPrepared splat workflows
packages/recipesReusable creative instruments
packages/criticVisual QA, rendered checks, and repair
packages/mcpMCP server (23 tools)
packages/adaptersProvider-neutral execution
packages/effectsCanvas and WebGL effect engines
packages/effects-adaptersEffect components for six frameworks
packages/blocksCurated blocks registry and runtime
packages/chartsDither 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

Was this page helpful?

Answers are not recorded or transmitted. Pax has no telemetry.