layout
Predefined UI layouts for tinywasm modules
Docs
Plans (proposals, not yet implemented)
- PLAN — master plan: simplified css/widget API, the single widget contract, and why
tinywasm/widget warrants its own repo
- PLAN_WIDGET —
tinywasm/widget (new): anatomy, states and layout primitives
- PLAN_CSS —
tinywasm/css: complete the token catalog, retire the CSS-mirror DSL
- PLAN_SSR —
tinywasm/ssr: typed Styler instead of regex name matching
- PLAN_COMPONENTS —
tinywasm/components + tinywasm/form: widget migration
Packages
The platform shell, providing the header, navigation rail, and module hosting.
NewUIModule(id, label, iconID, view): helper to create modules.
CanView: function field to gate module access.
crudview
A standard two-column CRUD layout (form left, list right) that replicates the Pa100T experience.
- Preconfigure, don't assemble: The composition root should use the high-level constructor
crudview.New(crudview.Config) to wire the entire form↔list↔transport cycle once per module.
- Presenter-Based: Takes a
view.Presenter that handles list, selection, saving, and deleting.
view, err := crudview.New(crudview.Config{
ParentID: "my-module",
Presenter: myPresenter,
})