78aff362ff
Document optional PWA/offline support as an adapter boundary: cached shell, domain-command queues, server-canonical replay, conflict/fingerprint behavior, and sync-crate shape without adding a client state graph or service worker to core. req: canonical_authoring/008 req: runtime/003 req: runtime/004 req: auth/002 req: auth/004 req: failure/004 req: failure/005 req: sync/001 req: sync/007
1.3 KiB
1.3 KiB
hemx SaaS tutorial skeleton
This is the compile-tested skeleton for the v1 production-shaped tutorial app. It is intentionally provider-light: auth/session, CSRF, persistence, deploy, metrics, and islands are explicit app boundaries, not hemx core services. Read the walkthrough in ../../docs/tutorial-saas.md. req: examples/001 req: auth/001
What it proves today:
- typed form/newtype inputs for project creation
- auth/session context passed through normal Rust state
- CSRF-safe mutation checked before persistence
- local in-memory persistence adapter instead of a vendored SQL/auth provider
- generated form, slot, keyed row, page-swap, and live-status commands
- page shell with plain CSS and one explicit metrics island script
- compile-time surface generation plus interaction tests
For provider-explicit boundaries, see ../../docs/recipes/sqlx-persistence.md, ../../docs/recipes/auth-session-csrf.md, ../../docs/recipes/observability-flags.md, ../../docs/recipes/deploy-versioning.md, and ../../docs/recipes/pwa-offline.md.
What it deliberately does not claim yet:
- a checked-in SQLx migration crate or database pool
- production cookie/session middleware
- a deploy target, flags, analytics, billing, or offline sync
- browser automation for the metrics island
Run:
cargo run -p hemx-saas-example
cargo test -p hemx-saas-example