-
Notifications
You must be signed in to change notification settings - Fork 0
UI Templates
Praxis contains 40 original, multi-section landing-page directions. Each style supports nine valid framework/language targets:
- Next.js JavaScript and TypeScript
- Vite React JavaScript and TypeScript
- Vue JavaScript and TypeScript
- Astro JavaScript and TypeScript
- Angular TypeScript
Angular JavaScript is intentionally unsupported.
flowchart LR
Designs[templates/designs DESIGN-*.md] --> Profiles[scripts/ui/profiles.mjs]
Profiles --> Canonical[canonical page model/style.json]
Canonical --> Renderers[React/Vue/Astro/Angular/CSS renderers]
Renderers --> Modules[templates/ui.<style>]
Modules --> Preview[Playwright preview renderer]
Preview --> Catalog[templates/ui.catalog]
Catalog --> Gallery[local gallery]
Modules --> Compose[normal manifest composer]
The authoring scripts normalize design intent into a canonical landing-page structure, then emit native framework source. The committed UI modules and screenshots are generated artifacts verified against the authoring pipeline.
After framework selection, the CLI asks whether to use a landing-page template:
-
Starter: only framework and
styling.tailwind-shadcnmodules are composed. -
Template: the local gallery or terminal selector returns a canonical style ID;
ui.<style>is added after styling.
The style manifest first copies shared DESIGN.md and assets, then uses a framework/language-selected overlay with replace: true to replace the starter page and stylesheet.
The gallery is offline and bundled:
- a local HTTP server binds to a random
127.0.0.1port; - only known gallery/catalog/preview resources are served;
- the browser can filter, inspect desktop/mobile previews, and submit one style;
- the waiting CLI receives and validates the selection;
- headless/declined/failed browser flows use the terminal selector.
The gallery does not download templates or upload user data.
Template mode copies the selected normalized guide to:
-
DESIGN.mdin frontend-only projects; -
frontend/DESIGN.mdin fullstack projects.
This guide is for future maintainers and agents: it describes the visual system, typography, color, component language, responsive behavior, and composition decisions. Starter mode does not copy it.
Every style is a landing page with navigation, hero, multiple supporting sections, proof/metrics, call to action, and footer. The UI catalog does not generate dashboards, admin panels, product forms, or authenticated application screens.
Do not hand-edit all framework outputs. Change the canonical/profile/renderer source, regenerate, render previews, and verify:
npm --workspace cli run ui:generate
npm --workspace cli run ui:previews
npm --workspace cli run ui:verify
npm --workspace cli run ui:matrix -- --target vue-ts --install --buildThen run accessibility, responsive, visual, gallery, adapter, catalog, preview, and package tests. See Testing.
- Catalog types and IDs:
cli/src/ui/catalog.ts - Selection:
cli/src/ui/resolveUi.ts - Gallery server:
cli/src/ui/gallery.ts - Canonical model:
cli/src/ui/canonical.ts - Authoring pipeline:
cli/scripts/ui/ - Generated catalog:
cli/templates/ui.catalog/
This Wiki is generated from the repository's versioned docs/ source. Update and review the source files; do not rely on hand edits to generated Wiki pages.
- Core-Internals
- Architecture
- Repository-Map
- Code-Architecture
- Generation-Pipeline
- Manifest-System
- UI-Templates
- Testing
- Agent-Guide
- Wiki-Publishing
- Template-Architecture
- Standard-Projects
- Standard-Frontend-Architecture
- Express-Architecture
- Fullstack-Architecture
- Praxis-Pro
- Django-Architecture
- Gin-Architecture
- Capability-Architecture
- Compose-Architecture
- Kubernetes-Architecture
- Terraform-Architecture
- Extending-Generated-Projects
- Generated-Backends