solmate-skills 1.0.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/AGENTS.md +90 -0
- package/README.md +42 -0
- package/bin/cli.js +85 -0
- package/design-md/README.md +34 -0
- package/design-md/SKILL.md +172 -0
- package/design-md/examples/DESIGN.md +154 -0
- package/dev-conventions/SKILL.md +305 -0
- package/enhance-prompt/README.md +34 -0
- package/enhance-prompt/SKILL.md +204 -0
- package/enhance-prompt/references/KEYWORDS.md +114 -0
- package/implementation-workflow/SKILL.md +131 -0
- package/init-skills.sh +41 -0
- package/manage-collaboration/SKILL.md +50 -0
- package/manage-docs/SKILL.md +389 -0
- package/manage-skills/SKILL.md +52 -0
- package/obsidian-sync/SKILL.md +44 -0
- package/old_AGENTS.md +124 -0
- package/package.json +31 -0
- package/react-components/README.md +36 -0
- package/react-components/SKILL.md +47 -0
- package/react-components/examples/gold-standard-card.tsx +80 -0
- package/react-components/package.json +16 -0
- package/react-components/resources/architecture-checklist.md +15 -0
- package/react-components/resources/component-template.tsx +37 -0
- package/react-components/resources/stitch-api-reference.md +14 -0
- package/react-components/resources/style-guide.json +27 -0
- package/react-components/scripts/fetch-stitch.sh +30 -0
- package/react-components/scripts/validate.js +68 -0
- package/remotion/README.md +105 -0
- package/remotion/SKILL.md +393 -0
- package/remotion/examples/WalkthroughComposition.tsx +78 -0
- package/remotion/examples/screens.json +56 -0
- package/remotion/resources/composition-checklist.md +124 -0
- package/remotion/resources/screen-slide-template.tsx +123 -0
- package/remotion/scripts/download-stitch-asset.sh +38 -0
- package/shadcn-ui/README.md +248 -0
- package/shadcn-ui/SKILL.md +326 -0
- package/shadcn-ui/examples/auth-layout.tsx +177 -0
- package/shadcn-ui/examples/data-table.tsx +313 -0
- package/shadcn-ui/examples/form-pattern.tsx +177 -0
- package/shadcn-ui/resources/component-catalog.md +481 -0
- package/shadcn-ui/resources/customization-guide.md +516 -0
- package/shadcn-ui/resources/migration-guide.md +463 -0
- package/shadcn-ui/resources/setup-guide.md +412 -0
- package/shadcn-ui/scripts/verify-setup.sh +134 -0
- package/stitch-loop/README.md +54 -0
- package/stitch-loop/SKILL.md +203 -0
- package/stitch-loop/examples/SITE.md +73 -0
- package/stitch-loop/examples/next-prompt.md +25 -0
- package/stitch-loop/resources/baton-schema.md +61 -0
- package/stitch-loop/resources/site-template.md +104 -0
- package/verify-docs/SKILL.md +34 -0
- package/verify-drizzle-schema/SKILL.md +44 -0
- package/verify-implementation/SKILL.md +39 -0
package/AGENTS.md
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# Antigravity Global Standards & Communication Rules
|
|
2
|
+
|
|
3
|
+
## 1. 커뮤니케이션 및 승인 원칙
|
|
4
|
+
- **이모지 금지**: 사용자와의 모든 대화에서 이모지(Emoji) 및 이모티콘 사용을 전면 금지한다. 전문적이고 명확한 텍스트로만 소통한다.
|
|
5
|
+
- **선 답변 후 작업**: 질문이나 설명 요청 시, 파일 수정이나 명령 실행을 금지하고 상세한 텍스트 답변을 최우선으로 제공한다.
|
|
6
|
+
- **수정 승인 필수**: 코드를 수정하기 전에 반드시 수정 계획을 보고하고 명시적 승인을 얻어야 한다.
|
|
7
|
+
- **명확한 목적 제시**: 코드 수정을 시작할 때는 반드시 "OOO 기능을 수정하겠습니다"라고 목적을 명확히 밝힌다.
|
|
8
|
+
- **근거 기반 답변**: "아마도 그럴 것이다" 식의 추측을 금지하고, 반드시 도구(Tool)로 현재 상태를 검증한 후 답변한다.
|
|
9
|
+
- **충분한 논의 및 완료 지연 금지 (Anti-Rush)**: AI가 임의로 단계의 완료를 정의하지 않는다. 사용자가 "이제 코딩을 시작하자"고 먼저 말하거나 "더 이상 보완할 점이 없다"고 확언할 때까지는 현재 단계에 머물며 더 깊은 질문과 논의를 지속한다. "다음으로 넘어갈까요?"라는 재촉 대신 "현재 단계에서 더 구체화하거나 보완할 점이 있을까요?"라고 묻는다.
|
|
10
|
+
- **Self-Reflection Check (자가 점검 강제)**: 코드를 수정하는 도구를 호출하기 전에, 반드시 다음 질문에 스스로 답해야 한다.
|
|
11
|
+
- "이 수정에 대한 내용을 사용자에게 설명했는가? (Y/N)"
|
|
12
|
+
- "이 수정에 대한 사용자의 명시적 승인이 있는가? (Y/N)"
|
|
13
|
+
- "이 수정이 기존 시스템에 영향을 주지 않는다는 근거가 있는가? (Y/N)"
|
|
14
|
+
- **"코드 시작전 사용자에게 충분한 질문과 의견교환을 하였는가?(Y/N)" (필수)**
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## 2. 문서 관리 표준 (5-Layer Structure)
|
|
18
|
+
개발 문서는 다음 **폴더명과 역할**을 갖는 5단계 구조를 엄격히 준수한다.
|
|
19
|
+
|
|
20
|
+
| 순번 | 폴더명 | 역할 |
|
|
21
|
+
| :--- | :--- | :--- |
|
|
22
|
+
| 1 | `docs/01_Concept_Design/` | 컨셉과 디자인 가이드. 기획, 비전, 개요, UI 디자인, 기능 설명. |
|
|
23
|
+
| 2 | `docs/02_UI_Screens/` | UI 스크린. 페이지별 완성된 모습·프로토타입 리뷰·화면 흐름 확인. |
|
|
24
|
+
| 3 | `docs/03_Technical_Specs/` | 기술 명세. 데이터·API 등 기술적 약속, DB 스키마·구현 가이드. |
|
|
25
|
+
| 4 | `docs/04_Logic_Progress/` | 로직과 진행. 백로그(진행 상태) + 비즈니스 로직·상태 관리·알고리즘. |
|
|
26
|
+
| 5 | `docs/05_QA_Validation/` | QA와 검증. 테스트 시나리오·QA 체크리스트·시스템 검증. |
|
|
27
|
+
|
|
28
|
+
### 2.1. `docs/01_Concept_Design` — 컨셉·디자인
|
|
29
|
+
- **역할**: 프로젝트의 기획, 목적, 개요, UI 디자인, 기능 설명을 담는 컨셉·디자인 가이드.
|
|
30
|
+
- **포함 예**: `VISION.md`, `OVERVIEW.md`, `UI_DESIGN.md`, `ROADMAP.md`
|
|
31
|
+
|
|
32
|
+
### 2.2. `docs/02_UI_Screens` — UI 스크린
|
|
33
|
+
- **역할**: UI-First 전략에 따른 프로토타입 결과물(스크린샷, 흐름도) 및 리뷰. 페이지별 완성 모습 확인.
|
|
34
|
+
- **포함 예**: `PROTOTYPE_REVIEW.md`, `SCREEN_FLOW.md`, 페이지별 리뷰 문서
|
|
35
|
+
|
|
36
|
+
### 2.3. `docs/03_Technical_Specs` — 기술 명세
|
|
37
|
+
- **역할**: 개발자가 참고하는 구체적 지시서. 데이터·API 등 기술적 약속.
|
|
38
|
+
- **포함 예**: `DB_SCHEMA.md`, `API_SPECS.md`, `STORAGE_POLICY.md`, 구현 가이드
|
|
39
|
+
|
|
40
|
+
### 2.4. `docs/04_Logic_Progress` — 로직·진행
|
|
41
|
+
- **역할**: 백로그(진행 상태)와 비즈니스 로직·상태 관리·알고리즘 결합. UI와 데이터(DB/API) 연결 설계.
|
|
42
|
+
- **포함 예**: `00_BACKLOG.md`, `00_ARCHIVE/`, 상태 머신·알고리즘 설계 문서
|
|
43
|
+
|
|
44
|
+
### 2.5. `docs/05_QA_Validation` — QA·검증
|
|
45
|
+
- **역할**: 구현 기능의 검증. 단순 테스트를 넘어 시스템 검증.
|
|
46
|
+
- **포함 예**: `test_scenarios.md`, `qa_checklist.md`, 리뷰·감사 문서
|
|
47
|
+
|
|
48
|
+
### 2.6. 문서 작성 표준 (Metadata & Naming)
|
|
49
|
+
- **날짜 기록 필수**: 모든 문서의 최상단에는 **작성 일시(Created Date)**와 **최종 수정 일시(Last Updated Date)**를 반드시 명시한다.
|
|
50
|
+
- **날짜 형식**: `YYYY-MM-DD HH:mm` 포맷을 사용한다.
|
|
51
|
+
- **파일 네이밍**: 모든 파일명 앞에는 `01_`과 같은 **순번(Numbering)**을 반드시 붙여 생성 순서와 계층을 명확히 한다. (예: `01_VISION.md`, `02_UI_DESIGN.md`)
|
|
52
|
+
- **Interactive Process**: 문서를 작성할 때 AI가 독단적으로 내용을 채우지 않는다. 초안 작성 전, **반드시 사용자에게 핵심 질문을 던지고 답변을 바탕으로 문서를 작성(Ask before Write)**한다.
|
|
53
|
+
|
|
54
|
+
## 3. 개발 표준 및 품질
|
|
55
|
+
- **UI 중심 개발 전략 (UI-First)**: Concept_Design -> UI_Screens -> Technical_Specs -> Logic_Progress 순서를 따른다.
|
|
56
|
+
- **git commit 필수**: 중요 작업 전 반드시 git commit을 수행한다.
|
|
57
|
+
- **커밋 메시지 형식**: `type(scope): subject` 포맷을 따른다.
|
|
58
|
+
- **Type**: `feat`(기능), `fix`(버그), `docs`(문서), `style`(포맷), `refactor`(리팩토링), `test`(테스트), `chore`(기타)
|
|
59
|
+
- **Subject**: 한글로 명확하게 요약한다. (예: `feat(login): 소셜 로그인 API 연동`)
|
|
60
|
+
|
|
61
|
+
### 3.1. 프로젝트 구조 표준 (Monorepo Strategy)
|
|
62
|
+
- **Root Directory (`/`)**: 프로젝트의 **관리(Management)** 영역이다. Git, 문서(docs), 설정(AGENTS.md), 루트 package.json(스크립트 위임용)을 포함한다. 실제 앱 소스는 App Directory에 둔다.
|
|
63
|
+
- **App Directory (`/web`)**: 실제 **구현(Implementation)** 영역이다. **본 프로젝트(Mastering-Bitcoin-RAG)는 `web/`을 App Directory로 사용한다.** 소스 코드(`src/`), 빌드 설정, 의존성(package.json, node_modules)을 `web/`에서 관리한다.
|
|
64
|
+
- **Git 관리**: 반드시 **Root Directory**에서 수행하여 문서와 코드를 통합 관리한다.
|
|
65
|
+
- **배포 설정**: 배포 서비스의 Root Directory를 **App Directory(`web/`)** 로 지정하거나, Build Command를 `cd web && npm run build` 등으로 설정한다.
|
|
66
|
+
|
|
67
|
+
## 4. Skills & AI Capabilities
|
|
68
|
+
AI 에이전트는 본 프로젝트에 설치된 다음 **14개 스킬**을 활용하여 작업을 수행하며, 모든 작업 결과물은 이 스킬들의 검증 가이드를 통과해야 한다.
|
|
69
|
+
|
|
70
|
+
| 카테고리 | 스킬명 | 주요 역할 |
|
|
71
|
+
| :--- | :--- | :--- |
|
|
72
|
+
| **운영 및 거버넌스** | `manage-collaboration` | 팀장/팀원 가이드 기반 협업 표준(브랜치, PR, 승인 등) 강제 |
|
|
73
|
+
| | `manage-docs` | 5단계 문서 구조 및 메타데이터 표준 관리 |
|
|
74
|
+
| | `manage-skills` | 검증 스킬의 누락 탐지 및 최신화 (Self-Maint.) |
|
|
75
|
+
| **품질 검증 (QA)** | `verify-implementation` | 모든 `verify-*` 스킬의 통합 순차 실행 및 보고 (Template) |
|
|
76
|
+
| | `verify-docs` | 문서 레이어 정합성 및 네이밍/메타데이터 검증 (Template) |
|
|
77
|
+
| | `verify-drizzle-schema` | Drizzle 스키마 설계 정합성 및 기술 표준 검증 (Template) |
|
|
78
|
+
| **개발 및 설계** | `dev-conventions` | 코딩 표준 및 프로젝트 컨벤션 준수 여부 확인 |
|
|
79
|
+
| | `design-md` | 디자인 명세 및 기획 문서 작성 최적화 |
|
|
80
|
+
| | `react-components` | UI 컴포넌트 설계 및 구현 표준 가이드 |
|
|
81
|
+
| | `shadcn-ui` | shadcn/ui 라이브러리 활용 및 커스텀 가이드 |
|
|
82
|
+
| **특수 도구** | `stitch-loop` | UI 디자인-코드 간의 반복 작업 고도화 |
|
|
83
|
+
| | `remotion` | 비디오 프로그래밍을 통한 시각화 자료 생성 |
|
|
84
|
+
| | `obsidian-sync` | 지식 베이스(Obsidian)와의 동기화 및 관리 |
|
|
85
|
+
| | `enhance-prompt` | AI 프롬프트 최적화 및 페르소나 강화 |
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## 5. 최종 약속
|
|
90
|
+
AI 에이전트는 본 **AGENTS.md**를 모든 판단의 최우선 근거로 삼는다. 문서에 정의되지 않은 작업을 수행할 경우 반드시 사용자에게 구현 전 문서 업데이트 필요성을 먼저 확인한다.
|
package/README.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# solmate-skills
|
|
2
|
+
|
|
3
|
+
Curated skills for Solmate projects. Easily share and install AI tool skills across your team.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
You don't need to install this package globally. Simply use `npx`:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# List available skills
|
|
11
|
+
npx solmate-skills list
|
|
12
|
+
|
|
13
|
+
# Install all available skills
|
|
14
|
+
npx solmate-skills install all
|
|
15
|
+
|
|
16
|
+
# Install a specific skill (e.g., manage-docs)
|
|
17
|
+
npx solmate-skills install manage-docs
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## How it works
|
|
21
|
+
|
|
22
|
+
When you run the `install` command, the script will:
|
|
23
|
+
1. Check for the selected skill in this package.
|
|
24
|
+
2. Copy the skill folder to `.agent/skills/<skill-name>` in your current project.
|
|
25
|
+
|
|
26
|
+
## Available Skills
|
|
27
|
+
|
|
28
|
+
- `design-md`: Design and UI patterns.
|
|
29
|
+
- `dev-conventions`: Development standards and rules.
|
|
30
|
+
- `enhance-prompt`: Advanced prompting techniques.
|
|
31
|
+
- `implementation-workflow`: Step-by-step implementation guides.
|
|
32
|
+
- `manage-collaboration`: Team collaboration protocols.
|
|
33
|
+
- `manage-docs`: Documentation structure and standards.
|
|
34
|
+
- `manage-skills`: Skill management and creation tool.
|
|
35
|
+
- `obsidian-sync`: Obsidian integration.
|
|
36
|
+
- `react-components`: Curated React components.
|
|
37
|
+
- `remotion`: Video creation as code.
|
|
38
|
+
- `shadcn-ui`: Custom Shadcn UI components.
|
|
39
|
+
- `stitch-loop`: Integration with Stitch.
|
|
40
|
+
- `verify-docs`: Documentation audit tool.
|
|
41
|
+
- `verify-drizzle-schema`: Drizzle schema verification.
|
|
42
|
+
- `verify-implementation`: Logic and flow verification.
|
package/bin/cli.js
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const fs = require('fs');
|
|
4
|
+
const path = require('path');
|
|
5
|
+
|
|
6
|
+
const IGNORED_FOLDERS = ['bin', 'node_modules', '.git', '.github', '.gemini', '.agent'];
|
|
7
|
+
const IGNORED_FILES = ['package.json', 'package-lock.json', 'AGENTS.md', 'SKILL.md', 'init-skills.sh', 'README.md', '.DS_Store', 'old_AGENTS.md'];
|
|
8
|
+
|
|
9
|
+
const packageRoot = path.join(__dirname, '..');
|
|
10
|
+
const targetProjectRoot = process.cwd();
|
|
11
|
+
const targetSkillsDir = path.join(targetProjectRoot, '.agent', 'skills');
|
|
12
|
+
|
|
13
|
+
function getAvailableSkills() {
|
|
14
|
+
return fs.readdirSync(packageRoot, { withFileTypes: true })
|
|
15
|
+
.filter(dirent => dirent.isDirectory() && !IGNORED_FOLDERS.includes(dirent.name))
|
|
16
|
+
.map(dirent => dirent.name);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function copyFolderSync(from, to) {
|
|
20
|
+
if (!fs.existsSync(to)) {
|
|
21
|
+
fs.mkdirSync(to, { recursive: true });
|
|
22
|
+
}
|
|
23
|
+
fs.readdirSync(from).forEach(element => {
|
|
24
|
+
const fromPath = path.join(from, element);
|
|
25
|
+
const toPath = path.join(to, element);
|
|
26
|
+
if (fs.lstatSync(fromPath).isDirectory()) {
|
|
27
|
+
copyFolderSync(fromPath, toPath);
|
|
28
|
+
} else {
|
|
29
|
+
fs.copyFileSync(fromPath, toPath);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
function listSkills() {
|
|
35
|
+
const skills = getAvailableSkills();
|
|
36
|
+
console.log('\nAvailable skills to install:');
|
|
37
|
+
skills.forEach(skill => console.log(` - ${skill}`));
|
|
38
|
+
console.log('\nUsage: npx solmate-skills install <skill-name> | install-all\n');
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function installSkill(skillName) {
|
|
42
|
+
const skills = getAvailableSkills();
|
|
43
|
+
|
|
44
|
+
if (skillName === 'install-all') {
|
|
45
|
+
console.log('Installing all skills...');
|
|
46
|
+
skills.forEach(s => installSkill(s));
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
if (!skills.includes(skillName)) {
|
|
51
|
+
console.error(`Error: Skill "${skillName}" not found.`);
|
|
52
|
+
process.exit(1);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const sourcePath = path.join(packageRoot, skillName);
|
|
56
|
+
const destPath = path.join(targetSkillsDir, skillName);
|
|
57
|
+
|
|
58
|
+
console.log(`Installing ${skillName}...`);
|
|
59
|
+
copyFolderSync(sourcePath, destPath);
|
|
60
|
+
console.log(`Successfully installed ${skillName} to .agent/skills/${skillName}`);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const args = process.argv.slice(2);
|
|
64
|
+
const command = args[0];
|
|
65
|
+
const subCommand = args[1];
|
|
66
|
+
|
|
67
|
+
if (!command || command === 'list') {
|
|
68
|
+
listSkills();
|
|
69
|
+
} else if (command === 'install') {
|
|
70
|
+
if (!subCommand) {
|
|
71
|
+
console.error('Error: Please specify a skill name or "all".');
|
|
72
|
+
listSkills();
|
|
73
|
+
process.exit(1);
|
|
74
|
+
}
|
|
75
|
+
if (subCommand === 'all' || subCommand === 'install-all') {
|
|
76
|
+
installSkill('install-all');
|
|
77
|
+
} else {
|
|
78
|
+
installSkill(subCommand);
|
|
79
|
+
}
|
|
80
|
+
} else if (command === 'install-all' || command === 'all') {
|
|
81
|
+
installSkill('install-all');
|
|
82
|
+
} else {
|
|
83
|
+
console.log(`Unknown command: ${command}`);
|
|
84
|
+
listSkills();
|
|
85
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Stitch Design System Documentation Skill
|
|
2
|
+
|
|
3
|
+
## Install
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
npx add-skill google-labs-code/stitch-skills --skill design-md --global
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Example Prompt
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
Analyze my Furniture Collection project's Home screen and generate a comprehensive DESIGN.md file documenting the design system.
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Skill Structure
|
|
16
|
+
|
|
17
|
+
This repository follows the **Agent Skills** open standard. Each skill is self-contained with its own logic, workflow, and reference materials.
|
|
18
|
+
|
|
19
|
+
```text
|
|
20
|
+
design-md/
|
|
21
|
+
├── SKILL.md — Core instructions & workflow
|
|
22
|
+
├── examples/ — Sample DESIGN.md outputs
|
|
23
|
+
└── README.md — This file
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## How it Works
|
|
27
|
+
|
|
28
|
+
When activated, the agent follows a structured design analysis pipeline:
|
|
29
|
+
|
|
30
|
+
1. **Retrieval**: Uses the Stitch MCP Server to fetch project screens, HTML code, and design metadata.
|
|
31
|
+
2. **Extraction**: Identifies design tokens including colors, typography, spacing, and component patterns.
|
|
32
|
+
3. **Translation**: Converts technical CSS/Tailwind values into descriptive, natural design language.
|
|
33
|
+
4. **Synthesis**: Generates a comprehensive DESIGN.md following the semantic design system format.
|
|
34
|
+
5. **Alignment**: Ensures output follows Stitch Effective Prompting Guide principles for optimal screen generation.
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: design-md
|
|
3
|
+
description: Analyze Stitch projects and synthesize a semantic design system into DESIGN.md files
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- "stitch*:*"
|
|
6
|
+
- "Read"
|
|
7
|
+
- "Write"
|
|
8
|
+
- "web_fetch"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Stitch DESIGN.md Skill
|
|
12
|
+
|
|
13
|
+
You are an expert Design Systems Lead. Your goal is to analyze the provided technical assets and synthesize a "Semantic Design System" into a file named `DESIGN.md`.
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
This skill helps you create `DESIGN.md` files that serve as the "source of truth" for prompting Stitch to generate new screens that align perfectly with existing design language. Stitch interprets design through "Visual Descriptions" supported by specific color values.
|
|
18
|
+
|
|
19
|
+
## Prerequisites
|
|
20
|
+
|
|
21
|
+
- Access to the Stitch MCP Server
|
|
22
|
+
- A Stitch project with at least one designed screen
|
|
23
|
+
- Access to the Stitch Effective Prompting Guide: https://stitch.withgoogle.com/docs/learn/prompting/
|
|
24
|
+
|
|
25
|
+
## The Goal
|
|
26
|
+
|
|
27
|
+
The `DESIGN.md` file will serve as the "source of truth" for prompting Stitch to generate new screens that align perfectly with the existing design language. Stitch interprets design through "Visual Descriptions" supported by specific color values.
|
|
28
|
+
|
|
29
|
+
## Retrieval and Networking
|
|
30
|
+
|
|
31
|
+
To analyze a Stitch project, you must retrieve screen metadata and design assets using the Stitch MCP Server tools:
|
|
32
|
+
|
|
33
|
+
1. **Namespace discovery**: Run `list_tools` to find the Stitch MCP prefix. Use this prefix (e.g., `mcp_stitch:`) for all subsequent calls.
|
|
34
|
+
|
|
35
|
+
2. **Project lookup** (if Project ID is not provided):
|
|
36
|
+
- Call `[prefix]:list_projects` with `filter: "view=owned"` to retrieve all user projects
|
|
37
|
+
- Identify the target project by title or URL pattern
|
|
38
|
+
- Extract the Project ID from the `name` field (e.g., `projects/13534454087919359824`)
|
|
39
|
+
|
|
40
|
+
3. **Screen lookup** (if Screen ID is not provided):
|
|
41
|
+
- Call `[prefix]:list_screens` with the `projectId` (just the numeric ID, not the full path)
|
|
42
|
+
- Review screen titles to identify the target screen (e.g., "Home", "Landing Page")
|
|
43
|
+
- Extract the Screen ID from the screen's `name` field
|
|
44
|
+
|
|
45
|
+
4. **Metadata fetch**:
|
|
46
|
+
- Call `[prefix]:get_screen` with both `projectId` and `screenId` (both as numeric IDs only)
|
|
47
|
+
- This returns the complete screen object including:
|
|
48
|
+
- `screenshot.downloadUrl` - Visual reference of the design
|
|
49
|
+
- `htmlCode.downloadUrl` - Full HTML/CSS source code
|
|
50
|
+
- `width`, `height`, `deviceType` - Screen dimensions and target platform
|
|
51
|
+
- Project metadata including `designTheme` with color and style information
|
|
52
|
+
|
|
53
|
+
5. **Asset download**:
|
|
54
|
+
- Use `web_fetch` or `read_url_content` to download the HTML code from `htmlCode.downloadUrl`
|
|
55
|
+
- Optionally download the screenshot from `screenshot.downloadUrl` for visual reference
|
|
56
|
+
- Parse the HTML to extract Tailwind classes, custom CSS, and component patterns
|
|
57
|
+
|
|
58
|
+
6. **Project metadata extraction**:
|
|
59
|
+
- Call `[prefix]:get_project` with the project `name` (full path: `projects/{id}`) to get:
|
|
60
|
+
- `designTheme` object with color mode, fonts, roundness, custom colors
|
|
61
|
+
- Project-level design guidelines and descriptions
|
|
62
|
+
- Device type preferences and layout principles
|
|
63
|
+
|
|
64
|
+
## Analysis & Synthesis Instructions
|
|
65
|
+
|
|
66
|
+
### 1. Extract Project Identity (JSON)
|
|
67
|
+
- Locate the Project Title
|
|
68
|
+
- Locate the specific Project ID (e.g., from the `name` field in the JSON)
|
|
69
|
+
|
|
70
|
+
### 2. Define the Atmosphere (Image/HTML)
|
|
71
|
+
Evaluate the screenshot and HTML structure to capture the overall "vibe." Use evocative adjectives to describe the mood (e.g., "Airy," "Dense," "Minimalist," "Utilitarian").
|
|
72
|
+
|
|
73
|
+
### 3. Map the Color Palette (Tailwind Config/JSON)
|
|
74
|
+
Identify the key colors in the system. For each color, provide:
|
|
75
|
+
- A descriptive, natural language name that conveys its character (e.g., "Deep Muted Teal-Navy")
|
|
76
|
+
- The specific hex code in parentheses for precision (e.g., "#294056")
|
|
77
|
+
- Its specific functional role (e.g., "Used for primary actions")
|
|
78
|
+
|
|
79
|
+
### 4. Translate Geometry & Shape (CSS/Tailwind)
|
|
80
|
+
Convert technical `border-radius` and layout values into physical descriptions:
|
|
81
|
+
- Describe `rounded-full` as "Pill-shaped"
|
|
82
|
+
- Describe `rounded-lg` as "Subtly rounded corners"
|
|
83
|
+
- Describe `rounded-none` as "Sharp, squared-off edges"
|
|
84
|
+
|
|
85
|
+
### 5. Describe Depth & Elevation
|
|
86
|
+
Explain how the UI handles layers. Describe the presence and quality of shadows (e.g., "Flat," "Whisper-soft diffused shadows," or "Heavy, high-contrast drop shadows").
|
|
87
|
+
|
|
88
|
+
## Output Guidelines
|
|
89
|
+
|
|
90
|
+
- **Language:** Use descriptive design terminology and natural language exclusively
|
|
91
|
+
- **Format:** Generate a clean Markdown file following the structure below
|
|
92
|
+
- **Precision:** Include exact hex codes for colors while using descriptive names
|
|
93
|
+
- **Context:** Explain the "why" behind design decisions, not just the "what"
|
|
94
|
+
|
|
95
|
+
## Output Format (DESIGN.md Structure)
|
|
96
|
+
|
|
97
|
+
```markdown
|
|
98
|
+
# Design System: [Project Title]
|
|
99
|
+
**Project ID:** [Insert Project ID Here]
|
|
100
|
+
|
|
101
|
+
## 1. Visual Theme & Atmosphere
|
|
102
|
+
(Description of the mood, density, and aesthetic philosophy.)
|
|
103
|
+
|
|
104
|
+
## 2. Color Palette & Roles
|
|
105
|
+
(List colors by Descriptive Name + Hex Code + Functional Role.)
|
|
106
|
+
|
|
107
|
+
## 3. Typography Rules
|
|
108
|
+
(Description of font family, weight usage for headers vs. body, and letter-spacing character.)
|
|
109
|
+
|
|
110
|
+
## 4. Component Stylings
|
|
111
|
+
* **Buttons:** (Shape description, color assignment, behavior).
|
|
112
|
+
* **Cards/Containers:** (Corner roundness description, background color, shadow depth).
|
|
113
|
+
* **Inputs/Forms:** (Stroke style, background).
|
|
114
|
+
|
|
115
|
+
## 5. Layout Principles
|
|
116
|
+
(Description of whitespace strategy, margins, and grid alignment.)
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## Usage Example
|
|
120
|
+
|
|
121
|
+
To use this skill for the Furniture Collection project:
|
|
122
|
+
|
|
123
|
+
1. **Retrieve project information:**
|
|
124
|
+
```
|
|
125
|
+
Use the Stitch MCP Server to get the Furniture Collection project
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
2. **Get the Home page screen details:**
|
|
129
|
+
```
|
|
130
|
+
Retrieve the Home page screen's code, image, and screen object information
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
3. **Reference best practices:**
|
|
134
|
+
```
|
|
135
|
+
Review the Stitch Effective Prompting Guide at:
|
|
136
|
+
https://stitch.withgoogle.com/docs/learn/prompting/
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
4. **Analyze and synthesize:**
|
|
140
|
+
- Extract all relevant design tokens from the screen
|
|
141
|
+
- Translate technical values into descriptive language
|
|
142
|
+
- Organize information according to the DESIGN.md structure
|
|
143
|
+
|
|
144
|
+
5. **Generate the file:**
|
|
145
|
+
- Create `DESIGN.md` in the project directory
|
|
146
|
+
- Follow the prescribed format exactly
|
|
147
|
+
- Ensure all color codes are accurate
|
|
148
|
+
- Use evocative, designer-friendly language
|
|
149
|
+
|
|
150
|
+
## Best Practices
|
|
151
|
+
|
|
152
|
+
- **Be Descriptive:** Avoid generic terms like "blue" or "rounded." Use "Ocean-deep Cerulean (#0077B6)" or "Gently curved edges"
|
|
153
|
+
- **Be Functional:** Always explain what each design element is used for
|
|
154
|
+
- **Be Consistent:** Use the same terminology throughout the document
|
|
155
|
+
- **Be Visual:** Help readers visualize the design through your descriptions
|
|
156
|
+
- **Be Precise:** Include exact values (hex codes, pixel values) in parentheses after natural language descriptions
|
|
157
|
+
|
|
158
|
+
## Tips for Success
|
|
159
|
+
|
|
160
|
+
1. **Start with the big picture:** Understand the overall aesthetic before diving into details
|
|
161
|
+
2. **Look for patterns:** Identify consistent spacing, sizing, and styling patterns
|
|
162
|
+
3. **Think semantically:** Name colors by their purpose, not just their appearance
|
|
163
|
+
4. **Consider hierarchy:** Document how visual weight and importance are communicated
|
|
164
|
+
5. **Reference the guide:** Use language and patterns from the Stitch Effective Prompting Guide
|
|
165
|
+
|
|
166
|
+
## Common Pitfalls to Avoid
|
|
167
|
+
|
|
168
|
+
- ❌ Using technical jargon without translation (e.g., "rounded-xl" instead of "generously rounded corners")
|
|
169
|
+
- ❌ Omitting color codes or using only descriptive names
|
|
170
|
+
- ❌ Forgetting to explain functional roles of design elements
|
|
171
|
+
- ❌ Being too vague in atmosphere descriptions
|
|
172
|
+
- ❌ Ignoring subtle design details like shadows or spacing patterns
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# Design System: Furniture Collections List
|
|
2
|
+
**Project ID:** 13534454087919359824
|
|
3
|
+
|
|
4
|
+
## 1. Visual Theme & Atmosphere
|
|
5
|
+
|
|
6
|
+
The Furniture Collections List embodies a **sophisticated, minimalist sanctuary** that marries the pristine simplicity of Scandinavian design with the refined visual language of luxury editorial presentation. The interface feels **spacious and tranquil**, prioritizing breathing room and visual clarity above all else. The design philosophy is gallery-like and photography-first, allowing each furniture piece to command attention as an individual art object.
|
|
7
|
+
|
|
8
|
+
The overall mood is **airy yet grounded**, creating an aspirational aesthetic that remains approachable and welcoming. The interface feels **utilitarian in its restraint** but elegant in its execution, with every element serving a clear purpose while maintaining visual sophistication. The atmosphere evokes the serene ambiance of a high-end furniture showroom where customers can browse thoughtfully without visual overwhelm.
|
|
9
|
+
|
|
10
|
+
**Key Characteristics:**
|
|
11
|
+
- Expansive whitespace creating generous breathing room between elements
|
|
12
|
+
- Clean, architectural grid system with structured content blocks
|
|
13
|
+
- Photography-first presentation with minimal UI interference
|
|
14
|
+
- Whisper-soft visual hierarchy that guides without shouting
|
|
15
|
+
- Refined, understated interactive elements
|
|
16
|
+
- Professional yet inviting editorial tone
|
|
17
|
+
|
|
18
|
+
## 2. Color Palette & Roles
|
|
19
|
+
|
|
20
|
+
### Primary Foundation
|
|
21
|
+
- **Warm Barely-There Cream** (#FCFAFA) – Primary background color. Creates an almost imperceptible warmth that feels more inviting than pure white, serving as the serene canvas for the entire experience.
|
|
22
|
+
- **Crisp Very Light Gray** (#F5F5F5) – Secondary surface color used for card backgrounds and content areas. Provides subtle visual separation while maintaining the airy, ethereal quality.
|
|
23
|
+
|
|
24
|
+
### Accent & Interactive
|
|
25
|
+
- **Deep Muted Teal-Navy** (#294056) – The sole vibrant accent in the palette. Used exclusively for primary call-to-action buttons (e.g., "Shop Now", "View all products"), active navigation links, selected filter states, and subtle interaction highlights. This sophisticated anchor color creates visual focus points without disrupting the serene neutral foundation.
|
|
26
|
+
|
|
27
|
+
### Typography & Text Hierarchy
|
|
28
|
+
- **Charcoal Near-Black** (#2C2C2C) – Primary text color for headlines and product names. Provides strong readable contrast while being softer and more refined than pure black.
|
|
29
|
+
- **Soft Warm Gray** (#6B6B6B) – Secondary text used for body copy, product descriptions, and supporting metadata. Creates clear typographic hierarchy without harsh contrast.
|
|
30
|
+
- **Ultra-Soft Silver Gray** (#E0E0E0) – Tertiary color for borders, dividers, and subtle structural elements. Creates separation so gentle it's almost imperceptible.
|
|
31
|
+
|
|
32
|
+
### Functional States (Reserved for system feedback)
|
|
33
|
+
- **Success Moss** (#10B981) – Stock availability, confirmation states, positive indicators
|
|
34
|
+
- **Alert Terracotta** (#EF4444) – Low stock warnings, error states, critical alerts
|
|
35
|
+
- **Informational Slate** (#64748B) – Neutral system messages, informational callouts
|
|
36
|
+
|
|
37
|
+
## 3. Typography Rules
|
|
38
|
+
|
|
39
|
+
**Primary Font Family:** Manrope
|
|
40
|
+
**Character:** Modern, geometric sans-serif with gentle humanist warmth. Slightly rounded letterforms that feel contemporary yet approachable.
|
|
41
|
+
|
|
42
|
+
### Hierarchy & Weights
|
|
43
|
+
- **Display Headlines (H1):** Semi-bold weight (600), generous letter-spacing (0.02em for elegance), 2.75-3.5rem size. Used sparingly for hero sections and major page titles.
|
|
44
|
+
- **Section Headers (H2):** Semi-bold weight (600), subtle letter-spacing (0.01em), 2-2.5rem size. Establishes clear content zones and featured collections.
|
|
45
|
+
- **Subsection Headers (H3):** Medium weight (500), normal letter-spacing, 1.5-1.75rem size. Product names and category labels.
|
|
46
|
+
- **Body Text:** Regular weight (400), relaxed line-height (1.7), 1rem size. Descriptions and supporting content prioritize comfortable readability.
|
|
47
|
+
- **Small Text/Meta:** Regular weight (400), slightly tighter line-height (1.5), 0.875rem size. Prices, availability, and metadata remain legible but visually recessive.
|
|
48
|
+
- **CTA Buttons:** Medium weight (500), subtle letter-spacing (0.01em), 1rem size. Balanced presence without visual aggression.
|
|
49
|
+
|
|
50
|
+
### Spacing Principles
|
|
51
|
+
- Headers use slightly expanded letter-spacing for refined elegance
|
|
52
|
+
- Body text maintains generous line-height (1.7) for effortless reading
|
|
53
|
+
- Consistent vertical rhythm with 2-3rem between related text blocks
|
|
54
|
+
- Large margins (4-6rem) between major sections to reinforce spaciousness
|
|
55
|
+
|
|
56
|
+
## 4. Component Stylings
|
|
57
|
+
|
|
58
|
+
### Buttons
|
|
59
|
+
- **Shape:** Subtly rounded corners (8px/0.5rem radius) – approachable and modern without appearing playful or childish
|
|
60
|
+
- **Primary CTA:** Deep Muted Teal-Navy (#294056) background with pure white text, comfortable padding (0.875rem vertical, 2rem horizontal)
|
|
61
|
+
- **Hover State:** Subtle darkening to deeper navy, smooth 250ms ease-in-out transition
|
|
62
|
+
- **Focus State:** Soft outer glow in the primary color for keyboard navigation accessibility
|
|
63
|
+
- **Secondary CTA (if needed):** Outlined style with Deep Muted Teal-Navy border, transparent background, hover fills with whisper-soft teal tint
|
|
64
|
+
|
|
65
|
+
### Cards & Product Containers
|
|
66
|
+
- **Corner Style:** Gently rounded corners (12px/0.75rem radius) creating soft, refined edges
|
|
67
|
+
- **Background:** Alternates between Warm Barely-There Cream and Crisp Very Light Gray based on layering needs
|
|
68
|
+
- **Shadow Strategy:** Flat by default. On hover, whisper-soft diffused shadow appears (`0 2px 8px rgba(0,0,0,0.06)`) creating subtle depth
|
|
69
|
+
- **Border:** Optional hairline border (1px) in Ultra-Soft Silver Gray for delicate definition when shadows aren't present
|
|
70
|
+
- **Internal Padding:** Generous 2-2.5rem creating comfortable breathing room for content
|
|
71
|
+
- **Image Treatment:** Full-bleed at the top of cards, square or 4:3 ratio, seamless edge-to-edge presentation
|
|
72
|
+
|
|
73
|
+
### Navigation
|
|
74
|
+
- **Style:** Clean horizontal layout with generous spacing (2-3rem) between menu items
|
|
75
|
+
- **Typography:** Medium weight (500), subtle uppercase, expanded letter-spacing (0.06em) for refined sophistication
|
|
76
|
+
- **Default State:** Charcoal Near-Black text
|
|
77
|
+
- **Active/Hover State:** Smooth 200ms color transition to Deep Muted Teal-Navy
|
|
78
|
+
- **Active Indicator:** Thin underline (2px) in Deep Muted Teal-Navy appearing below current section
|
|
79
|
+
- **Mobile:** Converts to elegant hamburger menu with sliding drawer
|
|
80
|
+
|
|
81
|
+
### Inputs & Forms
|
|
82
|
+
- **Stroke Style:** Refined 1px border in Soft Warm Gray
|
|
83
|
+
- **Background:** Warm Barely-There Cream with transition to Crisp Very Light Gray on focus
|
|
84
|
+
- **Corner Style:** Matching button roundness (8px/0.5rem) for visual consistency
|
|
85
|
+
- **Focus State:** Border color shifts to Deep Muted Teal-Navy with subtle outer glow
|
|
86
|
+
- **Padding:** Comfortable 0.875rem vertical, 1.25rem horizontal for touch-friendly targets
|
|
87
|
+
- **Placeholder Text:** Ultra-Soft Silver Gray, elegant and unobtrusive
|
|
88
|
+
|
|
89
|
+
### Product Cards (Specific Pattern)
|
|
90
|
+
- **Image Area:** Square (1:1) or landscape (4:3) ratio filling card width completely
|
|
91
|
+
- **Content Stack:** Product name (H3), brief descriptor, material/finish, price
|
|
92
|
+
- **Price Display:** Emphasized with semi-bold weight (600) in Charcoal Near-Black
|
|
93
|
+
- **Hover Behavior:** Gentle lift effect (translateY -4px) combined with enhanced shadow
|
|
94
|
+
- **Spacing:** Consistent 1.5rem internal padding below image
|
|
95
|
+
|
|
96
|
+
## 5. Layout Principles
|
|
97
|
+
|
|
98
|
+
### Grid & Structure
|
|
99
|
+
- **Max Content Width:** 1440px for optimal readability and visual balance on large displays
|
|
100
|
+
- **Grid System:** Responsive 12-column grid with fluid gutters (24px mobile, 32px desktop)
|
|
101
|
+
- **Product Grid:** 4 columns on large desktop, 3 on desktop, 2 on tablet, 1 on mobile
|
|
102
|
+
- **Breakpoints:**
|
|
103
|
+
- Mobile: <768px
|
|
104
|
+
- Tablet: 768-1024px
|
|
105
|
+
- Desktop: 1024-1440px
|
|
106
|
+
- Large Desktop: >1440px
|
|
107
|
+
|
|
108
|
+
### Whitespace Strategy (Critical to the Design)
|
|
109
|
+
- **Base Unit:** 8px for micro-spacing, 16px for component spacing
|
|
110
|
+
- **Vertical Rhythm:** Consistent 2rem (32px) base unit between related elements
|
|
111
|
+
- **Section Margins:** Generous 5-8rem (80-128px) between major sections creating dramatic breathing room
|
|
112
|
+
- **Edge Padding:** 1.5rem (24px) mobile, 3rem (48px) tablet/desktop for comfortable framing
|
|
113
|
+
- **Hero Sections:** Extra-generous top/bottom padding (8-12rem) for impactful presentation
|
|
114
|
+
|
|
115
|
+
### Alignment & Visual Balance
|
|
116
|
+
- **Text Alignment:** Left-aligned for body and navigation (optimal readability), centered for hero headlines and featured content
|
|
117
|
+
- **Image to Text Ratio:** Heavily weighted toward imagery (70-30 split) reinforcing photography-first philosophy
|
|
118
|
+
- **Asymmetric Balance:** Large hero images offset by compact, refined text blocks
|
|
119
|
+
- **Visual Weight Distribution:** Strategic use of whitespace to draw eyes to hero products and primary CTAs
|
|
120
|
+
- **Reading Flow:** Clear top-to-bottom, left-to-right pattern with intentional focal points
|
|
121
|
+
|
|
122
|
+
### Responsive Behavior & Touch
|
|
123
|
+
- **Mobile-First Foundation:** Core experience designed and perfected for smallest screens first
|
|
124
|
+
- **Progressive Enhancement:** Additional columns, imagery, and details added gracefully at larger breakpoints
|
|
125
|
+
- **Touch Targets:** Minimum 44x44px for all interactive elements (WCAG AAA compliant)
|
|
126
|
+
- **Image Optimization:** Responsive images with appropriate resolutions for each breakpoint, lazy-loading for performance
|
|
127
|
+
- **Collapsing Strategy:** Navigation collapses to hamburger, grid reduces columns, padding scales proportionally
|
|
128
|
+
|
|
129
|
+
## 6. Design System Notes for Stitch Generation
|
|
130
|
+
|
|
131
|
+
When creating new screens for this project using Stitch, reference these specific instructions:
|
|
132
|
+
|
|
133
|
+
### Language to Use
|
|
134
|
+
- **Atmosphere:** "Sophisticated minimalist sanctuary with gallery-like spaciousness"
|
|
135
|
+
- **Button Shapes:** "Subtly rounded corners" (not "rounded-md" or "8px")
|
|
136
|
+
- **Shadows:** "Whisper-soft diffused shadows on hover" (not "shadow-sm")
|
|
137
|
+
- **Spacing:** "Generous breathing room" and "expansive whitespace"
|
|
138
|
+
|
|
139
|
+
### Color References
|
|
140
|
+
Always use the descriptive names with hex codes:
|
|
141
|
+
- Primary CTA: "Deep Muted Teal-Navy (#294056)"
|
|
142
|
+
- Backgrounds: "Warm Barely-There Cream (#FCFAFA)" or "Crisp Very Light Gray (#F5F5F5)"
|
|
143
|
+
- Text: "Charcoal Near-Black (#2C2C2C)" or "Soft Warm Gray (#6B6B6B)"
|
|
144
|
+
|
|
145
|
+
### Component Prompts
|
|
146
|
+
- "Create a product card with gently rounded corners, full-bleed square product image, and whisper-soft shadow on hover"
|
|
147
|
+
- "Design a primary call-to-action button in Deep Muted Teal-Navy (#294056) with subtle rounded corners and comfortable padding"
|
|
148
|
+
- "Add a navigation bar with generous spacing between items, using medium-weight Manrope with subtle uppercase and expanded letter-spacing"
|
|
149
|
+
|
|
150
|
+
### Incremental Iteration
|
|
151
|
+
When refining existing screens:
|
|
152
|
+
1. Focus on ONE component at a time (e.g., "Update the product grid cards")
|
|
153
|
+
2. Be specific about what to change (e.g., "Increase the internal padding of product cards from 1.5rem to 2rem")
|
|
154
|
+
3. Reference this design system language consistently
|