feat(build): surface structured template diagnostics
Add public .heml syntax authority and refactor the unkeyed generated-target error into structured diagnostic data while preserving the human compiler error. req: diagnostics/001 req: diagnostics/002
This commit is contained in:
@@ -10,6 +10,10 @@ SaaS tutorial app, an advanced Kanban milestone sketch, and a full techdemo.
|
||||
The v1 story now has tutorial, recipe, diagnostics, and stability docs; see
|
||||
`docs/v1-readiness.md` for the remaining close-gap audit.
|
||||
|
||||
Template authoring: `.heml` is HTML plus a small hemplate overlay for escaped
|
||||
text, trusted HTML, dynamic attributes, Rust-shaped control directives, generated
|
||||
slots/forms/handles, and keyed partial targets. See `docs/hemplate-syntax.md`.
|
||||
|
||||
Local checkout note: until the hemplate crates are published, this repository
|
||||
expects `hemplate` checked out next to `hemx` as `../hemplate/hemplate`. The app
|
||||
scaffolder fails with that exact path if the prerequisite is missing, instead of
|
||||
@@ -21,7 +25,8 @@ For beginner and production-shaped app code, stay on this path. req: public_api/
|
||||
|
||||
1. **Templates declare the surface.** `.heml` files declare roots, slots,
|
||||
forms, handles, keys, page targets, optional pending states, and explicit
|
||||
leaf islands with `data-hemx-*` attributes.
|
||||
leaf islands with `data-hemx-*` attributes. The stable syntax surface lives in
|
||||
`docs/hemplate-syntax.md`.
|
||||
2. **Build generates typed helpers.** `hemx_build::app().run()` consumes the
|
||||
hemplate Surface and emits generated Rust helpers for slots, forms, handles,
|
||||
page targets, classes, and events. req: ceremony/003 req: build/001
|
||||
|
||||
Reference in New Issue
Block a user