Demo app
August 19, 2026 · View on GitHub
Craft application that exercises @craft-ts/core examples and integration
checks. Architecture rules live next to e2e/, in architecture/.
Serve
From the repository root:
npx nx serve demo
The development server starts every demo route. The TypeScript type-check runs
in parallel with Vite, with a small Type checking in progress… indicator in
the top-right corner of the page until it completes. If it fails, a large
overlay reports the failure while the development server remains available.
Architecture tests
The suite in architecture/ analyzes the demo TypeScript with
@craft-ts/dev-tools. All lookups and rules live in the single
architecture/architecture.spec.ts file so the graph is analyzed only once
per Vitest run. The file contains:
- unique
craftUniqueand HTTP endpoint ownership; - pure computeds, dependency cycles, route DI proofs and mutation reactions;
- persistence,
insertSelect, Effect and interactive-element constraints; - declarative architecture and exclusive feature-link checks.
Run them with Nx, from the repository root:
npx nx architecture demo
Typecheck the suite (catalog lookups, Vitest types) with:
npx nx typecheck-architecture demo
The target is defined in project.json and runs Vitest against
vitest.architecture.config.ts. It does not boot the application runtime.
Full reference: Architecture rules.