stitch-ui-design-spec-vant
npx machina-cli add skill partme-ai/stitch-skills/stitch-ui-design-spec-vant --openclawVant Design Spec (Vant 4 / Vue 3)
Constraint: Only use this skill when the user explicitly mentions "Stitch".
Purpose
This skill makes the Vant 4 design spec executable in two modes:
- Prefix mode: output a paste-ready Hard constraints prefix for Stitch
[Context]. - Selector mode: output
CONTRACT_SELECTION_JSON_V1and then an assembled Stitch prompt that injects only the required component/state snippets.
Trigger Keywords
Prefer this skill when the user request includes any of:
vant,vant4,vant-ui,vant ui
Chinese trigger keywords (only for triggering):
vant 风格vant 组件库
Source of Truth
references/contract.mdreferences/examples.mdreferences/official.md
Output (STRICT)
Decide the mode by the user intent:
- If the user asks for beautify/polish/refine an existing screen, or asks for selector / JSON / contracts.include / states.include → use Selector mode.
- Otherwise → use Prefix mode.
Prefix mode
Return exactly one code block:
[Hard constraints prefix]
- Framework: Vant 4 (Vue 3 / Mobile).
- Design Tokens:
- Colors: Primary=#1989fa (Blue), Success=#07c160, Warning=#ff976a, Danger=#ee0a24.
- Background: Page=#f7f8fa, Card=#ffffff.
- Typography: Base 14px.
- Radius: sm=2px, md=4px, lg=8px.
- Component Contracts:
- Layout: Use <van-row>, <van-col span="...">. Container: <van-config-provider>.
- List/Card: Use <van-cell-group inset> for card style groups.
- Buttons: Use <van-button type="primary" round block>.
- Forms: Use <van-form>, <van-field>, <van-search>, <van-picker>, <van-date-picker>.
- Business: <van-card> (Product), <van-submit-bar>, <van-address-list>, <van-coupon-list>.
- Navigation: <van-nav-bar>, <van-tabbar>, <van-sidebar>, <van-tabs>.
- Feedback: <van-action-sheet>, <van-swipe-cell>, <van-empty>.
- Layout Invariants:
- Mobile First (375px base).
- Use Flexbox for alignment.
- Respect Safe Area.
Selector mode
Return exactly two code blocks, in this order, with no extra prose:
- Contract selection JSON:
{
"version": "CONTRACT_SELECTION_JSON_V1",
"designSystem": "vant4",
"mode": "selector",
"contracts": { "include": [] },
"states": { "include": [] }
}
- Final Stitch prompt:
[Context]
(Paste Hard Constraints Prefix here)
(Add "Layout Invariants" from contract.md if beautifying)
[Layout]
(Describe the macro layout structure, e.g., "Mobile Column Layout with Navbar")
[Components]
(Inject component snippets matching the JSON selection above)
References
Source
git clone https://github.com/partme-ai/stitch-skills/blob/main/skills/stitch-ui-design-spec-vant/SKILL.mdView on GitHub Overview
This skill generates Vant 4 design specs for Stitch in two modes: a paste-ready hard-constraints prefix and a selector-based contract prompt. It outputs framework tokens, component contracts, and layout invariants to speed up Vue 3 mobile UI design.
How This Skill Works
Based on user intent, it returns either a single Hard constraints prefix (Prefix mode) or two blocks: a CONTRACT_SELECTION_JSON_V1 and a final Stitch prompt (Selector mode). It enforces Vant 4 components and mobile-first layout rules, ensuring the prompt is ready to paste or to feed into Stitch with selective snippets.
When to Use It
- You want a paste-ready hard constraints prefix for a new Stitch task using Vant 4.
- You need a selector-mode output that includes only the required component/state snippets.
- You are beautifying or refining an existing screen and require a contract-based prompt (selector mode).
- You want to enforce mobile-first layout, 375px base, and Flexbox alignment in the spec.
- You’re assembling common Vant 4 elements (van-row, van-col, van-button, van-card, etc.) per the design spec.
Quick Start
- Step 1: Identify user intent (Prefix vs Selector) and mention Stitch.
- Step 2: Request or supply the relevant context (components, layout).
- Step 3: Paste the resulting blocks into Stitch and iterate.
Best Practices
- Verify your trigger intent before generating output (Prefix vs Selector).
- Stick to Vant 4 and Vue 3 syntax; include correct component names (van- tags).
- Keep design tokens consistent with the spec (colors, radius, typography).
- Include Layout Invariants (mobile-first base, Safe Area) when using Prefix mode.
- Test selector outputs by validating contract includes and state snippets only.
Example Use Cases
- Prefix mode: Paste-ready hard constraints for a product grid using van-row, van-col, and van-card.
- Selector mode: CONTRACT_SELECTION_JSON_V1 with includes for van-nav-bar and van-tabs, followed by assembled prompt.
- Prefix mode: Login screen with van-form, van-field, and van-button.
- Selector mode: Mobile settings screen with van-list and van-card states.
- Example: 375px mobile-first layout with flex alignment and safe area considered.