How it is built

Engineering.

Architecture Atlas is a static export. Citations, known unknowns, and offline caching are first-class product signals — not afterthoughts.

Product boundary

This is an authored teaching reference, not a simulator, capacity planner, or config generator. Walkthroughs are ordered operations folded into frames by a pure TypeScript engine — the UI never invents the next state. See docs/adr/0001-teaching-tool-not-simulator.md.

Provenance

Every architecture claim resolves to a source id in the offline catalog. Company pages require a non-empty Known unknowns list (ADR 0004). Unauthored means absent on /coverage/. CI fails on uncited technical assertions via the Architecture Atlas ESLint rule.

Offline / PWA

A service worker caches the app shell plus key routes after the first visit. To verify:

  1. Run a production export (pnpm run ci or pnpm build) and serve the static output.
  2. Open the site once online so the service worker installs.
  3. Disable network in DevTools, reload — home, coverage, and previously visited architecture pages should still load from cache.

Manifest: /manifest.webmanifest. Service worker: /sw.js.

Embed

URL helpers live in @architecture-atlas/embed. Demo: /embed/demo/. Prefer presenter mode inside iframes.

Deploy

Public host: Vercel at architectures.alexflux.com docs/adr/0005-public-host-vercel.md. Optional nginx image: deploy/Dockerfile + deploy/compose.yaml. This repository does not push itself to production or a lab host.

Cross-links from alexflux.com: checklist in docs/alexflux-cross-links.md.

Budgets

CI enforces Lighthouse ≥ 98 (perf / a11y / best-practices / SEO) on home, collapsed-core, spine-leaf, and engineering, plus a gzipped JS+HTML route budget (pnpm budget).