agentsclimarketplace

Lamina forms

Skill aryaniyaps/lamina/skills/lamina-forms

Headless Product Design skill for AI coding agents | Design how it works, verify what you ship.

Install
npx -y skills add aryaniyaps/lamina --skill lamina-forms

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Form behavior in contracts — validation timing, field semantics, and recovery UX. Use when data entry blocks workflows or causes scenario gaps.

SKILL.md

2.9 KB, as published. Nobody here has run it

Forms (agent-native)

Specify how data entry behaves in run.json — field semantics, validation timing, and recovery — not CSS or component libraries.

Contract encoding

ConcernWhere
Fields per screensurfaces[].fields[] or workflow step notes
Validation timingscenario trigger.when: validation_failed
Recoverable vs blockingscenario category: partial vs failure
Data immunity vs integritydecisions.md + form policy in implement.md

Data immunity (default for high-volume entry): accept input, flag uncertainty, audit later — never halt batch flow for recoverable format issues.

Bounded controls: match widget semantics to data type in screen spec; allow override when domain requires.

Design checklists

  1. Prefer immunity over keystroke-level rejection unless invariant requires hard stop.
  2. Batch-review anomalies instead of modal-blocking each error.
  3. Preserve entered data on validation failure (scenario + implement.md).
  4. Required fields only when invariant or workflow depends on them.
  5. Map each field to domain entity attribute — not database column names in user-facing copy.
  6. Classify date/time fields before choosing a control. A datetime-local value has no zone: submit its untouched local components plus the subject/place IANA zone for trusted resolution. Never convert it in the browser and attach another zone afterward.
  7. Invalid DST-gap times preserve input and offer a nearby valid choice; ambiguous overlap times require an explicit earlier/later choice. Show the relevant zone when actors may differ.

Verify checks

  • Actor walk: submit invalid/partial data — observe recovery UX matches scenarios.
  • Actor walk: required-for-invariant fields block with clear ux (banner/alert).
  • A11y: labels associated with inputs on captured walkthrough steps.
  • Temporal: run the form with browser zone different from subject zone and cover applicable DST gap/overlap recovery.

Anti-patterns

  • Keystroke rejection modals for recoverable typos.
  • Clearing form on error without scenario documenting it.
  • Free-text where bounded selection prevents inconsistency.
  • Form spec that mirrors implementation model instead of actor mental model.

Related

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.