sdd-jc-methodology 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/commands/sdd-archive.md +122 -0
- package/.claude/commands/sdd-constitution.md +240 -0
- package/.claude/commands/sdd-execute.md +132 -0
- package/.claude/commands/sdd-propose.md +149 -0
- package/.claude/commands/sdd-seo.md +251 -0
- package/.claude/commands/sdd-specify.md +264 -0
- package/.claude/commands/sdd-test.md +128 -0
- package/.claude/commands/sdd-validate.md +165 -0
- package/.claude/skills/api-design-principles/SKILL.md +528 -0
- package/.claude/skills/api-design-principles/assets/api-design-checklist.md +155 -0
- package/.claude/skills/api-design-principles/assets/rest-api-template.py +182 -0
- package/.claude/skills/api-design-principles/references/graphql-schema-design.md +583 -0
- package/.claude/skills/api-design-principles/references/rest-best-practices.md +408 -0
- package/.claude/skills/aws-serverless/SKILL.md +323 -0
- package/.claude/skills/brainstorming/SKILL.md +96 -0
- package/.claude/skills/error-handling-patterns/SKILL.md +641 -0
- package/.claude/skills/frontend-design/LICENSE.txt +177 -0
- package/.claude/skills/frontend-design/SKILL.md +272 -0
- package/.claude/skills/nestjs-expert/SKILL.md +552 -0
- package/.claude/skills/product-manager-toolkit/SKILL.md +351 -0
- package/.claude/skills/product-manager-toolkit/references/prd_templates.md +317 -0
- package/.claude/skills/product-manager-toolkit/scripts/customer_interview_analyzer.py +441 -0
- package/.claude/skills/product-manager-toolkit/scripts/rice_prioritizer.py +296 -0
- package/.claude/skills/react-doctor/AGENTS.md +15 -0
- package/.claude/skills/react-doctor/SKILL.md +19 -0
- package/.claude/skills/shadcn-ui/SKILL.md +1677 -0
- package/.claude/skills/shadcn-ui/references/learn.md +145 -0
- package/.claude/skills/shadcn-ui/references/official-ui-reference.md +1725 -0
- package/.claude/skills/shadcn-ui/references/reference.md +586 -0
- package/.claude/skills/shadcn-ui/references/ui-reference.md +1578 -0
- package/.claude/skills/stitch-design/README.md +50 -0
- package/.claude/skills/stitch-design/SKILL.md +84 -0
- package/.claude/skills/stitch-design/examples/DESIGN.md +22 -0
- package/.claude/skills/stitch-design/examples/enhanced-prompt.md +28 -0
- package/.claude/skills/stitch-design/references/design-mappings.md +45 -0
- package/.claude/skills/stitch-design/references/prompt-keywords.md +114 -0
- package/.claude/skills/stitch-design/references/tool-schemas.md +76 -0
- package/.claude/skills/stitch-design/workflows/edit-design.md +44 -0
- package/.claude/skills/stitch-design/workflows/generate-design-md.md +63 -0
- package/.claude/skills/stitch-design/workflows/text-to-design.md +47 -0
- package/.claude/skills/systematic-debugging/CREATION-LOG.md +119 -0
- package/.claude/skills/systematic-debugging/SKILL.md +296 -0
- package/.claude/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/.claude/skills/systematic-debugging/condition-based-waiting.md +115 -0
- package/.claude/skills/systematic-debugging/defense-in-depth.md +122 -0
- package/.claude/skills/systematic-debugging/find-polluter.sh +63 -0
- package/.claude/skills/systematic-debugging/root-cause-tracing.md +169 -0
- package/.claude/skills/systematic-debugging/test-academic.md +14 -0
- package/.claude/skills/systematic-debugging/test-pressure-1.md +58 -0
- package/.claude/skills/systematic-debugging/test-pressure-2.md +68 -0
- package/.claude/skills/systematic-debugging/test-pressure-3.md +69 -0
- package/.claude/skills/tailwind-design-system/SKILL.md +874 -0
- package/.claude/skills/ui-ux-pro-max/SKILL.md +377 -0
- package/.claude/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/.claude/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/.claude/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/.claude/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/.claude/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/.claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/.claude/skills/ui-ux-pro-max/data/styles.csv +68 -0
- package/.claude/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/.claude/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/.claude/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/.claude/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/.claude/skills/ui-ux-pro-max/scripts/core.py +253 -0
- package/.claude/skills/ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/.claude/skills/ui-ux-pro-max/scripts/search.py +114 -0
- package/.claude/skills/vercel-react-best-practices/AGENTS.md +2934 -0
- package/.claude/skills/vercel-react-best-practices/SKILL.md +136 -0
- package/.claude/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/.claude/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
- package/.claude/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
- package/.claude/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
- package/.claude/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
- package/.claude/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
- package/.claude/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
- package/.claude/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/.claude/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/.claude/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
- package/.claude/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/.claude/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/.claude/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
- package/.claude/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
- package/.claude/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/.claude/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/.claude/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/.claude/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/.claude/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
- package/.claude/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
- package/.claude/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/.claude/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
- package/.claude/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
- package/.claude/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
- package/.claude/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
- package/.claude/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/.claude/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
- package/.mcp.json.example +12 -0
- package/CHANGELOG.md +61 -0
- package/LICENSE +21 -0
- package/README.md +571 -0
- package/assets/jc-fox-mark.svg +10 -0
- package/assets/jc-methodology-badge.png +0 -0
- package/bin/sdd-jc.js +379 -0
- package/package.json +43 -0
- package/scripts/gsc_verify.py +162 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Stitch Design Skill
|
|
2
|
+
|
|
3
|
+
Teaches agents to generate high-fidelity, consistent UI designs and maintain project-level design systems using Stitch.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npx skills add google-labs-code/stitch-skills --skill stitch-design --global
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## What It Does
|
|
12
|
+
|
|
13
|
+
Enables professional-grade UI/UX design workflows through Stitch MCP:
|
|
14
|
+
|
|
15
|
+
1. **Prompt Enhancement**: Transforms rough intent into structured, high-fidelity prompts with professional terminology and design system context.
|
|
16
|
+
2. **Design System Synthesis**: Analyzes existing Stitch projects to create and maintain a `.stitch/DESIGN.md` "source of truth".
|
|
17
|
+
3. **Iterative Generation**: Selects the best generation or editing workflow (`edit_screens`, `generate_variants`) based on user intent.
|
|
18
|
+
4. **Asset Management**: Synchronizes remote designs by downloading HTML and screenshots to the project's `.stitch/designs` directory.
|
|
19
|
+
|
|
20
|
+
## Prerequisites
|
|
21
|
+
|
|
22
|
+
- Stitch MCP Server access
|
|
23
|
+
- A project `projectId` (can be discovered via `list_projects`)
|
|
24
|
+
|
|
25
|
+
## Example Prompt
|
|
26
|
+
|
|
27
|
+
```text
|
|
28
|
+
Design a premium landing page for a mountain resort with a focus on serene luxury and glassmorphism.
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Skill Structure
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
stitch-design/
|
|
35
|
+
├── SKILL.md — Core instructions & Prompt Pipeline
|
|
36
|
+
├── README.md — This file
|
|
37
|
+
├── workflows/ — Specialized pipelines (Text-to-UI, Edit, MD)
|
|
38
|
+
├── references/ — UI/UX keywords & Technical Mappings
|
|
39
|
+
└── examples/ — Gold-standard references (Solace Mindfulness)
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Works With
|
|
43
|
+
|
|
44
|
+
- **`react:components` skill**: Hand-off generated designs for frontend implementation.
|
|
45
|
+
- **`stitch-loop` skill**: Provides the `DESIGN.md` context for autonomous building loops.
|
|
46
|
+
- **Multi-agent workflows**: Refines prompts before passing design tasks to specialized agents.
|
|
47
|
+
|
|
48
|
+
## Learn More
|
|
49
|
+
|
|
50
|
+
See [SKILL.md](./SKILL.md) for complete instructions.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: stitch-design
|
|
3
|
+
description: Unified entry point for Stitch design work. Handles prompt enhancement (UI/UX keywords, atmosphere), design system synthesis (.stitch/DESIGN.md), and high-fidelity screen generation/editing via Stitch MCP.
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- "StitchMCP"
|
|
6
|
+
- "Read"
|
|
7
|
+
- "Write"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Stitch Design Expert
|
|
11
|
+
|
|
12
|
+
You are an expert Design Systems Lead and Prompt Engineer specializing in the **Stitch MCP server**. Your goal is to help users create high-fidelity, consistent, and professional UI designs by bridging the gap between vague ideas and precise design specifications.
|
|
13
|
+
|
|
14
|
+
## Core Responsibilities
|
|
15
|
+
|
|
16
|
+
1. **Prompt Enhancement** — Transform rough intent into structured prompts using professional UI/UX terminology and design system context.
|
|
17
|
+
2. **Design System Synthesis** — Analyze existing Stitch projects to create `.stitch/DESIGN.md` "source of truth" documents.
|
|
18
|
+
3. **Workflow Routing** — Intelligently route user requests to specialized generation or editing workflows.
|
|
19
|
+
4. **Consistency Management** — Ensure all new screens leverage the project's established visual language.
|
|
20
|
+
5. **Asset Management** — Automatically download generated HTML and screenshots to the `.stitch/designs` directory.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## 🚀 Workflows
|
|
25
|
+
|
|
26
|
+
Based on the user's request, follow one of these workflows:
|
|
27
|
+
|
|
28
|
+
| User Intent | Workflow | Primary Tool |
|
|
29
|
+
|:---|:---|:---|
|
|
30
|
+
| "Design a [page]..." | [text-to-design](workflows/text-to-design.md) | `generate_screen_from_text` + `Download` |
|
|
31
|
+
| "Edit this [screen]..." | [edit-design](workflows/edit-design.md) | `edit_screens` + `Download` |
|
|
32
|
+
| "Create/Update .stitch/DESIGN.md" | [generate-design-md](workflows/generate-design-md.md) | `get_screen` + `Write` |
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 🎨 Prompt Enhancement Pipeline
|
|
37
|
+
|
|
38
|
+
Before calling any Stitch generation or editing tool, you MUST enhance the user's prompt.
|
|
39
|
+
|
|
40
|
+
### 1. Analyze Context
|
|
41
|
+
- **Project Scope**: Maintain the current `projectId`. Use `list_projects` if unknown.
|
|
42
|
+
- **Design System**: Check for `.stitch/DESIGN.md`. If it exists, incorporate its tokens (colors, typography). If not, suggest the `generate-design-md` workflow.
|
|
43
|
+
|
|
44
|
+
### 2. Refine UI/UX Terminology
|
|
45
|
+
Consult [Design Mappings](references/design-mappings.md) to replace vague terms.
|
|
46
|
+
- Vague: "Make a nice header"
|
|
47
|
+
- Professional: "Sticky navigation bar with glassmorphism effect and centered logo"
|
|
48
|
+
|
|
49
|
+
### 3. Structure the Final Prompt
|
|
50
|
+
Format the enhanced prompt for Stitch like this:
|
|
51
|
+
|
|
52
|
+
```markdown
|
|
53
|
+
[Overall vibe, mood, and purpose of the page]
|
|
54
|
+
|
|
55
|
+
**DESIGN SYSTEM (REQUIRED):**
|
|
56
|
+
- Platform: [Web/Mobile], [Desktop/Mobile]-first
|
|
57
|
+
- Palette: [Primary Name] (#hex for role), [Secondary Name] (#hex for role)
|
|
58
|
+
- Styles: [Roundness description], [Shadow/Elevation style]
|
|
59
|
+
|
|
60
|
+
**PAGE STRUCTURE:**
|
|
61
|
+
1. **Header:** [Description of navigation and branding]
|
|
62
|
+
2. **Hero Section:** [Headline, subtext, and primary CTA]
|
|
63
|
+
3. **Primary Content Area:** [Detailed component breakdown]
|
|
64
|
+
4. **Footer:** [Links and copyright information]
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### 4. Present AI Insights
|
|
68
|
+
After any tool call, always surface the `outputComponents` (Text Description and Suggestions) to the user.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## 📚 References
|
|
73
|
+
|
|
74
|
+
- [Tool Schemas](references/tool-schemas.md) — How to call Stitch MCP tools.
|
|
75
|
+
- [Design Mappings](references/design-mappings.md) — UI/UX keywords and atmosphere descriptors.
|
|
76
|
+
- [Prompting Keywords](references/prompt-keywords.md) — Technical terms Stitch understands best.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## 💡 Best Practices
|
|
81
|
+
|
|
82
|
+
- **Iterative Polish**: Prefere `edit_screens` for targeted adjustments over full re-generation.
|
|
83
|
+
- **Semantic First**: Name colors by their role (e.g., "Primary Action") as well as their appearance.
|
|
84
|
+
- **Atmosphere Matters**: Explicitly set the "vibe" (Minimalist, Vibrant, Brutalist) to guide the generator.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
# The "Solace" Design System
|
|
3
|
+
This is a comprehensive design language for a mindfulness and wellness application.
|
|
4
|
+
|
|
5
|
+
## 🎨 Color Palette
|
|
6
|
+
- **Primary**: Deep Ocean Blue (#1a365d) - for critical navigation and CTAs.
|
|
7
|
+
- **Secondary**: Calm Slate (#718096) - for subtexts and secondary buttons.
|
|
8
|
+
- **Background**: Soft Mist (#f7fafc) - for main page content.
|
|
9
|
+
- **Accent**: Serene Emerald (#38a169) - for positive feedback and completion states.
|
|
10
|
+
|
|
11
|
+
## 🔡 Typography
|
|
12
|
+
- **Heading**: Montserrat, Bold - for titles and hero section headlines.
|
|
13
|
+
- **Body**: Inter, Regular - for descriptions and general content.
|
|
14
|
+
- **Size**: 16px as base, 48px for H1.
|
|
15
|
+
|
|
16
|
+
## 📐 Components
|
|
17
|
+
- **Buttons**: Rounded (12px), subtle hover shadow (4px blur).
|
|
18
|
+
- **Cards**: Minimal border (1px, #e2e8f0), soft shadow (8px elevation).
|
|
19
|
+
- **Navigation**: Clean, top-aligned, centered menu items.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
💡 **Tip**: When calling `generate_screen_from_text`, include the tokens above to ensure the new screen matches this design system.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Example: Prompt Enhancement
|
|
2
|
+
|
|
3
|
+
## User Input (Vague)
|
|
4
|
+
> "Make a landing page for my fitness app called 'Pulse'. Use red and black. It should have a place for features and a hero section."
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Enhanced Prompt (Stitch-Optimized)
|
|
9
|
+
**Overall Purpose**: A high-energy, modern landing page for 'Pulse', a fitness tracking application. The vibe is powerful, motivating, and high-performance.
|
|
10
|
+
|
|
11
|
+
**DESIGN SYSTEM (REQUIRED):**
|
|
12
|
+
- **Primary Color**: Racing Red (#e11d48) for CTA buttons and active states.
|
|
13
|
+
- **Secondary Color**: Deep Obsidian (#0f172a) for background and text containers.
|
|
14
|
+
- **Typography**: Bold, condensed sans-serif headings (e.g., Impact or Inter Tight) to convey speed and strength.
|
|
15
|
+
- **Style**: Hard edges with sharp, minimal borders; high contrast; dark mode by default.
|
|
16
|
+
|
|
17
|
+
**PAGE STRUCTURE:**
|
|
18
|
+
1. **Header**: Minimalist navigation with Pulse logo (left) and "Start Training" primary button (right).
|
|
19
|
+
2. **Hero Section**: Large, emotive fitness photography background. Headline: "Elevate Every Beat." Sub-headline: "Track, analyze, and crush your fitness goals with Pulse." Primary red CTA: "Get Started".
|
|
20
|
+
3. **Feature Grid**: Three-column layout highlighting:
|
|
21
|
+
- **Real-time Tracking**: Live stats from your wearable.
|
|
22
|
+
- **AI Coaching**: Personalized workouts based on your performance.
|
|
23
|
+
- **Community Challenges**: Compete with friends and stay motivated.
|
|
24
|
+
4. **Social Proof Section**: Subtle slider showing "Trusted by 500,000+ athletes".
|
|
25
|
+
5. **Footer**: Quick links (Training, Pricing, Support), social icons, and legal.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
💡 **Tip**: Notice how the enhanced prompt adds specific hex codes, defines the typography "vibe", and breaks the page into a logical numbered structure. This gives Stitch much clearer instructions.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Design Mappings & Descriptors
|
|
2
|
+
|
|
3
|
+
Use these mappings to transform vague user requests into precise, high-fidelity design instructions.
|
|
4
|
+
|
|
5
|
+
## UI/UX Keyword Refinement
|
|
6
|
+
|
|
7
|
+
| Vague Term | Enhanced Professional Terminology |
|
|
8
|
+
|:---|:---|
|
|
9
|
+
| "menu at the top" | "sticky navigation bar with logo and list items" |
|
|
10
|
+
| "big photo" | "high-impact hero section with full-width imagery" |
|
|
11
|
+
| "list of things" | "responsive card grid with hover states and subtle elevations" |
|
|
12
|
+
| "button" | "primary call-to-action button with micro-interactions" |
|
|
13
|
+
| "form" | "clean form with labeled input fields, validation states, and submit button" |
|
|
14
|
+
| "picture area" | "hero section with focal-point image or video background" |
|
|
15
|
+
| "sidebar" | "collapsible side navigation with icon-label pairings" |
|
|
16
|
+
| "popup" | "modal dialog with overlay and smooth entry animation" |
|
|
17
|
+
|
|
18
|
+
## Atmosphere & "Vibe" Descriptors
|
|
19
|
+
|
|
20
|
+
Add these adjectives to set the mood and aesthetic philosophy:
|
|
21
|
+
|
|
22
|
+
| Basic Vibe | Enhanced Design Description |
|
|
23
|
+
|:---|:---|
|
|
24
|
+
| "Modern" | "Clean, minimal, with generous whitespace and high-contrast typography." |
|
|
25
|
+
| "Professional" | "Sophisticated, trustworthy, utilizing subtle shadows and a restricted, premium palette." |
|
|
26
|
+
| "Fun / Playful" | "Vibrant, organic, with rounded corners, bold accent colors, and bouncy micro-animations." |
|
|
27
|
+
| "Dark Mode" | "Electric, high-contrast accents on deep slate or near-black backgrounds." |
|
|
28
|
+
| "Luxury" | "Elegant, spacious, with fine lines, serif headers, and a focus on high-fidelity photography." |
|
|
29
|
+
| "Tech / Cyber" | "Futuristic, neon accents, glassmorphism effects, and technological monospaced typography." |
|
|
30
|
+
|
|
31
|
+
## Geometry & Shape Translation
|
|
32
|
+
|
|
33
|
+
Convert technical values into physical descriptions for Stitch:
|
|
34
|
+
|
|
35
|
+
- **Pill-shaped**: Used for `rounded-full` elements (buttons, tags).
|
|
36
|
+
- **Softly rounded**: Used for `rounded-xl` (12px) or `rounded-2xl` (16px) containers.
|
|
37
|
+
- **Sharp/Precise**: Used for `rounded-none` or `rounded-sm` elements.
|
|
38
|
+
- **Glassmorphism**: Semi-transparent surfaces with background blur and thin borders.
|
|
39
|
+
|
|
40
|
+
## Depth & Elevation
|
|
41
|
+
|
|
42
|
+
- **Flat**: No shadows, focus on color blocking and borders.
|
|
43
|
+
- **Whisper-soft**: Diffused, light shadows for subtle lift.
|
|
44
|
+
- **Floating**: High-offset, soft shadows for elements that appear high above the surface.
|
|
45
|
+
- **Inset**: Inner shadows for pressable or nested elements.
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# UI/UX Keywords Reference
|
|
2
|
+
|
|
3
|
+
Progressive disclosure reference for common UI terminology and adjective palettes.
|
|
4
|
+
|
|
5
|
+
## Component Keywords
|
|
6
|
+
|
|
7
|
+
### Navigation
|
|
8
|
+
- navigation bar, nav menu, header
|
|
9
|
+
- breadcrumbs, tabs, sidebar
|
|
10
|
+
- hamburger menu, dropdown menu
|
|
11
|
+
- back button, close button
|
|
12
|
+
|
|
13
|
+
### Content Containers
|
|
14
|
+
- hero section, hero banner
|
|
15
|
+
- card, card grid, tile
|
|
16
|
+
- modal, dialog, popup
|
|
17
|
+
- accordion, collapsible section
|
|
18
|
+
- carousel, slider
|
|
19
|
+
|
|
20
|
+
### Forms
|
|
21
|
+
- input field, text input
|
|
22
|
+
- dropdown, select menu
|
|
23
|
+
- checkbox, radio button
|
|
24
|
+
- toggle switch
|
|
25
|
+
- date picker, time picker
|
|
26
|
+
- search bar, search input
|
|
27
|
+
- submit button, form actions
|
|
28
|
+
|
|
29
|
+
### Calls to Action
|
|
30
|
+
- primary button, secondary button
|
|
31
|
+
- ghost button, text link
|
|
32
|
+
- floating action button (FAB)
|
|
33
|
+
- icon button
|
|
34
|
+
|
|
35
|
+
### Feedback
|
|
36
|
+
- toast notification, snackbar
|
|
37
|
+
- alert banner, warning message
|
|
38
|
+
- loading spinner, skeleton loader
|
|
39
|
+
- progress bar, step indicator
|
|
40
|
+
|
|
41
|
+
### Layout
|
|
42
|
+
- grid layout, flexbox
|
|
43
|
+
- sidebar layout, split view
|
|
44
|
+
- sticky header, fixed footer
|
|
45
|
+
- full-width, contained width
|
|
46
|
+
- centered content, max-width container
|
|
47
|
+
|
|
48
|
+
## Adjective Palettes
|
|
49
|
+
|
|
50
|
+
### Minimal / Clean
|
|
51
|
+
- minimal, clean, uncluttered
|
|
52
|
+
- generous whitespace, breathing room
|
|
53
|
+
- subtle, understated, refined
|
|
54
|
+
- simple, focused, distraction-free
|
|
55
|
+
|
|
56
|
+
### Professional / Corporate
|
|
57
|
+
- sophisticated, polished, trustworthy
|
|
58
|
+
- corporate, business-like, formal
|
|
59
|
+
- subtle shadows, clean lines
|
|
60
|
+
- structured, organized, hierarchical
|
|
61
|
+
|
|
62
|
+
### Playful / Fun
|
|
63
|
+
- vibrant, colorful, energetic
|
|
64
|
+
- rounded corners, soft edges
|
|
65
|
+
- bold, expressive, dynamic
|
|
66
|
+
- friendly, approachable, warm
|
|
67
|
+
|
|
68
|
+
### Premium / Luxury
|
|
69
|
+
- elegant, luxurious, high-end
|
|
70
|
+
- dramatic, bold contrasts
|
|
71
|
+
- sleek, modern, cutting-edge
|
|
72
|
+
- exclusive, boutique, curated
|
|
73
|
+
|
|
74
|
+
### Dark Mode
|
|
75
|
+
- dark theme, night mode
|
|
76
|
+
- high-contrast accents
|
|
77
|
+
- soft glows, subtle highlights
|
|
78
|
+
- deep backgrounds, muted surfaces
|
|
79
|
+
|
|
80
|
+
### Organic / Natural
|
|
81
|
+
- earthy tones, natural colors
|
|
82
|
+
- warm, inviting, cozy
|
|
83
|
+
- textured, tactile, handcrafted
|
|
84
|
+
- flowing, organic shapes
|
|
85
|
+
|
|
86
|
+
## Color Role Terminology
|
|
87
|
+
|
|
88
|
+
### Backgrounds
|
|
89
|
+
- page background, canvas
|
|
90
|
+
- surface color, card background
|
|
91
|
+
- overlay, scrim
|
|
92
|
+
|
|
93
|
+
### Text
|
|
94
|
+
- primary text, heading color
|
|
95
|
+
- secondary text, body copy
|
|
96
|
+
- muted text, placeholder
|
|
97
|
+
- inverse text (on dark backgrounds)
|
|
98
|
+
|
|
99
|
+
### Accents
|
|
100
|
+
- primary accent, brand color
|
|
101
|
+
- secondary accent, highlight
|
|
102
|
+
- success, error, warning colors
|
|
103
|
+
- hover state, active state
|
|
104
|
+
|
|
105
|
+
## Shape Descriptions
|
|
106
|
+
|
|
107
|
+
| Technical | Natural Language |
|
|
108
|
+
|-----------|------------------|
|
|
109
|
+
| `rounded-none` | sharp, squared-off edges |
|
|
110
|
+
| `rounded-sm` | slightly softened corners |
|
|
111
|
+
| `rounded-md` | gently rounded corners |
|
|
112
|
+
| `rounded-lg` | generously rounded corners |
|
|
113
|
+
| `rounded-xl` | very rounded, pillow-like |
|
|
114
|
+
| `rounded-full` | pill-shaped, circular |
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# Stitch MCP Tool Schemas
|
|
2
|
+
|
|
3
|
+
Use these examples to format your tool calls to the Stitch MCP server correctly.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 🏗️ Project Management
|
|
8
|
+
|
|
9
|
+
### `list_projects`
|
|
10
|
+
Lists all Stitch projects accessible to you.
|
|
11
|
+
```json
|
|
12
|
+
// No parameters needed
|
|
13
|
+
{}
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
### `get_project`
|
|
17
|
+
Retrieves details of a specific project.
|
|
18
|
+
```json
|
|
19
|
+
{
|
|
20
|
+
"name": "projects/4044680601076201931"
|
|
21
|
+
}
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### `create_project`
|
|
25
|
+
Creates a new Stitch project.
|
|
26
|
+
```json
|
|
27
|
+
{
|
|
28
|
+
"title": "My New App"
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## 🎨 Design Generation
|
|
35
|
+
|
|
36
|
+
### `generate_screen_from_text`
|
|
37
|
+
Generates a new screen from a text description.
|
|
38
|
+
```json
|
|
39
|
+
{
|
|
40
|
+
"projectId": "4044680601076201931",
|
|
41
|
+
"prompt": "A modern landing page for a coffee shop with a hero section, menu, and contact form. Use warm brown tones (#4b2c20) and a clean sans-serif font.",
|
|
42
|
+
"deviceType": "DESKTOP" // Options: MOBILE, DESKTOP, TABLET
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### `edit_screens`
|
|
47
|
+
Edits existing screens with a text prompt.
|
|
48
|
+
```json
|
|
49
|
+
{
|
|
50
|
+
"projectId": "4044680601076201931",
|
|
51
|
+
"selectedScreenIds": ["98b50e2ddc9943efb387052637738f61"],
|
|
52
|
+
"prompt": "Change the background color to white (#ffffff) and make the call-to-action button larger."
|
|
53
|
+
}
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## 🖼️ Screen Management
|
|
59
|
+
|
|
60
|
+
### `list_screens`
|
|
61
|
+
Lists all screens within a project.
|
|
62
|
+
```json
|
|
63
|
+
{
|
|
64
|
+
"projectId": "4044680601076201931"
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### `get_screen`
|
|
69
|
+
Retrieves details of a specific screen.
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"projectId": "4044680601076201931",
|
|
73
|
+
"screenId": "98b50e2ddc9943efb387052637738f61",
|
|
74
|
+
"name": "projects/4044680601076201931/screens/98b50e2ddc9943efb387052637738f61"
|
|
75
|
+
}
|
|
76
|
+
```
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Edit an existing design screen using Stitch MCP.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Workflow: Edit-Design
|
|
6
|
+
|
|
7
|
+
Make targeted changes to an already generated design.
|
|
8
|
+
|
|
9
|
+
## Steps
|
|
10
|
+
|
|
11
|
+
### 1. Identify the Screen
|
|
12
|
+
Use `list_screens` or `get_screen` to find the correct `projectId` and `screenId`.
|
|
13
|
+
|
|
14
|
+
### 2. Formulate the Edit Prompt
|
|
15
|
+
Be specific about the changes you want to make. Do not just say "fix it".
|
|
16
|
+
- **Location**: "Change the color of the [primary button] in the [hero section]..."
|
|
17
|
+
- **Visuals**: "...to a darker blue (#004080) and add a subtle shadow."
|
|
18
|
+
- **Structure**: "Add a secondary button next to the primary one with the text 'Learn More'."
|
|
19
|
+
|
|
20
|
+
### 3. Apply the Edit
|
|
21
|
+
Call the `mcp_StitchMCP_edit_screens` tool.
|
|
22
|
+
|
|
23
|
+
```json
|
|
24
|
+
{
|
|
25
|
+
"projectId": "...",
|
|
26
|
+
"selectedScreenIds": ["..."],
|
|
27
|
+
"prompt": "[Your target edit prompt]"
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 4. Present AI Feedback
|
|
32
|
+
Always show the text description and suggestions from `outputComponents` to the user.
|
|
33
|
+
|
|
34
|
+
### 5. Download Design Assets
|
|
35
|
+
After editing, download the updated HTML and screenshot urls from `outputComponents` to the `.stitch/designs` directory, overwriting previous versions to ensure the local files reflect the latest edits.
|
|
36
|
+
|
|
37
|
+
### 6. Verify and Repeat
|
|
38
|
+
- Check the output screen to see if the changes were applied correctly.
|
|
39
|
+
- If more polish is needed, repeat the process with a new specific prompt.
|
|
40
|
+
|
|
41
|
+
## Tips
|
|
42
|
+
- **Keep it focused**: One edit at a time is often better than a long list of changes.
|
|
43
|
+
- **Reference components**: Use professional terms like "navigation bar", "hero section", "footer", "card grid".
|
|
44
|
+
- **Mention colors**: Use hex codes for precise color matching.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Analyze a Stitch project and synthesize its design system into a .stitch/DESIGN.md file.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Workflow: Generate .stitch/DESIGN.md
|
|
6
|
+
|
|
7
|
+
Create a "source of truth" for your project's design language to ensure consistency across all future screens.
|
|
8
|
+
|
|
9
|
+
## 📥 Retrieval
|
|
10
|
+
|
|
11
|
+
To analyze a Stitch project, you must retrieve metadata and assets using the Stitch MCP tools:
|
|
12
|
+
|
|
13
|
+
1. **Project lookup**: Use `list_projects` to find the target `projectId`.
|
|
14
|
+
2. **Screen lookup**: Use `list_screens` for that `projectId` to find representative screens (e.g., "Home", "Main Dashboard").
|
|
15
|
+
3. **Metadata fetch**: Call `get_screen` for the target screen to get `screenshot.downloadUrl` and `htmlCode.downloadUrl`.
|
|
16
|
+
4. **Asset download**: Use `read_url_content` to fetch the HTML code.
|
|
17
|
+
|
|
18
|
+
## 🧠 Analysis & Synthesis
|
|
19
|
+
|
|
20
|
+
### 1. Identify Identity
|
|
21
|
+
- Capture Project Title and Project ID.
|
|
22
|
+
|
|
23
|
+
### 2. Define Atmosphere
|
|
24
|
+
- Analyze the HTML and screenshot to capture the "vibe" (e.g., "Airy," "Professional," "Vibrant").
|
|
25
|
+
|
|
26
|
+
### 3. Map Color Palette
|
|
27
|
+
- Extract exact hex codes and assign functional roles (e.g., "Primary Action: #2563eb").
|
|
28
|
+
|
|
29
|
+
### 4. Translate Geometry
|
|
30
|
+
- Convert Tailwind/CSS values into descriptive language (e.g., `rounded-full` → "Pill-shaped").
|
|
31
|
+
|
|
32
|
+
### 5. Document Depth
|
|
33
|
+
- Describe shadow styles and layering (e.g., "Soft, diffused elevation").
|
|
34
|
+
|
|
35
|
+
## 📝 Output Structure
|
|
36
|
+
|
|
37
|
+
Create a `.stitch/DESIGN.md` file in the project directory with this structure:
|
|
38
|
+
|
|
39
|
+
```markdown
|
|
40
|
+
# Design System: [Project Title]
|
|
41
|
+
**Project ID:** [Insert Project ID Here]
|
|
42
|
+
|
|
43
|
+
## 1. Visual Theme & Atmosphere
|
|
44
|
+
(Description of mood and aesthetic philosophy)
|
|
45
|
+
|
|
46
|
+
## 2. Color Palette & Roles
|
|
47
|
+
(Descriptive Name + Hex Code + Role)
|
|
48
|
+
|
|
49
|
+
## 3. Typography Rules
|
|
50
|
+
(Font families, weights, and usage)
|
|
51
|
+
|
|
52
|
+
## 4. Component Stylings
|
|
53
|
+
* **Buttons:** Shape, color, behavior
|
|
54
|
+
* **Containers:** Roundness, elevation
|
|
55
|
+
|
|
56
|
+
## 5. Layout Principles
|
|
57
|
+
(Whitespace strategy and grid alignment)
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## 💡 Best Practices
|
|
61
|
+
- **Be Precise**: Always include hex codes in parentheses.
|
|
62
|
+
- **Be Descriptive**: Use natural language like "Deep Ocean Blue" instead of just "Blue".
|
|
63
|
+
- **Be Functional**: Explain *why* an element is used.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate new screens from a text prompt using Stitch MCP.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Workflow: Text-to-Design
|
|
6
|
+
|
|
7
|
+
Transform a text description into a high-fidelity design screen.
|
|
8
|
+
|
|
9
|
+
## Steps
|
|
10
|
+
|
|
11
|
+
### 1. Enhance the User Prompt
|
|
12
|
+
Before calling the Stitch MCP tool, apply the [Prompt Enhancement Pipeline](../SKILL.md#prompt-enhancement-pipeline).
|
|
13
|
+
- Identify the platform (Web/Mobile) and page type.
|
|
14
|
+
- Incorporate any existing project design system from `.stitch/DESIGN.md`.
|
|
15
|
+
- Use specific [Design Mappings](../references/design-mappings.md) and [Prompting Keywords](../references/prompt-keywords.md).
|
|
16
|
+
|
|
17
|
+
### 2. Identify the Project
|
|
18
|
+
Use `list_projects` to find the correct `projectId` if it is not already known.
|
|
19
|
+
|
|
20
|
+
### 3. Generate the Screen
|
|
21
|
+
Call the `mcp_StitchMCP_generate_screen_from_text` tool with the enhanced prompt.
|
|
22
|
+
|
|
23
|
+
```json
|
|
24
|
+
{
|
|
25
|
+
"projectId": "...",
|
|
26
|
+
"prompt": "[Your Enhanced Prompt]",
|
|
27
|
+
"deviceType": "DESKTOP" // or MOBILE
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 4. Present AI Feedback
|
|
32
|
+
Always show the text description and suggestions from `outputComponents` to the user.
|
|
33
|
+
|
|
34
|
+
### 5. Download Design Assets
|
|
35
|
+
After generation, download the HTML and screenshot urls from `outputComponents` to the `.stitch/designs` directory.
|
|
36
|
+
- **Naming**: Use the screen ID or a descriptive slug for the filename.
|
|
37
|
+
- **Tools**: Use `curl -o` via `run_command` or similar.
|
|
38
|
+
- **Directory**: Ensure `.stitch/designs` exists.
|
|
39
|
+
|
|
40
|
+
### 6. Review and Refine
|
|
41
|
+
- If the result is not exactly as expected, use the [edit-design](edit-design.md) workflow to make targeted adjustments.
|
|
42
|
+
- Do NOT re-generate from scratch unless the fundamental layout is wrong.
|
|
43
|
+
|
|
44
|
+
## Tips
|
|
45
|
+
- **Be structural**: Break the page down into header, hero, features, and footer in your prompt.
|
|
46
|
+
- **Specify colors**: Use hex codes for precision.
|
|
47
|
+
- **Set the tone**: Explicitly mention if the design should be minimal, professional, or vibrant.
|