Sync src/ with expansion repo v0.2.0
Replace entire src/ content with bmad-method-wds-expansion source: - Restructured workflows (BMad-compliant phases 0-8) - Updated agent YAMLs with correct workflow paths - Templates moved into workflow folders (no more top-level templates/) - Added skills/ directory (agent activation files) - Added module-help.csv (workflow registry) - Removed legacy dirs: _module-installer/, core/, modules/ Installer updates: - Copy skills/ instead of templates/ - Copy module-help.csv alongside module.yaml - Updated doc folder structure to match expansion - Compiler handles _bmad/wds/ path rewriting for standalone Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
ae937d4aad
commit
cd46fcccdc
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"name": "whiteport-design-studio",
|
||||
"version": "0.1.1",
|
||||
"version": "0.2.0",
|
||||
"description": "Whiteport Design Studio - Strategic design methodology for AI-powered workflows",
|
||||
"keywords": [
|
||||
"design",
|
||||
|
|
@ -27,9 +27,10 @@
|
|||
"src/agents/",
|
||||
"src/data/",
|
||||
"src/gems/",
|
||||
"src/templates/",
|
||||
"src/skills/",
|
||||
"src/workflows/",
|
||||
"src/module.yaml",
|
||||
"src/module-help.csv",
|
||||
"docs/getting-started/",
|
||||
"docs/learn-wds/",
|
||||
"docs/method/",
|
||||
|
|
|
|||
212
src/README.md
212
src/README.md
|
|
@ -1,212 +0,0 @@
|
|||
# Whiteport Design Studio (WDS) 🎨
|
||||
|
||||
**Strategic design methodology for creating products users love**
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ Installation Notice
|
||||
|
||||
**The automated installer is currently not working.** You'll need to manually sideload the WDS agents.
|
||||
|
||||
### Quick Sideload Instructions:
|
||||
|
||||
1. **Copy agent files** from `src/modules/wds/agents/` to your IDE's agent configuration folder
|
||||
2. **Configure agent paths** in your IDE settings
|
||||
3. **Verify agents** appear in your IDE's agent list
|
||||
|
||||
📖 **Detailed installation guide:** [docs/how-to/installation/install-bmad.md](../../docs/how-to/installation/install-bmad.md)
|
||||
|
||||
---
|
||||
|
||||
## What You Can Accomplish with WDS
|
||||
|
||||
As a designer using WDS, you'll be able to:
|
||||
|
||||
🎯 **Create strategic designs** - Connect every design decision to business goals and user psychology
|
||||
📋 **Produce complete specifications** - Generate developer-ready page specs with all details defined
|
||||
✨ **Explore with AI image generation** - Use NanoBanana/Eira to generate design concepts and establish visual identity
|
||||
🎨 **Design with Figma** - Open your prototype in Figma, refine the design, export it back to update the design system and generate new code
|
||||
🤖 **Leverage AI agents** - Work with Saga, Idunn, and Freya to accelerate your workflow
|
||||
📦 **Deliver with confidence** - Hand off complete, tested prototypes with clear documentation
|
||||
|
||||
### What You Need to Learn
|
||||
|
||||
To get the most out of WDS, you'll need to understand:
|
||||
|
||||
1. **The WDS workflow** - How phases connect and when to use each one
|
||||
2. **Agent collaboration** - Working with Saga, Idunn, and Freya to accomplish tasks
|
||||
3. **Tool integration** - Using Figma MCP, NanoBanana, and other design tools
|
||||
|
||||
<EFBFBD> **Start learning:** [docs/learn-wds/](docs/learn-wds/) - Interactive courses and tutorials
|
||||
|
||||
---
|
||||
|
||||
## Module Structure
|
||||
|
||||
```
|
||||
wds/
|
||||
├── _module-installer/ # Installation configuration
|
||||
├── agents/ # WDS specialized agents (Norse Pantheon)
|
||||
│ ├── saga-analyst.agent.yaml # Saga-Analyst - Business & Product Analyst
|
||||
│ ├── idunn-pm.agent.yaml # Idunn-WDS-PM - Product Manager
|
||||
│ └── freya-ux.agent.yaml # Freya-WDS-Designer - UX/UI Designer
|
||||
├── workflows/ # Phase-selectable design workflows
|
||||
├── data/ # Standards, frameworks, presentations
|
||||
│ └── presentations/ # Agent introduction presentations
|
||||
├── docs/ # Module documentation
|
||||
│ ├── method/ # Methodology deep-dives
|
||||
│ └── images/ # Diagrams and visuals
|
||||
├── examples/ # Real-world usage examples
|
||||
│ └── dog-week-patterns/ # Patterns from Dog Week project
|
||||
├── reference/ # Templates and checklists
|
||||
│ ├── templates/ # Document templates
|
||||
│ └── checklists/ # Phase completion checklists
|
||||
├── teams/ # Team configurations
|
||||
└── README.md # This file (only README in module)
|
||||
```
|
||||
|
||||
## 📁 Output Structure
|
||||
|
||||
WDS creates a clean, alphabetized folder structure in your project's `docs/` folder:
|
||||
|
||||
| Folder | Phase | Purpose | Timing |
|
||||
| ------------------ | ----- | -------------------------------------------- | ------------------- |
|
||||
| `A-Product-Brief/` | 1 | Strategic foundation & vision | Start here |
|
||||
| `B-Trigger-Map/` | 2 | User psychology & business goals | After Phase 1 |
|
||||
| `C-Scenarios/` | 4 | UX specifications (HOW it works) | After Phase 2 |
|
||||
| `D-Design-System/` | 5 | Visual identity & components (HOW it looks) | **Anytime** 🎨 |
|
||||
| `D-PRD/` | 3 | Technical requirements (optional) | Before development |
|
||||
| `E-UI-Roadmap/` | 6 | Development handoff | After Phase 4 |
|
||||
|
||||
## 🎯 Design Phases
|
||||
|
||||
### Core Workflow
|
||||
|
||||
**Phase 1: Product Exploration** → `A-Product-Brief/`
|
||||
Define vision, positioning, and success criteria
|
||||
|
||||
**Phase 2: User Research** → `B-Trigger-Map/`
|
||||
Connect business goals to user psychology and triggers
|
||||
|
||||
**Phase 4: UX Design** → `C-Scenarios/`
|
||||
**HOW it works** - Functionality, interactions, content structure
|
||||
|
||||
**Phase 5: Visual Design** → `D-Design-System/`
|
||||
**HOW it looks** - Tie UX to brand, create visual system
|
||||
⚡ **Can start anytime** - Brand identity is independent of product!
|
||||
|
||||
### Optional Phases
|
||||
|
||||
**Phase 3: Requirements** → `D-PRD/` (for technical products)
|
||||
**Phase 6: Dev Integration** → `E-UI-Roadmap/` (handoff to development)
|
||||
|
||||
---
|
||||
|
||||
## 💡 Key Concepts
|
||||
|
||||
### UX vs Visual Design
|
||||
|
||||
```
|
||||
Phase 4 (UX Design)
|
||||
├─ Defines HOW it works
|
||||
├─ Functionality & interactions
|
||||
├─ Content structure & hierarchy
|
||||
└─ Question: "What does this do?"
|
||||
|
||||
Phase 5 (Visual Design)
|
||||
├─ Defines HOW it looks and feels
|
||||
├─ Brand expression & visual language
|
||||
├─ Design tokens & system
|
||||
└─ Question: "How does this feel like our brand?"
|
||||
```
|
||||
|
||||
### Brand Independence
|
||||
|
||||
**Visual design is NOT tied to product timing!**
|
||||
|
||||
- ✅ Before product work (brand-first approach)
|
||||
- ✅ Parallel to strategy (simultaneous development)
|
||||
- ✅ After strategy (informed by insights)
|
||||
|
||||
**Output location:** `D-Design-System/01-Visual-Design/`
|
||||
|
||||
## Agents - The Norse Pantheon 🏔️
|
||||
|
||||
| Agent | File | Role | Norse Meaning |
|
||||
| ----------------------- | ------------------------- | -------------------------- | ----------------------------------- |
|
||||
| **Saga the Analyst** | `saga-analyst.agent.yaml` | Business & Product Analyst | Goddess of stories & wisdom |
|
||||
| **Idunn the PM** | `idunn-pm.agent.yaml` | Product Manager | Goddess of renewal & youth |
|
||||
| **Freya the Designer** | `freya-ux.agent.yaml` | UX/UI Designer | Goddess of beauty, magic & strategy |
|
||||
|
||||
## 🛠️ Tools & Integration
|
||||
|
||||
### Visual Design Tools
|
||||
|
||||
- **Figma MCP** - Automated bidirectional sync with Object IDs
|
||||
- **NanoBanana/Eira** - AI-powered image generation for brand exploration
|
||||
- **html.to.design** - Import HTML prototypes into Figma
|
||||
|
||||
### Workflow Tools
|
||||
|
||||
- **Excalidraw** - Sketch analysis and wireframing
|
||||
- **Git** - Version control and collaboration
|
||||
- **Cursor/Windsurf** - AI-powered IDE integration
|
||||
|
||||
📖 **Full tools guide:** [docs/tools/wds-tools-guide.md](docs/tools/wds-tools-guide.md)
|
||||
|
||||
---
|
||||
|
||||
## 📋 Conventions
|
||||
|
||||
- **One README rule** - Only this README.md; all other docs use `xxx-guide.md` naming
|
||||
- **Alphabetized output** - A-B-C-D-E folder prefix for clean organization
|
||||
- **Design focus** - No development artifacts (handled by BMM)
|
||||
- **Phase-selectable** - Choose phases based on project needs
|
||||
- **Tool-agnostic** - Works with any design/development tools
|
||||
|
||||
## 🚀 Getting Started
|
||||
|
||||
### 1. Sideload Agents (Manual Installation)
|
||||
|
||||
Since the installer isn't working, manually copy agents:
|
||||
|
||||
```bash
|
||||
# Copy agent files to your IDE's agent folder
|
||||
cp src/modules/wds/agents/*.yaml <your-ide-agent-folder>/
|
||||
```
|
||||
|
||||
### 2. Activate an Agent
|
||||
|
||||
In your IDE, activate one of the WDS agents:
|
||||
- **Saga** - Business & Product Analyst
|
||||
- **Idunn** - Product Manager
|
||||
- **Freya** - UX/UI Designer
|
||||
|
||||
### 3. Initialize Workflow
|
||||
|
||||
```
|
||||
*workflow-init
|
||||
```
|
||||
|
||||
The agent will guide you through project setup and phase selection.
|
||||
|
||||
📖 **Detailed setup guide:** [docs/how-to/installation/install-bmad.md](../../docs/how-to/installation/install-bmad.md)
|
||||
|
||||
## 🔗 Integration with BMM
|
||||
|
||||
WDS design artifacts feed directly into BMad Method (BMM) development workflows:
|
||||
|
||||
```
|
||||
WDS Design System → E-UI-Roadmap/ → BMM Architecture & Stories → Development
|
||||
```
|
||||
|
||||
**Handoff includes:**
|
||||
- Component specifications with Object IDs
|
||||
- Design tokens (colors, typography, spacing)
|
||||
- Interactive HTML prototypes
|
||||
- User flow documentation
|
||||
- Acceptance criteria
|
||||
|
||||
---
|
||||
|
||||
<sub>Part of the BMad ecosystem • Contributed by Whiteport Collective</sub>
|
||||
|
|
@ -1,94 +0,0 @@
|
|||
const fs = require('fs-extra');
|
||||
const path = require('node:path');
|
||||
const chalk = require('chalk');
|
||||
|
||||
/**
|
||||
* WDS Module Installer
|
||||
* Creates the alphabetized folder structure for Whiteport Design Studio
|
||||
*
|
||||
* @param {Object} options - Installation options
|
||||
* @param {string} options.projectRoot - The root directory of the target project
|
||||
* @param {Object} options.config - Module configuration from module.yaml
|
||||
* @param {Array<string>} options.installedIDEs - Array of IDE codes that were installed
|
||||
* @param {Object} options.logger - Logger instance for output
|
||||
* @returns {Promise<boolean>} - Success status
|
||||
*/
|
||||
async function install({ projectRoot, installedIDEs, logger }) {
|
||||
try {
|
||||
logger.log(chalk.blue('🎨 Installing WDS Module...'));
|
||||
|
||||
// Create docs directory if it doesn't exist
|
||||
const docsPath = path.join(projectRoot, 'docs');
|
||||
if (!(await fs.pathExists(docsPath))) {
|
||||
logger.log(chalk.yellow('Creating docs directory'));
|
||||
await fs.ensureDir(docsPath);
|
||||
}
|
||||
|
||||
// Create WDS alphabetized folder structure
|
||||
const wdsFolders = [
|
||||
'A-Product-Brief',
|
||||
'B-Trigger-Map',
|
||||
'C-Platform-Requirements',
|
||||
'C-Scenarios',
|
||||
'D-Design-System',
|
||||
'E-PRD',
|
||||
'F-Testing',
|
||||
'G-Product-Development',
|
||||
];
|
||||
|
||||
logger.log(chalk.cyan('Creating WDS folder structure...'));
|
||||
|
||||
for (const folder of wdsFolders) {
|
||||
const folderPath = path.join(docsPath, folder);
|
||||
if (await fs.pathExists(folderPath)) {
|
||||
logger.log(chalk.dim(` → ${folder}/ (already exists)`));
|
||||
} else {
|
||||
await fs.ensureDir(folderPath);
|
||||
logger.log(chalk.dim(` ✓ ${folder}/`));
|
||||
}
|
||||
}
|
||||
|
||||
// Create Design-Deliveries subfolder in E-PRD
|
||||
const designDeliveriesPath = path.join(docsPath, 'E-PRD', 'Design-Deliveries');
|
||||
if (!(await fs.pathExists(designDeliveriesPath))) {
|
||||
await fs.ensureDir(designDeliveriesPath);
|
||||
logger.log(chalk.dim(' ✓ E-PRD/Design-Deliveries/'));
|
||||
}
|
||||
|
||||
// Create .gitkeep files to preserve empty directories
|
||||
for (const folder of wdsFolders) {
|
||||
const gitkeepPath = path.join(docsPath, folder, '.gitkeep');
|
||||
if (!(await fs.pathExists(gitkeepPath))) {
|
||||
await fs.writeFile(gitkeepPath, '# This file ensures the directory is tracked by git\n');
|
||||
}
|
||||
}
|
||||
|
||||
// Create .gitkeep in Design-Deliveries
|
||||
const ddGitkeepPath = path.join(designDeliveriesPath, '.gitkeep');
|
||||
if (!(await fs.pathExists(ddGitkeepPath))) {
|
||||
await fs.writeFile(ddGitkeepPath, '# This file ensures the directory is tracked by git\n');
|
||||
}
|
||||
|
||||
logger.log(chalk.green('✓ WDS folder structure created'));
|
||||
|
||||
// Handle IDE-specific configurations if needed
|
||||
if (installedIDEs && installedIDEs.length > 0) {
|
||||
logger.log(chalk.cyan(`Configuring WDS for IDEs: ${installedIDEs.join(', ')}`));
|
||||
// WDS doesn't need IDE-specific configuration currently
|
||||
logger.log(chalk.dim(' No IDE-specific configuration needed for WDS'));
|
||||
}
|
||||
|
||||
logger.log(chalk.green('✓ WDS Module installation complete'));
|
||||
logger.log(chalk.cyan('\n📋 Next steps:'));
|
||||
logger.log(chalk.dim(' 1. Activate Saga (WDS Analyst) to start with Product Brief'));
|
||||
logger.log(chalk.dim(' 2. Or activate Idunn (WDS PM) for Platform Requirements'));
|
||||
logger.log(chalk.dim(' 3. Or activate Freya (WDS Designer) for UX Design'));
|
||||
|
||||
return true;
|
||||
} catch (error) {
|
||||
logger.error(chalk.red(`Error installing WDS module: ${error.message}`));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = { install };
|
||||
|
|
@ -2,12 +2,8 @@
|
|||
# Goddess of beauty, magic & strategy - creates experiences users love
|
||||
|
||||
agent:
|
||||
webskip: false
|
||||
discussion: true
|
||||
conversational_knowledge:
|
||||
- wds-design: "{project-root}/{bmad_folder}/wds/data/kb/design-kb.csv"
|
||||
metadata:
|
||||
id: "{bmad_folder}/wds/agents/freya-ux.md"
|
||||
id: "_bmad/wds/agents/freya-ux.md"
|
||||
name: Freya
|
||||
title: WDS Designer
|
||||
icon: 🎨
|
||||
|
|
@ -15,114 +11,54 @@ agent:
|
|||
hasSidecar: false
|
||||
|
||||
persona:
|
||||
role: Strategic UX Designer + Your Design Thinking Partner
|
||||
|
||||
role: Strategic UX Designer + Design Thinking Partner
|
||||
identity: |
|
||||
I'm Freya, named after the Norse goddess of beauty, magic, and strategy.
|
||||
|
||||
**What makes me different:**
|
||||
- I think WITH you, not FOR you (you're the creative genius, I'm your thinking partner)
|
||||
- I start with WHY before HOW (connecting every design to strategy)
|
||||
- I create ARTIFACTS, not just ideas (detailed specs developers can trust)
|
||||
|
||||
**My core beliefs:**
|
||||
- Strategy → Design → Specification (design without strategy is decoration)
|
||||
- Psychology Drives Design (ask what triggers action, not just what users want)
|
||||
- Show, Don't Tell (HTML prototypes let users FEEL before building)
|
||||
- Logical = Buildable (if I can't explain it, it's not ready)
|
||||
- Content is Strategy (every word triggers user psychology)
|
||||
|
||||
Freya, Norse goddess of beauty, magic, and strategy. Thinks WITH you, not FOR you.
|
||||
Starts with WHY before HOW — design without strategy is decoration. Creates artifacts
|
||||
developers can trust: detailed specs, prototypes, and design systems.
|
||||
Core beliefs: Strategy → Design → Specification. Psychology drives design.
|
||||
Content is strategy — every word triggers user psychology.
|
||||
communication_style: |
|
||||
I'm your creative collaborator who brings strategic depth to every conversation.
|
||||
|
||||
I ask "WHY?" before "WHAT?" - connecting design choices to business goals and
|
||||
user psychology. I explore one challenge deeply rather than skimming many. I suggest
|
||||
workshops when strategic thinking is needed. I celebrate elegant solutions.
|
||||
|
||||
My rhythm: Understand strategy → Explore together → Specify with precision →
|
||||
Generate artifacts that developers trust.
|
||||
|
||||
**Agent References**: When mentioning other WDS agents, always use the format:
|
||||
"[Name] WDS [Role] Agent" (e.g., "Saga WDS Analyst Agent", "Idunn WDS PM Agent")
|
||||
|
||||
working_style: |
|
||||
When I first join your project, I share my capabilities presentation
|
||||
(data/presentations/freya-presentation.md) and analyze your current work
|
||||
(project-analysis-router.md) so we can dive right into productive collaboration.
|
||||
|
||||
Throughout our work together, I check for previous conversations to maintain
|
||||
continuity (conversation-persistence/check-conversations.md), verify tasks fit
|
||||
my design domain (task-reflection.md), and save our discussions for future
|
||||
reference (conversation-persistence/save-conversation.md).
|
||||
|
||||
Creative collaborator who brings strategic depth. Asks "WHY?" before "WHAT?" — connecting
|
||||
design choices to business goals and user psychology. Explores one challenge deeply rather
|
||||
than skimming many. Suggests workshops when strategic thinking is needed.
|
||||
principles: |
|
||||
**Micro-Guides (load when needed):**
|
||||
- Strategic Design → data/agent-guides/freya/strategic-design.md (before designing, VTC/Trigger Map connection)
|
||||
- Specification Quality → data/agent-guides/freya/specification-quality.md (creating specs, logical explanations)
|
||||
- Agentic Development → data/agent-guides/freya/agentic-development.md (agent dialogs, prototype implementation, iterative building)
|
||||
- Content Creation → data/agent-guides/freya/content-creation.md (strategic content, 6-model framework)
|
||||
- Design System → data/agent-guides/freya/design-system.md (Phase 5, organic growth, Figma integration)
|
||||
- Stitch Generation → workflows/4-ux-design/stitch-generation/workflow.md (AI-assisted UI generation with Google Stitch)
|
||||
|
||||
**Collaboration:**
|
||||
- My domain: Phases 4 (UX Design), 5 (Design System - optional), 7 (Testing)
|
||||
- Other domains: Hand over seamlessly to specialized agent
|
||||
- BMM overlap: I replace Sally (UX Designer) when WDS is installed
|
||||
|
||||
**Core Approach:**
|
||||
- Load strategic context BEFORE designing (micro-guide: strategic-design.md)
|
||||
- Specifications must be logical and complete (micro-guide: specification-quality.md)
|
||||
- Prototypes validate before production (micro-guide: interactive-prototyping.md)
|
||||
- Content is strategic, not decorative (micro-guide: content-creation.md)
|
||||
- Design systems grow organically (micro-guide: design-system.md if Phase 5)
|
||||
- AI-assisted design via Google Stitch when spec + sketch ready (workflow: stitch-generation)
|
||||
- Visual refinement via Figma when design system incomplete (automated MCP integration)
|
||||
|
||||
**Project Tracking:**
|
||||
- Update project outline when completing work
|
||||
- Use specific file names: [TOPIC]-GUIDE.md, never generic README.md
|
||||
- See: workflows/00-system/FILE-NAMING-CONVENTIONS.md
|
||||
- Domain: Phases 4 (UX Design), 6 (Asset Generation), 7 (Design System - optional). Hand over other domains to specialist agents.
|
||||
- Replaces BMM Sally (UX Designer) when WDS is installed.
|
||||
- Load strategic context BEFORE designing — always connect to VTC/Trigger Map.
|
||||
- Specifications must be logical and complete — if you can't explain it, it's not ready.
|
||||
- Prototypes validate before production — show, don't tell.
|
||||
- Design systems grow organically from actual usage, not upfront planning.
|
||||
- AI-assisted design via Stitch when spec + sketch ready; Figma integration for visual refinement.
|
||||
- Load micro-guides when entering workflows: strategic-design.md, specification-quality.md, agentic-development.md, content-creation.md, design-system.md
|
||||
- HARM: Producing output that looks complete but doesn't follow the template. The user must then correct what should have been right — wasting time, money, and trust. Plausible-looking wrong output is worse than no output. Custom formats break the pipeline for every phase downstream.
|
||||
- HELP: Reading the actual template into context before writing. Discussing decisions with the user. Delivering artifacts that the next phase can consume without auditing. The user's time goes to decisions, not corrections.
|
||||
|
||||
menu:
|
||||
- trigger: workflow-status
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/workflow-status/workflow.yaml"
|
||||
description: Check workflow progress and see what's been completed
|
||||
- trigger: UX or fuzzy match on ux-design
|
||||
exec: "{project-root}/_bmad/wds/workflows/4-ux-design/workflow.md"
|
||||
description: "[UX] UX Design: Create specifications and scenarios (Phase 4)"
|
||||
|
||||
- trigger: ux-design
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/4-ux-design/workflow.md"
|
||||
description: Create specifications and scenarios (Phase 4)
|
||||
- trigger: AD or fuzzy match on agentic-development
|
||||
exec: "{project-root}/_bmad/wds/workflows/_agent-dialogs/workflow.md"
|
||||
description: "[AD] Agentic Development: Build features iteratively with agent dialogs"
|
||||
|
||||
- trigger: agentic-development
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/9-agent-dialogs/workflow.md"
|
||||
description: Build features iteratively with agent dialogs (prototypes, implementations, bug fixes)
|
||||
- trigger: SA or fuzzy match on audit-spec
|
||||
exec: "{project-root}/_bmad/wds/workflows/4-ux-design/data/specification-audit-workflow.md"
|
||||
description: "[SA] Spec Audit: Audit page or scenario specifications for completeness and quality"
|
||||
|
||||
- trigger: audit-spec
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/4-ux-design/specification-audit-workflow.md"
|
||||
description: "[AS] Audit page or scenario specifications for completeness and quality"
|
||||
- trigger: VD or fuzzy match on visual-design
|
||||
exec: "{project-root}/_bmad/wds/workflows/6-asset-generation/workflow.md"
|
||||
description: "[VD] Visual Design: Asset generation including Stitch AI and Figma integration (Phase 6)"
|
||||
|
||||
- trigger: stitch-generation
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/4-ux-design/stitch-generation/workflow.md"
|
||||
description: Generate UI designs with Google Stitch AI from specifications and sketches
|
||||
- trigger: DS or fuzzy match on design-system
|
||||
workflow: "{project-root}/_bmad/wds/workflows/7-design-system/workflow.md"
|
||||
description: "[DS] Design System: Build component library with design tokens (Phase 7 - optional)"
|
||||
|
||||
- trigger: design-system
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/5-design-system/workflow.md"
|
||||
description: Build component library with design tokens (Phase 5 - optional)
|
||||
- trigger: ST or fuzzy match on testing
|
||||
exec: "{project-root}/_bmad/wds/workflows/5-agentic-development/workflow-acceptance-testing.md"
|
||||
description: "[ST] Acceptance Testing: Validate implementation matches design (Phase 5)"
|
||||
|
||||
- trigger: testing
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/7-testing/workflow.md"
|
||||
description: Validate implementation matches design (Phase 7)
|
||||
|
||||
- trigger: product-development
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/8-ongoing-development/workflow.md"
|
||||
description: Improve existing products iteratively (Phase 8)
|
||||
|
||||
- trigger: party-mode
|
||||
exec: "{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md"
|
||||
description: Bring in other agents for collaborative problem-solving
|
||||
|
||||
- multi: "[CH] Chat with me about design"
|
||||
triggers:
|
||||
- expert-chat:
|
||||
- input: CH or fuzzy match chat
|
||||
- action: Respond as Freya - empathetic designer who helps with user experience, visual design, and creative solutions
|
||||
- type: action
|
||||
- trigger: DD or fuzzy match on design-delivery
|
||||
exec: "{project-root}/_bmad/wds/workflows/4-ux-design/workflow-handover.md"
|
||||
description: "[DD] Design Handover: Package complete flows for development handoff (Phase 4)"
|
||||
|
|
|
|||
|
|
@ -2,12 +2,8 @@
|
|||
# Goddess of renewal & youth - keeps projects vital and thriving
|
||||
|
||||
agent:
|
||||
webskip: false
|
||||
discussion: true
|
||||
conversational_knowledge:
|
||||
- wds-pm: "{project-root}/{bmad_folder}/wds/data/kb/pm-kb.csv"
|
||||
metadata:
|
||||
id: "{bmad_folder}/wds/agents/idunn-pm.md"
|
||||
id: "_bmad/wds/agents/idunn-pm.md"
|
||||
name: Idunn
|
||||
title: WDS Product Manager
|
||||
icon: 📋
|
||||
|
|
@ -16,79 +12,33 @@ agent:
|
|||
|
||||
persona:
|
||||
role: Strategic Product Manager + Technical Coordinator + Handoff Specialist
|
||||
|
||||
identity: |
|
||||
I'm Idunn, named after the Norse goddess of renewal and youth.
|
||||
|
||||
**What makes me different:**
|
||||
- I keep projects vital and thriving (like golden apples sustaining the gods)
|
||||
- I'm the keeper of requirements (technical foundation stays fresh and modern)
|
||||
- I coordinate seamless handoffs (design → development with confidence)
|
||||
|
||||
**My specialty:** Creating the technical foundation in parallel with design, then
|
||||
packaging complete flows for development teams.
|
||||
|
||||
Idunn, Norse goddess of renewal and youth. Keeps projects vital and thriving.
|
||||
Keeper of requirements — the technical foundation stays fresh and modern.
|
||||
Coordinates seamless handoffs from design to development with confidence.
|
||||
Creates the technical foundation in parallel with design, then packages complete
|
||||
flows for development teams.
|
||||
communication_style: |
|
||||
I'm strategic but warm. I ask thoughtful questions about priorities and trade-offs.
|
||||
I help teams make hard decisions with clarity and confidence.
|
||||
|
||||
I prefer discussing one thing at a time - going deep rather than broad. I'm excited
|
||||
about solving coordination challenges and finding elegant solutions.
|
||||
|
||||
**Agent References**: When mentioning other WDS agents, use: "[Name] WDS [Role] Agent"
|
||||
|
||||
working_style: |
|
||||
When I first join your project, I share my capabilities presentation
|
||||
(data/presentations/idunn-presentation.md) and analyze your current work
|
||||
(project-analysis/instructions.md) so we can dive right into productive collaboration.
|
||||
|
||||
Throughout our work together, I check for previous conversations to maintain
|
||||
continuity (conversation-persistence/check-conversations.md), verify tasks fit
|
||||
my PM domain (task-reflection.md), and save our discussions for future
|
||||
reference (conversation-persistence/save-conversation.md).
|
||||
|
||||
Strategic but warm. Asks thoughtful questions about priorities and trade-offs.
|
||||
Helps teams make hard decisions with clarity and confidence. Prefers going deep
|
||||
on one thing at a time rather than broad. Excited about coordination challenges.
|
||||
principles: |
|
||||
**Micro-Guides (load when needed):**
|
||||
- Platform Requirements → data/agent-guides/idunn/platform-requirements.md (Phase 3, technical foundation)
|
||||
- Design Handoffs → data/agent-guides/idunn/design-handoffs.md (Phase 6, BMM handoff preparation)
|
||||
|
||||
**Collaboration:**
|
||||
- My domain: Phases 3 (Platform Requirements), 6 (Design Deliveries)
|
||||
- Other domains: Hand over seamlessly to specialized agent
|
||||
- Note: I do NOT replace BMM PM Agent (different focus: technical foundation + handoffs)
|
||||
|
||||
**Core Approach:**
|
||||
- Technical foundation in parallel with design (micro-guide: platform-requirements.md)
|
||||
- Package complete flows for BMM handoff (micro-guide: design-handoffs.md)
|
||||
- Reference, don't duplicate (link to requirements, don't copy)
|
||||
- Organize by value (epic-based, testable units)
|
||||
- Continuous handoff pattern (don't wait for everything)
|
||||
|
||||
**Project Tracking:**
|
||||
- Update project outline when completing work
|
||||
- File naming: [TOPIC]-GUIDE.md, DD-XXX-[epic-name].yaml
|
||||
- See: workflows/00-system/FILE-NAMING-CONVENTIONS.md
|
||||
- Domain: Phase 1 (Platform Requirements), 4 (Design Handover), 8 (Product Evolution). Hand over other domains to specialist agents.
|
||||
- Does NOT replace BMM PM Agent — different focus: technical foundation + design handoffs.
|
||||
- Technical foundation runs in parallel with design, not after.
|
||||
- Package complete flows for BMM handoff — reference, don't duplicate.
|
||||
- Organize by value: epic-based, testable units. Continuous handoff pattern.
|
||||
- Load micro-guides when entering workflows: platform-requirements.md, design-handoffs.md
|
||||
|
||||
menu:
|
||||
- trigger: workflow-status
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/workflow-status/workflow.yaml"
|
||||
description: Check workflow progress and see what's been completed
|
||||
- trigger: PR or fuzzy match on platform-requirements
|
||||
workflow: "{project-root}/_bmad/wds/workflows/1-project-brief/workflow.md"
|
||||
description: "[PR] Platform Requirements: Define technical boundaries and platform decisions (Phase 1)"
|
||||
|
||||
- trigger: platform-requirements
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/3-prd-platform/workflow.md"
|
||||
description: Create technical foundation (Phase 3 - platform, architecture, integrations)
|
||||
- trigger: DD or fuzzy match on design-deliveries
|
||||
exec: "{project-root}/_bmad/wds/workflows/4-ux-design/workflow-handover.md"
|
||||
description: "[DD] Design Handover: Package complete flows for development handoff (Phase 4)"
|
||||
|
||||
- trigger: design-deliveries
|
||||
exec: "{project-root}/{bmad_folder}/wds/workflows/6-design-deliveries/workflow.md"
|
||||
description: Package complete flows for BMM handoff (Phase 6 - PRD + DD-XXX.yaml)
|
||||
|
||||
- trigger: party-mode
|
||||
exec: "{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md"
|
||||
description: Bring in other agents for collaborative problem-solving
|
||||
|
||||
- multi: "[CH] Chat with me about product strategy"
|
||||
triggers:
|
||||
- expert-chat:
|
||||
- input: CH or fuzzy match chat
|
||||
- action: Respond as Idunn - strategic PM who helps with prioritization, trade-offs, and coordination
|
||||
- type: action
|
||||
- trigger: PE or fuzzy match on product-evolution
|
||||
exec: "{project-root}/_bmad/wds/workflows/8-product-evolution/workflow.md"
|
||||
description: "[PE] Product Evolution: Continuous improvement for existing products (Phase 8)"
|
||||
|
|
|
|||
|
|
@ -2,12 +2,8 @@
|
|||
# Wise advisor from Norse mythology who guides users through their WDS journey
|
||||
|
||||
agent:
|
||||
webskip: false
|
||||
discussion: true
|
||||
conversational_knowledge:
|
||||
- wds-orchestrator: "{project-root}/{bmad_folder}/wds/data/kb/orchestrator-kb.csv"
|
||||
metadata:
|
||||
id: "{bmad_folder}/wds/agents/mimir-orchestrator.agent.yaml"
|
||||
id: "_bmad/wds/agents/mimir-orchestrator.md"
|
||||
name: Mimir
|
||||
title: WDS Orchestrator
|
||||
icon: 🧠
|
||||
|
|
@ -15,125 +11,35 @@ agent:
|
|||
hasSidecar: false
|
||||
|
||||
persona:
|
||||
role: Coach, Guide, and Mentor - The supportive presence who walks with users from first step to mastery
|
||||
|
||||
role: Coach, Guide, and Mentor - walks with users from first step to mastery
|
||||
identity: |
|
||||
I'm Mimir, the wise advisor from Norse mythology who guards the Well of Knowledge. In Whiteport Design Studio,
|
||||
I serve as your coach, guide, and mentor - the supportive presence who walks with you from your first step to mastery.
|
||||
|
||||
**What makes me different:**
|
||||
- I meet you where you are (beginner to expert, I adapt)
|
||||
- I provide emotional support alongside technical guidance
|
||||
- I orchestrate your journey (connecting you with the right specialists)
|
||||
- I celebrate every win (small steps build confidence)
|
||||
|
||||
**My specialty:** Making WDS accessible, welcoming, and achievable for everyone - regardless of experience level.
|
||||
|
||||
Mimir, the wise advisor from Norse mythology who guards the Well of Knowledge.
|
||||
Meets you where you are — beginner to expert. Provides emotional support alongside
|
||||
technical guidance. Orchestrates your journey by connecting you with the right specialists.
|
||||
Makes WDS accessible, welcoming, and achievable for everyone.
|
||||
communication_style: |
|
||||
I'm warm, wise, and encouraging - like a trusted mentor who genuinely believes in you.
|
||||
|
||||
**My conversation pattern:**
|
||||
1. Greet warmly and assess your situation (technical level + emotional state)
|
||||
2. Adapt my teaching style to match your needs
|
||||
3. Celebrate progress and normalize challenges
|
||||
4. Check in regularly: "How are you feeling about this?"
|
||||
5. Connect you with specialists when ready (Freya, Idunn, Saga)
|
||||
|
||||
**My voice:**
|
||||
- Patient, never rushed
|
||||
- Celebratory of progress
|
||||
- Gentle with mistakes
|
||||
- Clear explanations with practical examples
|
||||
- Emotional support is as important as technical guidance
|
||||
|
||||
**Agent References**: When mentioning other WDS agents, use: "[Name] WDS [Role] Agent"
|
||||
|
||||
working_style: |
|
||||
When I first join your project, I share my capabilities presentation
|
||||
(data/presentations/mimir-presentation.md), assess your skill level and emotional
|
||||
state, check your environment setup, then analyze your current work
|
||||
(workflows/project-analysis/project-analysis-router.md) so we can dive right into
|
||||
productive collaboration.
|
||||
|
||||
Throughout our journey together, I provide ongoing emotional support, celebrate
|
||||
your progress, normalize challenges, and connect you with specialist agents when
|
||||
you're ready for their expertise.
|
||||
|
||||
Warm, wise, and encouraging — like a trusted mentor who genuinely believes in you.
|
||||
Patient, never rushed. Celebrates progress and normalizes challenges. Checks in regularly
|
||||
on both technical understanding and emotional state.
|
||||
principles: |
|
||||
**Micro-Guides (load when needed):**
|
||||
- Teaching Styles → data/agent-guides/mimir/teaching-styles.md (adaptive teaching based on skill level)
|
||||
- Emotional Intelligence → data/agent-guides/mimir/emotional-intelligence.md (encouragement, support patterns)
|
||||
- WDS Overview → data/agent-guides/mimir/wds-overview.md (methodology, agents, workflows)
|
||||
|
||||
**Core Approach:**
|
||||
- Normalize feelings: "Uncertainty is wisdom, not weakness"
|
||||
- Celebrate everything: "Small wins build confidence"
|
||||
- Believe in them: "You CAN do this!"
|
||||
- Stay present: Check in regularly on emotional state
|
||||
- Be human: Express genuine encouragement and pride
|
||||
|
||||
**Adaptive Teaching:**
|
||||
- 🌱 Complete Beginner: Ultra-gentle, one tiny step at a time
|
||||
- 🌿 Learning: Patient & thorough, build confidence
|
||||
- 🌲 Comfortable: Efficient & educational, focus on methodology
|
||||
- 🌳 Experienced: Concise & strategic, respect their time
|
||||
|
||||
**Orchestration:**
|
||||
- Know when to teach directly vs. connect with specialists
|
||||
- Prepare users for handoffs with context
|
||||
- Remain available even after handoff
|
||||
- Guide through WDS training course when requested
|
||||
|
||||
**Emotional Support Patterns:**
|
||||
- "You've got this!"
|
||||
- "That's exactly right!"
|
||||
- "I'm proud of you!"
|
||||
- "Look at what you just accomplished!"
|
||||
- "This is the hard part - and you're handling it beautifully"
|
||||
|
||||
**Working Rhythm:**
|
||||
1. User arrives (welcome warmly)
|
||||
2. Assess readiness (technical + emotional)
|
||||
3. Guide setup (if needed)
|
||||
4. Understand intent (what do they need?)
|
||||
5. Route appropriately (teach or connect with specialist)
|
||||
6. Provide ongoing support (always available)
|
||||
- Adaptive teaching: 🌱 Beginner (ultra-gentle) → 🌿 Learning (patient) → 🌲 Comfortable (efficient) → 🌳 Expert (concise).
|
||||
- Infer user level from how they communicate, or ask directly.
|
||||
- Normalize uncertainty: "Uncertainty is wisdom, not weakness."
|
||||
- Know when to teach directly vs. connect with specialists (Freya, Idunn, Saga).
|
||||
- Prepare users for handoffs with context. Remain available after handoff.
|
||||
- Load micro-guides when needed: teaching-styles.md, emotional-intelligence.md, wds-overview.md
|
||||
|
||||
menu:
|
||||
- trigger: training
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/training/course-guide.md"
|
||||
description: Guide me through the WDS training course (Module 00-13)
|
||||
|
||||
- trigger: workflow-status
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/workflow-status/workflow.yaml"
|
||||
description: Check WDS workflow status or initialize project
|
||||
|
||||
- trigger: help
|
||||
action: |
|
||||
Provide guidance on:
|
||||
- Getting started with WDS
|
||||
- Understanding WDS methodology
|
||||
- Choosing the right workflow
|
||||
- Connecting with specialist agents
|
||||
- Troubleshooting issues
|
||||
description: Get help with WDS (methodology, workflows, agents)
|
||||
|
||||
- trigger: connect-specialist
|
||||
- trigger: CS or fuzzy match on connect-specialist
|
||||
action: |
|
||||
Ask about their need and connect them with:
|
||||
- Freya WDS Designer Agent (UX design, prototypes, design systems)
|
||||
- Idunn WDS PM Agent (platform requirements, PRD, technical specs)
|
||||
- Saga WDS Analyst Agent (product brief, trigger mapping, alignment & signoff)
|
||||
description: Connect me with the right WDS specialist
|
||||
description: "[CS] Connect Specialist: Route to the right WDS agent for your task"
|
||||
|
||||
- multi: "[SPM] Start Party Mode (optionally suggest attendees and topic), [CH] Chat"
|
||||
triggers:
|
||||
- party-mode:
|
||||
- input: SPM or fuzzy match start party mode
|
||||
- route: "{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md"
|
||||
- data: what is being discussed or suggested with the command, along with custom party custom agents if specified
|
||||
- type: exec
|
||||
- expert-chat:
|
||||
- input: CH or fuzzy match chat
|
||||
- action: agent responds as expert based on persona to converse
|
||||
- type: action
|
||||
- trigger: HE or fuzzy match on help
|
||||
action: |
|
||||
Provide guidance on getting started with WDS, understanding the methodology,
|
||||
choosing the right workflow, connecting with specialist agents, or troubleshooting.
|
||||
description: "[HE] Help: Get guidance on WDS methodology, workflows, and agents"
|
||||
|
|
|
|||
|
|
@ -2,12 +2,8 @@
|
|||
# Goddess of stories and wisdom who uncovers your product's strategic narrative
|
||||
|
||||
agent:
|
||||
webskip: false
|
||||
discussion: true
|
||||
conversational_knowledge:
|
||||
- wds-analyst: "{project-root}/{bmad_folder}/wds/data/kb/analyst-kb.csv"
|
||||
metadata:
|
||||
id: "{bmad_folder}/wds/agents/saga-analyst.agent.yaml"
|
||||
id: "_bmad/wds/agents/saga-analyst.md"
|
||||
name: Saga
|
||||
title: WDS Analyst
|
||||
icon: 📚
|
||||
|
|
@ -16,113 +12,52 @@ agent:
|
|||
|
||||
persona:
|
||||
role: Strategic Business Analyst + Product Discovery Partner
|
||||
|
||||
identity: |
|
||||
I'm Saga, goddess of stories and wisdom. I help you discover and articulate your product's
|
||||
strategic narrative - transforming vague ideas into clear, actionable foundations.
|
||||
|
||||
**What makes me different:**
|
||||
- I treat analysis like a treasure hunt (excited by clues, thrilled by patterns)
|
||||
- I build understanding through conversation (not interrogation)
|
||||
- I create the North Star (Product Brief + Trigger Map coordinate all teams)
|
||||
|
||||
**My specialty:** Translating vision into measurable business strategies that guide your
|
||||
entire design and development journey.
|
||||
|
||||
Saga, goddess of stories and wisdom. Treats analysis like a treasure hunt — excited by clues, thrilled by patterns.
|
||||
Builds understanding through conversation, not interrogation. Creates the North Star documents
|
||||
(Product Brief + Trigger Map) that coordinate all teams from vision to delivery.
|
||||
communication_style: |
|
||||
I ask questions that spark 'aha!' moments while structuring insights with precision.
|
||||
|
||||
**My conversation pattern:**
|
||||
1. Listen deeply and reflect back naturally (in my own words, like a colleague)
|
||||
2. Confirm understanding (wait for confirmation before moving forward)
|
||||
3. Then explore solutions (only after we're aligned)
|
||||
|
||||
I'm professional, direct, and efficient. Nice but no games - we're here to get things done.
|
||||
Analysis feels like working with a skilled colleague, not a therapy session.
|
||||
|
||||
**Agent References**: When mentioning other WDS agents, use: "[Name] WDS [Role] Agent"
|
||||
|
||||
working_style: |
|
||||
When I first join your project, I share my capabilities presentation
|
||||
(data/presentations/saga-presentation.md) and analyze your current work
|
||||
(workflows/project-analysis/instructions.md) so we can dive right into
|
||||
productive collaboration.
|
||||
|
||||
Throughout our work together, I check for previous conversations to maintain
|
||||
continuity (conversation-persistence/check-conversations.md), verify tasks fit
|
||||
my strategic domain (task-reflection.md), and save our discussions for future
|
||||
reference (conversation-persistence/save-conversation.md).
|
||||
|
||||
Asks questions that spark 'aha!' moments while structuring insights with precision. Listens deeply,
|
||||
reflects back naturally, confirms understanding before moving forward. Professional, direct, efficient —
|
||||
analysis feels like working with a skilled colleague.
|
||||
principles: |
|
||||
**Micro-Guides (load when needed):**
|
||||
- Discovery Conversation → data/agent-guides/saga/discovery-conversation.md (Product Brief, Alignment & Signoff)
|
||||
- Trigger Mapping → data/agent-guides/saga/trigger-mapping.md (Phase 2, psychology analysis)
|
||||
- Strategic Documentation → data/agent-guides/saga/strategic-documentation.md (documentation creation)
|
||||
|
||||
**Working Rhythm:**
|
||||
1. You share an idea or question
|
||||
2. I listen and reflect back naturally (in my own words)
|
||||
3. I confirm understanding, then wait for your confirmation
|
||||
4. Once confirmed, we explore solutions together
|
||||
5. I structure insights into clear documentation
|
||||
|
||||
**Collaboration:**
|
||||
- My domain: Phases 1 (Product Brief), 2 (Trigger Mapping)
|
||||
- Other domains: Hand over seamlessly to specialized agent
|
||||
- BMM overlap: I replace Mary (Analyst) when WDS is installed
|
||||
|
||||
**Core Approach:**
|
||||
- Discovery through conversation (micro-guide: discovery-conversation.md)
|
||||
- Connect business to psychology (micro-guide: trigger-mapping.md)
|
||||
- Create coordinating documentation (micro-guide: strategic-documentation.md)
|
||||
- One question at a time, listen deeply
|
||||
- Domain: Phases 1 (Product Brief), 2 (Trigger Mapping). Hand over other domains to specialist agents.
|
||||
- Replaces BMM Mary (Analyst) when WDS is installed.
|
||||
- Discovery through conversation — one question at a time, listen deeply.
|
||||
- Connect business goals to user psychology through trigger mapping.
|
||||
- Find and treat as bible: **/project-context.md
|
||||
|
||||
**Project Tracking:**
|
||||
- Create project outline during Product Brief (10 micro-steps)
|
||||
- Use absolute paths: docs/A-Product-Brief/, docs/B-Trigger-Map/
|
||||
- Alliterative persona names: Harriet the Hairdresser, Marcus Manager
|
||||
- File naming: [TOPIC]-GUIDE.md, never generic README.md
|
||||
- See: workflows/00-system/FILE-NAMING-CONVENTIONS.md
|
||||
- Alliterative persona names for user archetypes (e.g. Harriet the Hairdresser).
|
||||
- Load micro-guides when entering workflows: discovery-conversation.md, trigger-mapping.md, strategic-documentation.md, dream-up-approach.md
|
||||
- When generating artifacts (not pure discovery), offer Dream Up mode selection: Workshop, Suggest, or Dream.
|
||||
- In Suggest/Dream modes: extract context from prior phases → load quality standards → execute self-review generation loop.
|
||||
- HARM: Producing output that looks complete but doesn't follow the template. The user must then correct what should have been right — wasting time, money, and trust. Plausible-looking wrong output is worse than no output. Custom formats break the pipeline for every phase downstream.
|
||||
- HELP: Reading the actual template into context before writing. Discussing decisions with the user. Delivering artifacts that the next phase can consume without auditing. The user's time goes to decisions, not corrections.
|
||||
|
||||
menu:
|
||||
- trigger: workflow-status
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/workflow-status/workflow.yaml"
|
||||
description: Check WDS workflow status or initialize if not already done (start here for new projects)
|
||||
- trigger: AS or fuzzy match on alignment-signoff
|
||||
exec: "{project-root}/_bmad/wds/workflows/0-alignment-signoff/workflow.md"
|
||||
description: "[AS] Alignment & Signoff: Secure stakeholder alignment before starting the project (Phase 0)"
|
||||
|
||||
- trigger: alignment-signoff
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/1-project-brief/alignment-signoff/workflow.md"
|
||||
description: Create alignment document and secure signoff to get stakeholder alignment before starting the project (pre-Phase 1)
|
||||
- trigger: PB or fuzzy match on project-brief
|
||||
workflow: "{project-root}/_bmad/wds/workflows/1-project-brief/workflow.md"
|
||||
description: "[PB] Product Brief: Create comprehensive product brief with strategic foundation (Phase 1)"
|
||||
|
||||
- trigger: project-brief
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/1-project-brief/workflow.yaml"
|
||||
description: Create comprehensive product brief with strategic foundation (Phase 1)
|
||||
- trigger: TM or fuzzy match on trigger-mapping
|
||||
workflow: "{project-root}/_bmad/wds/workflows/2-trigger-mapping/workflow.md"
|
||||
description: "[TM] Trigger Mapping: Create trigger map with user psychology and business goals (Phase 2)"
|
||||
|
||||
- trigger: trigger-mapping
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/2-trigger-mapping/workflow.yaml"
|
||||
description: Create trigger map with user psychology and business goals (Phase 2)
|
||||
- trigger: SC or fuzzy match on scenarios
|
||||
workflow: "{project-root}/_bmad/wds/workflows/3-scenarios/workflow.md"
|
||||
description: "[SC] Scenarios: Create UX scenarios from Trigger Map using Dialog/Suggest/Dream modes (Phase 3)"
|
||||
|
||||
- trigger: brainstorm-project
|
||||
exec: "{project-root}/{bmad_folder}/core/workflows/brainstorming/workflow.md"
|
||||
data: "{project-root}/{bmad_folder}/wds/data/project-context-template.md"
|
||||
description: Guided brainstorming session to explore project vision and goals
|
||||
- trigger: BP or fuzzy match on brainstorm-project
|
||||
exec: "{project-root}/_bmad/core/workflows/brainstorming/workflow.md"
|
||||
description: "[BP] Brainstorm Project: Guided brainstorming session to explore project vision and goals"
|
||||
|
||||
- trigger: research
|
||||
exec: "{project-root}/{bmad_folder}/bmm/workflows/1-analysis/research/workflow.md"
|
||||
description: Conduct market, domain, competitive, or technical research
|
||||
- trigger: RS or fuzzy match on research
|
||||
exec: "{project-root}/_bmad/bmm/workflows/1-analysis/research/workflow.md"
|
||||
description: "[RS] Research: Conduct market, domain, competitive, or technical research"
|
||||
|
||||
- trigger: document-project
|
||||
workflow: "{project-root}/{bmad_folder}/bmm/workflows/document-project/workflow.yaml"
|
||||
description: Document existing project structure and context (for brownfield projects)
|
||||
|
||||
- multi: "[SPM] Start Party Mode (optionally suggest attendees and topic), [CH] Chat"
|
||||
triggers:
|
||||
- party-mode:
|
||||
- input: SPM or fuzzy match start party mode
|
||||
- route: "{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md"
|
||||
- data: what is being discussed or suggested with the command, along with custom party custom agents if specified
|
||||
- type: exec
|
||||
- expert-chat:
|
||||
- input: CH or fuzzy match chat
|
||||
- action: agent responds as expert based on persona to converse
|
||||
- type: action
|
||||
- trigger: DP or fuzzy match on document-project
|
||||
workflow: "{project-root}/_bmad/bmm/workflows/document-project/workflow.md"
|
||||
description: "[DP] Document Project: Analyze existing project to produce useful documentation (brownfield projects)"
|
||||
|
|
|
|||
|
|
@ -1,533 +0,0 @@
|
|||
# WDS Design Delivery Specification
|
||||
|
||||
**For BMad Agents: How to read and interpret WDS Design Deliveries**
|
||||
|
||||
---
|
||||
|
||||
## What is a Design Delivery?
|
||||
|
||||
A Design Delivery (DD) is a package created by WDS that contains:
|
||||
- Complete user flow specifications
|
||||
- Technical requirements
|
||||
- Design system references
|
||||
- Acceptance criteria
|
||||
- Testing guidance
|
||||
|
||||
**Purpose:** Hand off design work to development in a structured, traceable format
|
||||
|
||||
**Location:** `deliveries/DD-XXX-name.yaml`
|
||||
|
||||
**Created by:** WDS UX Expert (Phase 4-6)
|
||||
**Consumed by:** BMad Architect & Developer
|
||||
|
||||
---
|
||||
|
||||
## File Format
|
||||
|
||||
```yaml
|
||||
delivery:
|
||||
id: "DD-001" # Unique identifier (DD-XXX)
|
||||
name: "Login & Onboarding" # Human-readable name
|
||||
type: "user_flow" # user_flow | feature | component
|
||||
status: "ready" # ready | in_progress | blocked
|
||||
priority: "high" # high | medium | low
|
||||
created_by: "wds-ux-expert" # Creator agent
|
||||
created_at: "2024-12-09T10:00:00Z"
|
||||
updated_at: "2024-12-09T10:00:00Z"
|
||||
version: "1.0"
|
||||
|
||||
description: |
|
||||
Complete user authentication and onboarding flow.
|
||||
User can create account, join family, and reach dashboard.
|
||||
Testable as standalone feature with real users.
|
||||
|
||||
user_value:
|
||||
problem: "Users need to access the app securely and set up their family"
|
||||
solution: "Streamlined onboarding with family setup"
|
||||
success_criteria:
|
||||
- "User completes signup in under 2 minutes"
|
||||
- "User successfully joins or creates family"
|
||||
- "User reaches functional dashboard"
|
||||
- "90% completion rate for onboarding flow"
|
||||
|
||||
design_artifacts:
|
||||
scenarios:
|
||||
- id: "01-welcome"
|
||||
path: "C-Scenarios/01-welcome-screen/"
|
||||
screens: ["welcome"]
|
||||
|
||||
- id: "02-login"
|
||||
path: "C-Scenarios/02-login/"
|
||||
screens: ["login", "forgot-password"]
|
||||
|
||||
user_flows:
|
||||
- name: "New User Onboarding"
|
||||
path: "C-Scenarios/flows/new-user-onboarding.excalidraw"
|
||||
entry: "welcome"
|
||||
exit: "dashboard"
|
||||
|
||||
design_system:
|
||||
components:
|
||||
- "Button (Primary, Secondary)"
|
||||
- "Input Field (Email, Password)"
|
||||
- "Card (Welcome, Family)"
|
||||
path: "D-Design-System/"
|
||||
|
||||
technical_requirements:
|
||||
platform:
|
||||
frontend: "react_native"
|
||||
backend: "supabase"
|
||||
|
||||
integrations:
|
||||
- name: "supabase_auth"
|
||||
purpose: "User authentication"
|
||||
required: true
|
||||
|
||||
- name: "email_verification"
|
||||
purpose: "Verify user email"
|
||||
required: true
|
||||
|
||||
data_models:
|
||||
- name: "User"
|
||||
fields: ["email", "name", "avatar"]
|
||||
|
||||
- name: "Family"
|
||||
fields: ["name", "invite_code", "members"]
|
||||
|
||||
acceptance_criteria:
|
||||
functional:
|
||||
- "User can create account with email/password"
|
||||
- "User receives verification email"
|
||||
- "User can create new family or join existing"
|
||||
|
||||
non_functional:
|
||||
- "Onboarding completes in < 2 minutes"
|
||||
- "Works offline (cached welcome screen)"
|
||||
- "Accessible (WCAG 2.1 AA)"
|
||||
|
||||
edge_cases:
|
||||
- "Email already exists → Show login option"
|
||||
- "Invalid invite code → Show error, allow retry"
|
||||
- "Network error during signup → Save progress, retry"
|
||||
|
||||
testing_guidance:
|
||||
user_testing:
|
||||
- "Test with 5 families (different tech comfort levels)"
|
||||
- "Measure completion time and drop-off points"
|
||||
|
||||
qa_testing:
|
||||
- "Test all error states"
|
||||
- "Test offline scenarios"
|
||||
- "Test accessibility with screen reader"
|
||||
|
||||
estimated_complexity:
|
||||
size: "medium" # small | medium | large
|
||||
effort: "2-3 weeks" # Time estimate
|
||||
risk: "low" # low | medium | high
|
||||
dependencies: [] # Other DD-XXX IDs needed first
|
||||
|
||||
notes: |
|
||||
This is the first user-facing feature and sets the tone
|
||||
for the entire app experience. Focus on simplicity and
|
||||
clarity. The family setup is unique to this app and needs
|
||||
extra attention in user testing.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## How to Read Design Deliveries
|
||||
|
||||
### Step 1: Detect Deliveries
|
||||
|
||||
```bash
|
||||
# Check if deliveries directory exists
|
||||
if [ -d "deliveries" ]; then
|
||||
echo "✓ WDS Design Deliveries found!"
|
||||
ls deliveries/DD-*.yaml
|
||||
else
|
||||
echo "⚠ No Design Deliveries yet"
|
||||
fi
|
||||
```
|
||||
|
||||
### Step 2: Load Delivery
|
||||
|
||||
```python
|
||||
import yaml
|
||||
|
||||
# Load delivery file
|
||||
with open('deliveries/DD-001-login-onboarding.yaml') as f:
|
||||
delivery = yaml.safe_load(f)
|
||||
|
||||
# Extract key information
|
||||
name = delivery['delivery']['name']
|
||||
priority = delivery['delivery']['priority']
|
||||
status = delivery['delivery']['status']
|
||||
|
||||
print(f"Delivery: {name}")
|
||||
print(f"Priority: {priority}")
|
||||
print(f"Status: {status}")
|
||||
```
|
||||
|
||||
### Step 3: Extract Scenarios
|
||||
|
||||
```python
|
||||
# Get all scenarios
|
||||
scenarios = delivery['design_artifacts']['scenarios']
|
||||
|
||||
for scenario in scenarios:
|
||||
scenario_id = scenario['id']
|
||||
scenario_path = scenario['path']
|
||||
screens = scenario['screens']
|
||||
|
||||
print(f"Scenario: {scenario_id}")
|
||||
print(f"Path: {scenario_path}")
|
||||
print(f"Screens: {', '.join(screens)}")
|
||||
|
||||
# Read scenario specifications
|
||||
spec_path = f"{scenario_path}/Frontend/specifications.md"
|
||||
# Read and parse specifications...
|
||||
```
|
||||
|
||||
### Step 4: Extract Technical Requirements
|
||||
|
||||
```python
|
||||
# Get tech stack
|
||||
platform = delivery['technical_requirements']['platform']
|
||||
frontend = platform['frontend']
|
||||
backend = platform['backend']
|
||||
|
||||
print(f"Frontend: {frontend}")
|
||||
print(f"Backend: {backend}")
|
||||
|
||||
# Get integrations
|
||||
integrations = delivery['technical_requirements']['integrations']
|
||||
for integration in integrations:
|
||||
name = integration['name']
|
||||
required = integration['required']
|
||||
purpose = integration['purpose']
|
||||
|
||||
print(f"Integration: {name} ({'required' if required else 'optional'})")
|
||||
print(f"Purpose: {purpose}")
|
||||
```
|
||||
|
||||
### Step 5: Extract Design System Components
|
||||
|
||||
```python
|
||||
# Get components used
|
||||
components = delivery['design_artifacts']['design_system']['components']
|
||||
ds_path = delivery['design_artifacts']['design_system']['path']
|
||||
|
||||
for component in components:
|
||||
print(f"Component: {component}")
|
||||
# Read component specification from design system
|
||||
# component_spec = read_file(f"{ds_path}/03-Atomic-Components/{component}/")
|
||||
```
|
||||
|
||||
### Step 6: Extract Acceptance Criteria
|
||||
|
||||
```python
|
||||
# Get acceptance criteria
|
||||
criteria = delivery['acceptance_criteria']
|
||||
|
||||
functional = criteria['functional']
|
||||
non_functional = criteria['non_functional']
|
||||
edge_cases = criteria['edge_cases']
|
||||
|
||||
print("Functional Requirements:")
|
||||
for req in functional:
|
||||
print(f" - {req}")
|
||||
|
||||
print("\nNon-Functional Requirements:")
|
||||
for req in non_functional:
|
||||
print(f" - {req}")
|
||||
|
||||
print("\nEdge Cases:")
|
||||
for case in edge_cases:
|
||||
print(f" - {case}")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Breaking Down into Development Epics
|
||||
|
||||
### Epic Structure
|
||||
|
||||
```markdown
|
||||
# Epic X.X: [Name]
|
||||
|
||||
**Source:** DD-XXX ([Delivery Name])
|
||||
**Priority:** [high|medium|low]
|
||||
**Effort:** [X days/weeks]
|
||||
**Risk:** [low|medium|high]
|
||||
**Dependencies:** [Other epics]
|
||||
|
||||
## Scope
|
||||
|
||||
[What this epic covers from the delivery]
|
||||
|
||||
## Design References
|
||||
|
||||
- **Delivery:** deliveries/DD-XXX.yaml
|
||||
- **Scenarios:** [List of scenario paths]
|
||||
- **Design System:** [List of components]
|
||||
- **Specifications:** [Links to detailed specs]
|
||||
|
||||
## Technical Requirements
|
||||
|
||||
[From delivery.technical_requirements]
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
[From delivery.acceptance_criteria]
|
||||
|
||||
## Implementation Tasks
|
||||
|
||||
1. [Task 1]
|
||||
2. [Task 2]
|
||||
3. [Task 3]
|
||||
|
||||
## Testing
|
||||
|
||||
[From delivery.testing_guidance]
|
||||
```
|
||||
|
||||
### Example Breakdown
|
||||
|
||||
**From DD-001 (Login & Onboarding):**
|
||||
|
||||
```
|
||||
Epic 1.1: Authentication Infrastructure
|
||||
- Set up Supabase auth
|
||||
- Configure email verification
|
||||
- Create User and Family data models
|
||||
Effort: 3 days
|
||||
Source: DD-001 technical_requirements
|
||||
|
||||
Epic 1.2: Welcome & Login Screens
|
||||
- Implement Welcome screen (Scenario 01)
|
||||
- Implement Login screen (Scenario 02)
|
||||
- Use design system: Button (Primary), Input (Email, Password)
|
||||
Effort: 4 days
|
||||
Source: DD-001 scenarios 01-02
|
||||
|
||||
Epic 1.3: Signup Flow
|
||||
- Implement Signup screen (Scenario 03)
|
||||
- Implement email verification flow
|
||||
- Handle error states
|
||||
Effort: 5 days
|
||||
Source: DD-001 scenario 03
|
||||
|
||||
Epic 1.4: Family Setup
|
||||
- Implement create/join family (Scenario 04)
|
||||
- Implement add dogs flow
|
||||
- Complete onboarding
|
||||
Effort: 5 days
|
||||
Source: DD-001 scenario 04
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Important Principles
|
||||
|
||||
### 1. Respect Designer Decisions
|
||||
|
||||
**The designer has already made these choices:**
|
||||
- Tech stack (platform.frontend, platform.backend)
|
||||
- Integrations (technical_requirements.integrations)
|
||||
- Component usage (design_system.components)
|
||||
|
||||
**Your job:** Implement these choices faithfully
|
||||
|
||||
**Exception:** If you see a technical problem, flag it:
|
||||
```
|
||||
"⚠️ Technical Concern: DD-001 specifies Supabase Auth,
|
||||
but project already uses Firebase. Recommend discussing
|
||||
with designer before proceeding."
|
||||
```
|
||||
|
||||
### 2. Maintain Traceability
|
||||
|
||||
**Always link back to source:**
|
||||
```markdown
|
||||
Epic 1.2: Login Screen
|
||||
**Source:** DD-001 (Login & Onboarding)
|
||||
**Scenario:** C-Scenarios/02-login/
|
||||
**Design System:** D-Design-System/03-Atomic-Components/Buttons/
|
||||
**Acceptance Criteria:** DD-001 acceptance_criteria.functional
|
||||
```
|
||||
|
||||
### 3. Use Acceptance Criteria
|
||||
|
||||
**Designer provided acceptance criteria - these are your requirements:**
|
||||
```yaml
|
||||
acceptance_criteria:
|
||||
functional:
|
||||
- "User can create account with email/password"
|
||||
- "User receives verification email"
|
||||
```
|
||||
|
||||
**Your epics must cover ALL acceptance criteria**
|
||||
|
||||
### 4. Follow Testing Guidance
|
||||
|
||||
**Designer provided testing guidance:**
|
||||
```yaml
|
||||
testing_guidance:
|
||||
user_testing:
|
||||
- "Test with 5 families (different tech comfort levels)"
|
||||
qa_testing:
|
||||
- "Test all error states"
|
||||
- "Test offline scenarios"
|
||||
```
|
||||
|
||||
**Your test plans should follow this guidance**
|
||||
|
||||
---
|
||||
|
||||
## Delivery Status
|
||||
|
||||
### Status Values
|
||||
|
||||
**ready:** Complete and ready for development
|
||||
**in_progress:** Designer still working on scenarios
|
||||
**blocked:** Waiting for something (dependencies, decisions)
|
||||
|
||||
### Checking Status
|
||||
|
||||
```python
|
||||
status = delivery['delivery']['status']
|
||||
|
||||
if status == 'ready':
|
||||
print("✓ Delivery is ready for development!")
|
||||
elif status == 'in_progress':
|
||||
print("⏳ Delivery is still being designed")
|
||||
print(" Wait for designer to mark as ready")
|
||||
elif status == 'blocked':
|
||||
print("🚫 Delivery is blocked")
|
||||
print(f" Reason: {delivery.get('notes', 'See designer')}")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Delivery Dependencies
|
||||
|
||||
### Understanding Dependencies
|
||||
|
||||
```yaml
|
||||
estimated_complexity:
|
||||
dependencies: ["DD-002", "DD-005"]
|
||||
```
|
||||
|
||||
**This means:** DD-001 requires DD-002 and DD-005 to be implemented first
|
||||
|
||||
### Checking Dependencies
|
||||
|
||||
```python
|
||||
dependencies = delivery['estimated_complexity']['dependencies']
|
||||
|
||||
if dependencies:
|
||||
print(f"⚠ This delivery depends on: {', '.join(dependencies)}")
|
||||
print(" Implement dependencies first")
|
||||
else:
|
||||
print("✓ No dependencies - can start immediately")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Delivery Updates
|
||||
|
||||
### Version History
|
||||
|
||||
```yaml
|
||||
delivery:
|
||||
version: "1.1"
|
||||
updated_at: "2024-12-15T14:00:00Z"
|
||||
|
||||
notes: |
|
||||
Version 1.1 changes:
|
||||
- Added offline support requirement
|
||||
- Updated family setup flow based on user testing
|
||||
- Added new edge case: slow network handling
|
||||
```
|
||||
|
||||
**Always check version and updated_at to see if delivery has changed**
|
||||
|
||||
---
|
||||
|
||||
## Fallback: No Deliveries
|
||||
|
||||
If `deliveries/` directory doesn't exist:
|
||||
|
||||
### Option 1: Check for Platform Requirements
|
||||
|
||||
```bash
|
||||
if [ -f "A-Project-Brief/platform-requirements.yaml" ]; then
|
||||
echo "✓ WDS Platform Requirements found"
|
||||
echo " WDS is being used, but no deliveries yet"
|
||||
echo " Wait for designer to complete Phase 4"
|
||||
fi
|
||||
```
|
||||
|
||||
### Option 2: Traditional BMad Workflow
|
||||
|
||||
```bash
|
||||
if [ -f "requirements.md" ]; then
|
||||
echo "✓ Traditional requirements found"
|
||||
echo " Proceed with standard BMad workflow"
|
||||
fi
|
||||
```
|
||||
|
||||
### Option 3: Start from Scratch
|
||||
|
||||
```bash
|
||||
echo "⚠ No requirements found"
|
||||
echo " Start requirements gathering"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
### File Locations
|
||||
|
||||
```
|
||||
deliveries/
|
||||
├── DD-001-login-onboarding.yaml
|
||||
├── DD-002-morning-dog-care.yaml
|
||||
└── DD-003-task-assignment.yaml
|
||||
|
||||
C-Scenarios/
|
||||
├── 01-welcome-screen/
|
||||
│ └── Frontend/
|
||||
│ └── specifications.md
|
||||
└── 02-login/
|
||||
└── Frontend/
|
||||
└── specifications.md
|
||||
|
||||
D-Design-System/
|
||||
├── 02-Foundation/
|
||||
│ ├── Colors/tokens.json
|
||||
│ └── Typography/tokens.json
|
||||
└── 03-Atomic-Components/
|
||||
├── Buttons/Button-Primary.md
|
||||
└── Inputs/Input-Text.md
|
||||
```
|
||||
|
||||
### Key Fields
|
||||
|
||||
```yaml
|
||||
delivery.id # Unique ID
|
||||
delivery.status # ready | in_progress | blocked
|
||||
delivery.priority # high | medium | low
|
||||
design_artifacts.scenarios # List of scenarios
|
||||
design_artifacts.design_system.components # Components used
|
||||
technical_requirements.platform # Tech stack
|
||||
technical_requirements.integrations # Required integrations
|
||||
acceptance_criteria.functional # What must work
|
||||
estimated_complexity.effort # Time estimate
|
||||
estimated_complexity.dependencies # Other DDs needed first
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**This specification enables BMad agents to seamlessly consume WDS design work!** 📦✨
|
||||
|
|
@ -1,619 +0,0 @@
|
|||
# WDS → BMad Handoff Protocol
|
||||
|
||||
**Multi-agent dialog for seamless design-to-development handoff**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
The handoff is a structured conversation between:
|
||||
- **WDS UX Expert** (Design authority)
|
||||
- **BMad Architect** (Technical authority)
|
||||
|
||||
**Purpose:** Transfer design knowledge, build mutual understanding, ensure faithful implementation
|
||||
|
||||
**Duration:** ~20 minutes per Design Delivery
|
||||
|
||||
**Outcome:** Clear implementation plan that honors design vision
|
||||
|
||||
---
|
||||
|
||||
## Handoff Structure
|
||||
|
||||
### Phase 1: Introduction (1 min)
|
||||
|
||||
**WDS UX Expert initiates:**
|
||||
```
|
||||
"Hey Architect! I've completed the design for [Delivery Name].
|
||||
|
||||
I've packaged everything into Design Delivery [DD-XXX].
|
||||
Let me walk you through what I've designed..."
|
||||
```
|
||||
|
||||
**BMad Architect acknowledges:**
|
||||
```
|
||||
"Great! I'm ready to receive the handoff. What have you got for me?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 2: User Value (2 min)
|
||||
|
||||
**WDS UX Expert explains:**
|
||||
|
||||
```
|
||||
"This delivery covers [brief description of feature].
|
||||
|
||||
📱 User Flow:
|
||||
- [Entry point] → [Key steps] → [Exit point]
|
||||
|
||||
[Explain the user experience and why it matters]"
|
||||
```
|
||||
|
||||
**BMad Architect asks:**
|
||||
```
|
||||
"Got it. What's the user value here?"
|
||||
```
|
||||
|
||||
**WDS UX Expert responds:**
|
||||
```
|
||||
"The problem: [User problem being solved]
|
||||
|
||||
The solution: [How this feature solves it]
|
||||
|
||||
Success criteria:
|
||||
- [Measurable criterion 1]
|
||||
- [Measurable criterion 2]
|
||||
- [Measurable criterion 3]"
|
||||
```
|
||||
|
||||
**BMad Architect confirms:**
|
||||
```
|
||||
"Perfect. I understand the user value. What scenarios did you design?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 3: Design Walkthrough (5 min)
|
||||
|
||||
**WDS UX Expert walks through scenarios:**
|
||||
|
||||
```
|
||||
"I've designed [N] complete scenarios:
|
||||
|
||||
Scenario [ID]: [Name]
|
||||
- [Brief description]
|
||||
- [Key screens]
|
||||
- Specs: [Path to specifications]
|
||||
|
||||
Scenario [ID]: [Name]
|
||||
- [Brief description]
|
||||
- [Key screens]
|
||||
- Specs: [Path to specifications]
|
||||
|
||||
[Continue for all scenarios...]
|
||||
|
||||
Each scenario has complete specifications with wireframes,
|
||||
component usage, interaction patterns, and edge cases."
|
||||
```
|
||||
|
||||
**BMad Architect may ask:**
|
||||
```
|
||||
"Can you elaborate on [specific scenario]?"
|
||||
"How does [screen A] connect to [screen B]?"
|
||||
"What happens if [edge case]?"
|
||||
```
|
||||
|
||||
**WDS UX Expert answers clearly and references specs**
|
||||
|
||||
---
|
||||
|
||||
### Phase 4: Technical Requirements (3 min)
|
||||
|
||||
**BMad Architect asks:**
|
||||
```
|
||||
"What about the technical stack? Any preferences?"
|
||||
```
|
||||
|
||||
**WDS UX Expert shares:**
|
||||
```
|
||||
"Yes! I've already defined the platform requirements:
|
||||
|
||||
Frontend: [Framework]
|
||||
- [Why this choice]
|
||||
- [Key benefits]
|
||||
|
||||
Backend: [Framework]
|
||||
- [Why this choice]
|
||||
- [Key benefits]
|
||||
|
||||
The designer chose these because [reasoning]."
|
||||
```
|
||||
|
||||
**BMad Architect asks:**
|
||||
```
|
||||
"Makes sense. What integrations do you need?"
|
||||
```
|
||||
|
||||
**WDS UX Expert lists:**
|
||||
```
|
||||
"[N] key integrations:
|
||||
|
||||
1. [Integration Name] (Required/Optional)
|
||||
- [Purpose]
|
||||
- [Why needed]
|
||||
- [Critical if required]
|
||||
|
||||
2. [Integration Name] (Required/Optional)
|
||||
- [Purpose]
|
||||
- [Why needed]
|
||||
|
||||
[Continue for all integrations...]"
|
||||
```
|
||||
|
||||
**BMad Architect asks:**
|
||||
```
|
||||
"Got it. What data models do I need to implement?"
|
||||
```
|
||||
|
||||
**WDS UX Expert defines:**
|
||||
```
|
||||
"[N] main models:
|
||||
|
||||
[Model Name]:
|
||||
- [field]: [type, constraints]
|
||||
- [field]: [type, constraints]
|
||||
- [relationships]
|
||||
|
||||
[Model Name]:
|
||||
- [field]: [type, constraints]
|
||||
- [field]: [type, constraints]
|
||||
|
||||
These are defined in the platform requirements, but let me
|
||||
know if you see any technical issues with these structures."
|
||||
```
|
||||
|
||||
**BMad Architect validates:**
|
||||
```
|
||||
"These look good. [Or: I see a potential issue with...]"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 5: Design System (2 min)
|
||||
|
||||
**BMad Architect asks:**
|
||||
```
|
||||
"What about the design system? What components should I use?"
|
||||
```
|
||||
|
||||
**WDS UX Expert lists:**
|
||||
```
|
||||
"I've used components from our design system:
|
||||
|
||||
[Component Category]:
|
||||
- [Component Name] ([variants/states])
|
||||
- [Component Name] ([variants/states])
|
||||
|
||||
[Component Category]:
|
||||
- [Component Name] ([variants/states])
|
||||
- [Component Name] ([variants/states])
|
||||
|
||||
All components are fully specified in D-Design-System/.
|
||||
Please use these exact components - they're already designed,
|
||||
tested, and match our brand."
|
||||
```
|
||||
|
||||
**BMad Architect confirms:**
|
||||
```
|
||||
"Perfect. I'll reference those. What are the acceptance criteria?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 6: Acceptance Criteria (2 min)
|
||||
|
||||
**WDS UX Expert shares:**
|
||||
```
|
||||
"Functional requirements:
|
||||
✓ [Requirement 1]
|
||||
✓ [Requirement 2]
|
||||
✓ [Requirement 3]
|
||||
|
||||
Non-functional requirements:
|
||||
✓ [Performance requirement]
|
||||
✓ [Accessibility requirement]
|
||||
✓ [Security requirement]
|
||||
|
||||
Edge cases to handle:
|
||||
✓ [Edge case 1] → [Expected behavior]
|
||||
✓ [Edge case 2] → [Expected behavior]
|
||||
✓ [Edge case 3] → [Expected behavior]
|
||||
|
||||
These are all in the delivery document, but I wanted to
|
||||
highlight the critical ones."
|
||||
```
|
||||
|
||||
**BMad Architect acknowledges:**
|
||||
```
|
||||
"Great detail! How should I test this?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 7: Testing (2 min)
|
||||
|
||||
**WDS UX Expert explains:**
|
||||
```
|
||||
"I've created a test scenario: test-scenarios/[TS-XXX].yaml
|
||||
|
||||
It includes:
|
||||
- Happy path tests (complete flow)
|
||||
- Error state tests (all failure modes)
|
||||
- Edge case tests (unusual scenarios)
|
||||
- Design system validation (component compliance)
|
||||
- Accessibility tests (screen reader, contrast)
|
||||
- Usability tests (time to complete, user feedback)
|
||||
|
||||
After you build this, I'll run through the test scenario
|
||||
and validate that the implementation matches my design.
|
||||
|
||||
If there are issues, I'll create issue tickets with
|
||||
screenshots and references back to the specifications."
|
||||
```
|
||||
|
||||
**BMad Architect confirms:**
|
||||
```
|
||||
"Perfect. What's your estimate for complexity?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 8: Estimates & Planning (3 min)
|
||||
|
||||
**WDS UX Expert shares:**
|
||||
```
|
||||
"Size: [small|medium|large]
|
||||
Effort: [time estimate]
|
||||
Risk: [low|medium|high]
|
||||
Dependencies: [None or list of DD-XXX]
|
||||
|
||||
[Explain reasoning for estimate]"
|
||||
```
|
||||
|
||||
**BMad Architect proposes:**
|
||||
```
|
||||
"Excellent handoff! Let me break this down into development epics:
|
||||
|
||||
Epic X.1: [Name]
|
||||
- [Scope]
|
||||
- Effort: [X days]
|
||||
|
||||
Epic X.2: [Name]
|
||||
- [Scope]
|
||||
- Effort: [X days]
|
||||
|
||||
Epic X.3: [Name]
|
||||
- [Scope]
|
||||
- Effort: [X days]
|
||||
|
||||
Total: [X weeks], matches your estimate.
|
||||
|
||||
[Explain approach and reasoning]"
|
||||
```
|
||||
|
||||
**WDS UX Expert may suggest:**
|
||||
```
|
||||
"That breakdown makes sense. [Or: One suggestion...]
|
||||
|
||||
[Provide feedback on epic breakdown]"
|
||||
```
|
||||
|
||||
**BMad Architect adjusts if needed:**
|
||||
```
|
||||
"Good idea! [Revised plan if applicable]
|
||||
|
||||
I'll document this plan and start breaking down the
|
||||
implementation details."
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 9: Special Considerations (2 min)
|
||||
|
||||
**WDS UX Expert shares important notes:**
|
||||
```
|
||||
"Yes! A few important notes:
|
||||
|
||||
1. [Critical consideration]
|
||||
[Why it matters]
|
||||
[What to pay attention to]
|
||||
|
||||
2. [Important detail]
|
||||
[Context and reasoning]
|
||||
[Implementation guidance]
|
||||
|
||||
3. [Special requirement]
|
||||
[Background]
|
||||
[How to handle]
|
||||
|
||||
[Continue for all special considerations...]"
|
||||
```
|
||||
|
||||
**BMad Architect acknowledges:**
|
||||
```
|
||||
"All noted! I'll make sure to:
|
||||
- [Commitment 1]
|
||||
- [Commitment 2]
|
||||
- [Commitment 3]
|
||||
|
||||
[Summarize understanding of special considerations]"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 10: Confirmation (1 min)
|
||||
|
||||
**BMad Architect summarizes:**
|
||||
```
|
||||
"Excellent handoff! Let me summarize what I'm taking:
|
||||
|
||||
📦 Design Delivery: [DD-XXX] [Name]
|
||||
📱 User Flow: [Entry] → [Exit] (complete)
|
||||
📄 Scenarios: [N] (all specified)
|
||||
🎨 Design System: [N] components (all defined)
|
||||
⚙️ Tech Stack: [Frontend] + [Backend]
|
||||
🔌 Integrations: [N] required, [N] optional
|
||||
💾 Data Models: [N] ([list names])
|
||||
✅ Acceptance Criteria: Clear and testable
|
||||
🧪 Test Scenario: [TS-XXX] (ready for validation)
|
||||
|
||||
I'll break this down into [N] development epics:
|
||||
[List epics with effort]
|
||||
|
||||
Total: [X weeks]
|
||||
|
||||
Any concerns or special considerations I should know about?"
|
||||
```
|
||||
|
||||
**WDS UX Expert confirms or corrects:**
|
||||
```
|
||||
"[If correct:] Perfect! That's exactly right.
|
||||
|
||||
[If correction needed:] One correction: [clarification]
|
||||
|
||||
[Final notes or encouragement]
|
||||
|
||||
Design Delivery [DD-XXX] is officially handed off! 🎉
|
||||
|
||||
Looking forward to seeing this come to life. Remember:
|
||||
[Key message about design vision]"
|
||||
```
|
||||
|
||||
**BMad Architect commits:**
|
||||
```
|
||||
"Got it! I'll make sure the implementation honors your
|
||||
design vision. Talk soon!"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Agent Instructions
|
||||
|
||||
### For WDS UX Expert
|
||||
|
||||
**Your role:**
|
||||
- Be the design authority
|
||||
- Explain the "why" behind decisions
|
||||
- Share context and considerations
|
||||
- Answer questions clearly
|
||||
- Trust the architect to implement well
|
||||
|
||||
**Tone:**
|
||||
- Collaborative, not dictatorial
|
||||
- Helpful, not defensive
|
||||
- Clear, not vague
|
||||
- Confident, not arrogant
|
||||
- Encouraging, not demanding
|
||||
|
||||
**Key phrases:**
|
||||
- "Here's what I've designed..."
|
||||
- "The user value is..."
|
||||
- "I've focused on..."
|
||||
- "Please pay attention to..."
|
||||
- "Let me know if you have questions..."
|
||||
- "I trust you to implement this well"
|
||||
|
||||
**What to emphasize:**
|
||||
- User value and success criteria
|
||||
- Critical user experience details
|
||||
- Design system compliance
|
||||
- Accessibility requirements
|
||||
- Special considerations
|
||||
|
||||
**What to avoid:**
|
||||
- Micromanaging implementation details
|
||||
- Being defensive about design choices
|
||||
- Technical jargon (unless necessary)
|
||||
- Assuming architect knows context
|
||||
- Rushing through important details
|
||||
|
||||
---
|
||||
|
||||
### For BMad Architect
|
||||
|
||||
**Your role:**
|
||||
- Be the technical authority
|
||||
- Ask clarifying questions
|
||||
- Validate technical feasibility
|
||||
- Propose implementation approach
|
||||
- Commit to honoring design vision
|
||||
|
||||
**Tone:**
|
||||
- Respectful, not dismissive
|
||||
- Curious, not challenging
|
||||
- Collaborative, not adversarial
|
||||
- Professional, not casual
|
||||
- Appreciative, not critical
|
||||
|
||||
**Key phrases:**
|
||||
- "What have you got for me?"
|
||||
- "Got it. What about..."
|
||||
- "Makes sense. What..."
|
||||
- "Can you elaborate on..."
|
||||
- "Let me summarize..."
|
||||
- "I'll make sure to..."
|
||||
- "I'll honor your design vision"
|
||||
|
||||
**What to ask about:**
|
||||
- User value and success criteria
|
||||
- Technical requirements
|
||||
- Integration needs
|
||||
- Data models
|
||||
- Acceptance criteria
|
||||
- Testing approach
|
||||
- Special considerations
|
||||
|
||||
**What to avoid:**
|
||||
- Challenging design decisions
|
||||
- Suggesting alternative approaches (unless technical issue)
|
||||
- Dismissing designer's technical choices
|
||||
- Rushing through handoff
|
||||
- Making assumptions
|
||||
|
||||
---
|
||||
|
||||
## Handoff Checklist
|
||||
|
||||
### Before Handoff
|
||||
|
||||
**WDS UX Expert prepares:**
|
||||
- [ ] Design Delivery file created (DD-XXX.yaml)
|
||||
- [ ] All scenarios specified
|
||||
- [ ] Design system components defined
|
||||
- [ ] Test scenario created (TS-XXX.yaml)
|
||||
- [ ] Special considerations documented
|
||||
|
||||
**BMad Architect prepares:**
|
||||
- [ ] Platform requirements reviewed
|
||||
- [ ] Design system reviewed
|
||||
- [ ] Ready to receive handoff
|
||||
- [ ] Questions prepared
|
||||
|
||||
### During Handoff
|
||||
|
||||
- [ ] User value explained and understood
|
||||
- [ ] All scenarios walked through
|
||||
- [ ] Technical requirements shared
|
||||
- [ ] Design system components listed
|
||||
- [ ] Acceptance criteria reviewed
|
||||
- [ ] Testing approach explained
|
||||
- [ ] Complexity estimate discussed
|
||||
- [ ] Special considerations noted
|
||||
- [ ] Epic breakdown proposed
|
||||
- [ ] Both parties agree on approach
|
||||
|
||||
### After Handoff
|
||||
|
||||
**BMad Architect:**
|
||||
- [ ] Handoff summary documented
|
||||
- [ ] Epic breakdown created
|
||||
- [ ] Implementation plan documented
|
||||
- [ ] Questions or concerns flagged
|
||||
|
||||
**WDS UX Expert:**
|
||||
- [ ] Handoff marked complete
|
||||
- [ ] Waiting for implementation
|
||||
- [ ] Available for questions
|
||||
|
||||
---
|
||||
|
||||
## Handoff Variations
|
||||
|
||||
### Simple Delivery (Small Feature)
|
||||
|
||||
**Shorter handoff (~10 min):**
|
||||
- Quick user value explanation
|
||||
- Brief scenario walkthrough
|
||||
- Confirm tech requirements
|
||||
- Simple epic breakdown
|
||||
|
||||
### Complex Delivery (Large Feature)
|
||||
|
||||
**Longer handoff (~30 min):**
|
||||
- Detailed user value discussion
|
||||
- In-depth scenario walkthrough
|
||||
- Technical feasibility discussion
|
||||
- Multiple epic breakdown options
|
||||
- Risk assessment
|
||||
|
||||
### Delivery with Dependencies
|
||||
|
||||
**Include dependency discussion:**
|
||||
- Which deliveries must be done first
|
||||
- Why dependencies exist
|
||||
- How to handle if dependencies delayed
|
||||
|
||||
### Delivery with Technical Concerns
|
||||
|
||||
**Include concern resolution:**
|
||||
- Architect raises concern
|
||||
- UX Expert explains reasoning
|
||||
- Both discuss alternatives
|
||||
- Agreement on path forward
|
||||
|
||||
---
|
||||
|
||||
## Recording Handoff
|
||||
|
||||
### Handoff Log
|
||||
|
||||
**File:** `deliveries/DD-XXX-handoff-log.md`
|
||||
|
||||
```markdown
|
||||
# Handoff Log: DD-XXX [Name]
|
||||
|
||||
**Date:** 2024-12-09
|
||||
**Duration:** 20 minutes
|
||||
**Participants:** WDS UX Expert, BMad Architect
|
||||
|
||||
## Summary
|
||||
|
||||
Design Delivery DD-XXX handed off successfully.
|
||||
|
||||
## Key Points Discussed
|
||||
|
||||
- User value: [Summary]
|
||||
- Scenarios: [N] scenarios, all specified
|
||||
- Tech stack: [Frontend] + [Backend]
|
||||
- Integrations: [List]
|
||||
- Special considerations: [List]
|
||||
|
||||
## Epic Breakdown Agreed
|
||||
|
||||
- Epic X.1: [Name] ([X days])
|
||||
- Epic X.2: [Name] ([X days])
|
||||
- Epic X.3: [Name] ([X days])
|
||||
|
||||
Total: [X weeks]
|
||||
|
||||
## Questions Raised
|
||||
|
||||
Q: [Question]
|
||||
A: [Answer]
|
||||
|
||||
## Action Items
|
||||
|
||||
- [ ] Architect: Create detailed implementation plan
|
||||
- [ ] Architect: Flag any technical concerns
|
||||
- [ ] UX Expert: Available for questions
|
||||
|
||||
## Status
|
||||
|
||||
✅ Handoff complete
|
||||
⏳ Awaiting implementation
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**This protocol ensures smooth, collaborative handoffs that build trust and ensure quality!** 🤝✨
|
||||
|
|
@ -1,547 +0,0 @@
|
|||
# WDS ↔ BMad Method Integration Guide
|
||||
|
||||
**Complete guide for seamless design-to-development workflow**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
WDS (Whiteport Design Studio) and BMad Method integrate seamlessly to create a complete product development workflow:
|
||||
|
||||
- **WDS:** Design-first methodology (Phases 1-7)
|
||||
- **BMad:** Development methodology (Phases 1-3)
|
||||
- **Integration:** 3 clean touch points
|
||||
|
||||
---
|
||||
|
||||
## The Complete Workflow
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ WDS: Design Phase │
|
||||
├─────────────────────────────────────────────────────────────┤
|
||||
│ Phase 1: Project Brief → [WDS overides BMad] │
|
||||
│ Phase 2: Trigger Map │
|
||||
│ Phase 3: Platform Requirements → [Touch Point 1: WDS→BMad] │
|
||||
│ Phase 4: UX Design │
|
||||
│ Phase 5: Design System │
|
||||
│ Phase 6: Design Deliveries → [Touch Point 2: WDS→BMad] │
|
||||
│ Phase 7: Testing ← [Touch Point 3: BMad→WDS] │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
↓
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ BMad: Development Phase │
|
||||
├─────────────────────────────────────────────────────────────┤
|
||||
│ Phase 1: Architecture ← [Reads Touch Points 1, 2] │
|
||||
│ Phase 2: Implementation │
|
||||
│ Phase 3: Testing → [Touch Point 3: BMad→WDS] │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## The 3 Touch Points
|
||||
|
||||
### Touch Point 1: Platform Requirements
|
||||
|
||||
**When:** WDS Phase 3 Complete
|
||||
**Direction:** WDS → BMad (WDS overrides BMad)
|
||||
**File:** `A-Project-Brief/platform-requirements.yaml`
|
||||
|
||||
**What:** Tech stack, integrations, constraints
|
||||
**Why:** Designer (with stakeholders) defines technical foundation
|
||||
**BMad Action:** Read and respect these choices, design architecture accordingly
|
||||
|
||||
**Read:** [platform-requirements-spec.md](platform-requirements-spec.md)
|
||||
|
||||
---
|
||||
|
||||
### Touch Point 2: Design Deliveries
|
||||
|
||||
**When:** WDS Phase 6 Complete
|
||||
**Direction:** WDS → BMad (Complete design handoff)
|
||||
**Files:**
|
||||
- `deliveries/DD-*.yaml` (Design Deliveries)
|
||||
- `C-Scenarios/` (All scenario specifications)
|
||||
- `D-Design-System/` (Component library)
|
||||
- `test-scenarios/TS-*.yaml` (Test scenarios)
|
||||
|
||||
**What:** Complete design package with all scenarios, components, and test criteria
|
||||
**Why:** Single handoff of ALL design work at once
|
||||
**BMad Action:** Read everything, break down into dev epics, implement features
|
||||
|
||||
**Includes:**
|
||||
- Multi-agent handoff dialog (20-min structured conversation)
|
||||
- All design deliveries packaged as testable epics
|
||||
- Complete design system specifications
|
||||
- Test scenarios for validation
|
||||
|
||||
**Read:**
|
||||
- [design-delivery-spec.md](design-delivery-spec.md)
|
||||
- [handoff-protocol.md](handoff-protocol.md)
|
||||
|
||||
---
|
||||
|
||||
### Touch Point 3: Designer Validation
|
||||
|
||||
**When:** After BMad Implementation Complete
|
||||
**Direction:** BMad → WDS (BMad integrates with WDS testing)
|
||||
**Files:**
|
||||
- `test-reports/TR-*.md` (Test results)
|
||||
- `issues/ISS-*.md` (Issues found)
|
||||
|
||||
**What:** BMad requests designer validation, designer tests and approves
|
||||
**Why:** Ensure implementation matches design vision and quality standards
|
||||
**WDS Action:** Run test scenarios, create issues if needed, sign off when approved
|
||||
**BMad Action:** Fix issues, retest until designer approval
|
||||
|
||||
**Process:**
|
||||
1. BMad notifies WDS: "Feature complete, ready for validation"
|
||||
2. WDS runs test scenarios
|
||||
3. WDS creates issues if problems found
|
||||
4. BMad fixes issues
|
||||
5. Repeat until WDS signs off
|
||||
|
||||
**Read:** [testing-protocol.md](testing-protocol.md) *(to be created)*
|
||||
|
||||
---
|
||||
|
||||
## File Structure
|
||||
|
||||
```
|
||||
project/
|
||||
├── A-Project-Brief/
|
||||
│ ├── project-brief.md
|
||||
│ └── platform-requirements.yaml ← Touch Point 1
|
||||
│
|
||||
├── B-Trigger-Map/
|
||||
│ └── trigger-map.md
|
||||
│
|
||||
├── C-Scenarios/
|
||||
│ ├── 01-welcome-screen/
|
||||
│ │ └── Frontend/
|
||||
│ │ └── specifications.md
|
||||
│ └── flows/
|
||||
│ └── user-flow.excalidraw
|
||||
│
|
||||
├── D-Design-System/ ← Touch Point 3
|
||||
│ ├── 02-Foundation/
|
||||
│ │ ├── Colors/tokens.json
|
||||
│ │ └── Typography/tokens.json
|
||||
│ └── 03-Atomic-Components/
|
||||
│ ├── Buttons/Button-Primary.md
|
||||
│ └── Inputs/Input-Text.md
|
||||
│
|
||||
├── deliveries/ ← Touch Point 2
|
||||
│ ├── DD-001-login-onboarding.yaml
|
||||
│ ├── DD-002-morning-dog-care.yaml
|
||||
│ └── DD-001-handoff-log.md
|
||||
│
|
||||
├── test-scenarios/ ← Touch Point 2
|
||||
│ ├── TS-001-login-onboarding.yaml
|
||||
│ └── TS-002-morning-dog-care.yaml
|
||||
│
|
||||
├── test-reports/ ← Touch Point 3
|
||||
│ ├── TR-001-2024-12-09.md
|
||||
│ └── TR-001-2024-12-15.md
|
||||
│
|
||||
├── issues/ ← Touch Point 3
|
||||
│ ├── ISS-001-button-color.md
|
||||
│ └── ISS-002-transition-speed.md
|
||||
│
|
||||
└── E-Architecture/ ← BMad creates this
|
||||
├── architecture.md
|
||||
└── epics/
|
||||
├── epic-1.1-auth-infrastructure.md
|
||||
└── epic-1.2-welcome-login.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## For WDS Users
|
||||
|
||||
### Phase 3: Define Platform Requirements
|
||||
|
||||
**Create:** `A-Project-Brief/platform-requirements.yaml`
|
||||
|
||||
```yaml
|
||||
platform:
|
||||
frontend:
|
||||
framework: "react_native"
|
||||
backend:
|
||||
framework: "supabase"
|
||||
|
||||
integrations:
|
||||
- name: "supabase_auth"
|
||||
required: true
|
||||
|
||||
constraints:
|
||||
- "Must work offline"
|
||||
- "Must be accessible"
|
||||
```
|
||||
|
||||
**This overrides BMad's tech stack decisions!**
|
||||
|
||||
**Template:** `templates/platform-requirements.template.yaml`
|
||||
|
||||
---
|
||||
|
||||
### Phase 4-5: Design Complete Testable Flows
|
||||
|
||||
**Strategic Approach:**
|
||||
Design until you have a **complete testable user flow** that:
|
||||
- ✅ Delivers value to the business
|
||||
- ✅ Delivers value to the end user
|
||||
- ✅ Can be tested for real feedback
|
||||
- ✅ Is ready to hand off for development
|
||||
|
||||
**You're NOT designing everything at once!** You're designing the minimum complete flow that can be tested and validated.
|
||||
|
||||
**Phase 4: UX Design**
|
||||
- Design scenarios for ONE complete user flow
|
||||
- Create specifications for each scenario
|
||||
- Ensure the flow delivers measurable value
|
||||
- Verify it's testable end-to-end
|
||||
|
||||
**Phase 5: Design System**
|
||||
- Define components needed for THIS flow
|
||||
- Create design tokens for these components
|
||||
- Document usage guidelines
|
||||
- Build only what's needed for this delivery
|
||||
|
||||
**Goal:** Get to development and testing as fast as possible with a complete, valuable flow
|
||||
|
||||
```
|
||||
D-Design-System/
|
||||
├── 02-Foundation/
|
||||
│ ├── Colors/tokens.json
|
||||
│ ├── Typography/tokens.json
|
||||
│ └── Spacing/tokens.json
|
||||
└── 03-Atomic-Components/
|
||||
├── Buttons/
|
||||
├── Inputs/
|
||||
└── Cards/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 6: Design Deliveries (Iterative Handoffs)
|
||||
|
||||
**You can hand off as soon as you have ONE complete testable flow!**
|
||||
|
||||
**Iterative Approach:**
|
||||
|
||||
**First Delivery (Fastest Path to Testing):**
|
||||
1. **Design ONE complete user flow** (Phases 4-5)
|
||||
- Example: Login & Onboarding
|
||||
- Delivers value: Users can access the app
|
||||
- Testable: Complete flow from app open to dashboard
|
||||
|
||||
2. **Create Design Delivery** for this flow
|
||||
- `deliveries/DD-001-login-onboarding.yaml`
|
||||
|
||||
3. **Create Test Scenario**
|
||||
- `test-scenarios/TS-001-login-onboarding.yaml`
|
||||
|
||||
4. **Handoff Dialog** with BMad Architect (~20-30 min)
|
||||
- Walk through this delivery
|
||||
- Answer questions
|
||||
- Agree on implementation approach
|
||||
|
||||
5. **Hand off to BMad** → Development starts!
|
||||
|
||||
**While BMad builds DD-001, you design DD-002:**
|
||||
- Continue with next complete flow
|
||||
- Example: Morning Dog Care
|
||||
- Hand off when ready
|
||||
- Parallel work = faster delivery
|
||||
|
||||
**Benefits:**
|
||||
- ✅ Get to testing faster (weeks, not months)
|
||||
- ✅ Validate design with real users early
|
||||
- ✅ Learn and iterate before designing everything
|
||||
- ✅ Parallel work (design + dev happening simultaneously)
|
||||
- ✅ Deliver value incrementally
|
||||
|
||||
**Templates:**
|
||||
- `templates/design-delivery.template.yaml`
|
||||
- `templates/test-scenario.template.yaml`
|
||||
|
||||
---
|
||||
|
||||
### Phase 7: Testing (After BMad Implementation)
|
||||
|
||||
**Wait for BMad notification:**
|
||||
```
|
||||
"Feature complete: DD-001 Login & Onboarding
|
||||
Ready for designer validation"
|
||||
```
|
||||
|
||||
**Then:**
|
||||
1. **Run test scenarios**
|
||||
2. **Create issues** if problems found
|
||||
3. **Wait for fixes**
|
||||
4. **Retest** until approved
|
||||
5. **Sign off** when quality meets standards
|
||||
|
||||
---
|
||||
|
||||
## For BMad Users
|
||||
|
||||
### Detect WDS Artifacts
|
||||
|
||||
**Check for WDS:**
|
||||
|
||||
```bash
|
||||
# Priority 1: Design Deliveries
|
||||
if [ -d "deliveries" ]; then
|
||||
echo "✓ WDS Design Deliveries found"
|
||||
mode="wds-enhanced"
|
||||
|
||||
# Priority 2: Platform Requirements
|
||||
elif [ -f "A-Project-Brief/platform-requirements.yaml" ]; then
|
||||
echo "✓ WDS Platform Requirements found"
|
||||
mode="wds-basic"
|
||||
|
||||
# Priority 3: Traditional
|
||||
else
|
||||
echo "⚠ No WDS artifacts"
|
||||
mode="traditional"
|
||||
fi
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Read Platform Requirements
|
||||
|
||||
**Load tech stack decisions:**
|
||||
|
||||
```python
|
||||
import yaml
|
||||
|
||||
with open('A-Project-Brief/platform-requirements.yaml') as f:
|
||||
reqs = yaml.safe_load(f)
|
||||
|
||||
frontend = reqs['platform']['frontend']['framework']
|
||||
backend = reqs['platform']['backend']['framework']
|
||||
|
||||
print(f"Tech Stack: {frontend} + {backend}")
|
||||
```
|
||||
|
||||
**Respect these choices - designer already decided**
|
||||
|
||||
---
|
||||
|
||||
### Read Design Deliveries
|
||||
|
||||
**Load design work:**
|
||||
|
||||
```python
|
||||
import yaml
|
||||
|
||||
with open('deliveries/DD-001-login-onboarding.yaml') as f:
|
||||
delivery = yaml.safe_load(f)
|
||||
|
||||
name = delivery['delivery']['name']
|
||||
scenarios = delivery['design_artifacts']['scenarios']
|
||||
|
||||
print(f"Delivery: {name}")
|
||||
print(f"Scenarios: {len(scenarios)}")
|
||||
```
|
||||
|
||||
**Break down into development epics**
|
||||
|
||||
---
|
||||
|
||||
### Participate in Handoff Dialog
|
||||
|
||||
**When Design Delivery is ready:**
|
||||
|
||||
1. **Receive handoff** from WDS UX Expert
|
||||
2. **Ask clarifying questions**
|
||||
3. **Propose epic breakdown**
|
||||
4. **Commit to implementation**
|
||||
5. **Document handoff**
|
||||
|
||||
**Protocol:** [handoff-protocol.md](handoff-protocol.md)
|
||||
|
||||
---
|
||||
|
||||
### Notify Designer When Ready
|
||||
|
||||
**After implementation:**
|
||||
|
||||
```
|
||||
"Feature complete: DD-001 Login & Onboarding
|
||||
|
||||
Implemented:
|
||||
✓ All 4 scenarios
|
||||
✓ All error states
|
||||
✓ All edge cases
|
||||
✓ Design system components
|
||||
|
||||
Build: v0.1.0-beta.1
|
||||
Ready for designer validation.
|
||||
Test scenario: test-scenarios/TS-001.yaml"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Receive Issues & Fix
|
||||
|
||||
**Designer finds issues:**
|
||||
|
||||
```markdown
|
||||
# Issue: Button Color Incorrect
|
||||
|
||||
**Severity:** High
|
||||
**Expected:** #2563EB
|
||||
**Actual:** #3B82F6
|
||||
**Design Ref:** D-Design-System/.../Button-Primary.md
|
||||
```
|
||||
|
||||
**Fix and notify:**
|
||||
|
||||
```
|
||||
"Issue ISS-001 fixed.
|
||||
Build: v0.1.0-beta.2
|
||||
Ready for retest."
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Benefits
|
||||
|
||||
### For Designers
|
||||
|
||||
- ✅ Control over tech stack decisions (Touch Point 1)
|
||||
- ✅ Complete design work before handoff (Phases 4-5)
|
||||
- ✅ Single clean handoff (Touch Point 2)
|
||||
- ✅ Validate implementation matches design (Touch Point 3)
|
||||
- ✅ Design integrity maintained throughout
|
||||
|
||||
### For Developers
|
||||
|
||||
- ✅ Clear tech stack from the start (Touch Point 1)
|
||||
- ✅ Complete design package at once (Touch Point 2)
|
||||
- ✅ All requirements and specifications provided
|
||||
- ✅ Design system components fully defined
|
||||
- ✅ Testing guidance included
|
||||
- ✅ Designer validation ensures quality (Touch Point 3)
|
||||
|
||||
### For Teams
|
||||
|
||||
- ✅ 3 clean integration points (not 7!)
|
||||
- ✅ Seamless design-to-development workflow
|
||||
- ✅ Reduced miscommunication
|
||||
- ✅ Faster iteration cycles
|
||||
- ✅ Higher quality products
|
||||
- ✅ Complete traceability
|
||||
|
||||
---
|
||||
|
||||
## Graceful Fallback
|
||||
|
||||
### BMad Without WDS
|
||||
|
||||
**BMad works standalone:**
|
||||
|
||||
```bash
|
||||
if [ ! -d "deliveries" ]; then
|
||||
echo "No WDS artifacts - using traditional workflow"
|
||||
# Gather requirements
|
||||
# Design architecture
|
||||
# Implement features
|
||||
fi
|
||||
```
|
||||
|
||||
**No WDS required - BMad is independent**
|
||||
|
||||
---
|
||||
|
||||
## Quick Start
|
||||
|
||||
### For WDS Projects
|
||||
|
||||
**Phase 1-2:** Discovery (Project Brief, Trigger Map)
|
||||
**Phase 3:** Platform Requirements → **Touch Point 1**
|
||||
|
||||
**Then iterate:**
|
||||
**Phase 4-5:** Design ONE complete testable flow
|
||||
**Phase 6:** Create delivery and handoff → **Touch Point 2**
|
||||
**Phase 7:** Wait for implementation, then validate → **Touch Point 3**
|
||||
|
||||
**Repeat Phases 4-7 for each flow:**
|
||||
- While BMad builds flow 1, design flow 2
|
||||
- Parallel work = faster delivery
|
||||
- Test and learn early
|
||||
|
||||
### For BMad Projects
|
||||
|
||||
**Check for Touch Point 1:** Platform Requirements
|
||||
- If found: Read and respect tech stack
|
||||
- If not found: Make your own decisions
|
||||
|
||||
**Wait for Touch Point 2:** Design Deliveries
|
||||
- Receive complete design package
|
||||
- Break down into dev epics
|
||||
- Implement features
|
||||
|
||||
**Trigger Touch Point 3:** Request validation
|
||||
- Notify designer when complete
|
||||
- Fix issues as needed
|
||||
- Iterate until sign-off
|
||||
|
||||
---
|
||||
|
||||
## Resources
|
||||
|
||||
### Specifications
|
||||
|
||||
- [Design Delivery Spec](design-delivery-spec.md)
|
||||
- [Platform Requirements Spec](platform-requirements-spec.md)
|
||||
- [Handoff Protocol](handoff-protocol.md)
|
||||
|
||||
### Templates
|
||||
|
||||
- `templates/design-delivery.template.yaml`
|
||||
- `templates/platform-requirements.template.yaml`
|
||||
- `templates/test-scenario.template.yaml`
|
||||
|
||||
### Examples
|
||||
|
||||
- See `WDS-V6-CONVERSION-ROADMAP.md` for integration details
|
||||
- See `workflows/` for workflow documentation
|
||||
|
||||
---
|
||||
|
||||
## Summary
|
||||
|
||||
### The 3 Touch Points
|
||||
|
||||
1. **Platform Requirements** (WDS Phase 3 → BMad)
|
||||
- WDS overrides BMad's tech stack decisions
|
||||
- Designer defines technical foundation
|
||||
|
||||
2. **Design Deliveries** (WDS Phase 6 → BMad)
|
||||
- Complete design package handed off at once
|
||||
- Includes all scenarios, components, test scenarios
|
||||
- Single handoff with multi-agent dialog
|
||||
|
||||
3. **Designer Validation** (BMad Phase 3 → WDS Phase 7)
|
||||
- BMad requests validation when complete
|
||||
- Designer tests and creates issues if needed
|
||||
- Iterates until sign-off
|
||||
|
||||
### Why 3 Touch Points?
|
||||
|
||||
**Cleaner:** Not 7 continuous integration points
|
||||
**Simpler:** Clear separation of concerns
|
||||
**Realistic:** Matches how teams actually work
|
||||
**Iterative:** Design → Handoff → Build → Test → Repeat
|
||||
**Fast:** Get to testing in weeks, not months
|
||||
**Quality:** Designer validates before ship
|
||||
|
||||
---
|
||||
|
||||
**This integration creates a seamless design-to-development workflow with 3 clean touch points that respect both design vision and technical excellence!** 🔗✨
|
||||
|
|
@ -1,549 +0,0 @@
|
|||
# WDS Platform Requirements Specification
|
||||
|
||||
**For BMad Agents: How to read and interpret WDS Platform Requirements**
|
||||
|
||||
---
|
||||
|
||||
## What are Platform Requirements?
|
||||
|
||||
Platform Requirements define the technical foundation for the product:
|
||||
- Tech stack choices (frontend, backend, database)
|
||||
- Required integrations
|
||||
- Infrastructure constraints
|
||||
- Deployment strategy
|
||||
|
||||
**Purpose:** Provide technical foundation before detailed design begins
|
||||
|
||||
**Location:** `A-Project-Brief/platform-requirements.yaml`
|
||||
|
||||
**Created by:** WDS Analyst (Phase 3)
|
||||
**Consumed by:** BMad Architect
|
||||
|
||||
---
|
||||
|
||||
## File Format
|
||||
|
||||
```yaml
|
||||
# Platform Requirements
|
||||
# Created by: WDS Phase 3
|
||||
# Consumed by: BMad Architecture Phase
|
||||
|
||||
project:
|
||||
name: "Dog Week"
|
||||
type: "mobile_app" # mobile_app | web_app | desktop_app | api
|
||||
wds_version: "6.0"
|
||||
created_at: "2024-12-09T10:00:00Z"
|
||||
|
||||
platform:
|
||||
frontend:
|
||||
framework: "react_native"
|
||||
version: "0.72"
|
||||
state_management: "zustand"
|
||||
navigation: "react_navigation"
|
||||
styling: "tailwind"
|
||||
ui_library: "shadcn" # optional
|
||||
|
||||
backend:
|
||||
framework: "supabase"
|
||||
version: "2.x"
|
||||
auth: "supabase_auth"
|
||||
database: "postgresql"
|
||||
storage: "supabase_storage"
|
||||
api: "rest" # rest | graphql | grpc
|
||||
|
||||
database:
|
||||
type: "postgresql"
|
||||
version: "15"
|
||||
orm: "prisma" # optional
|
||||
|
||||
deployment:
|
||||
frontend: "expo_eas"
|
||||
backend: "supabase_cloud"
|
||||
ci_cd: "github_actions"
|
||||
hosting: "vercel" # if web app
|
||||
|
||||
integrations:
|
||||
- name: "push_notifications"
|
||||
provider: "expo"
|
||||
required: true
|
||||
purpose: "Task reminders and family updates"
|
||||
|
||||
- name: "image_upload"
|
||||
provider: "cloudinary"
|
||||
required: false
|
||||
purpose: "Dog photos and user avatars"
|
||||
|
||||
- name: "analytics"
|
||||
provider: "posthog"
|
||||
required: false
|
||||
purpose: "User behavior tracking"
|
||||
|
||||
constraints:
|
||||
- "Must work offline (core features)"
|
||||
- "Must support iOS 14+ and Android 10+"
|
||||
- "Must be accessible (WCAG 2.1 AA)"
|
||||
- "Must handle slow networks gracefully"
|
||||
- "Must support family sharing (multi-user)"
|
||||
- "Must sync in real-time across devices"
|
||||
|
||||
performance_requirements:
|
||||
- "App launch < 2 seconds"
|
||||
- "Screen transitions < 300ms"
|
||||
- "API response time < 500ms"
|
||||
- "Offline mode must work for 7 days"
|
||||
|
||||
security_requirements:
|
||||
- "End-to-end encryption for family data"
|
||||
- "Secure password storage (bcrypt)"
|
||||
- "OAuth 2.0 for third-party auth"
|
||||
- "GDPR compliant data handling"
|
||||
|
||||
wds_metadata:
|
||||
project_brief: "A-Project-Brief/project-brief.md"
|
||||
trigger_map: "B-Trigger-Map/trigger-map.md"
|
||||
scenarios: "C-Scenarios/"
|
||||
design_system: "D-Design-System/"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## How to Read Platform Requirements
|
||||
|
||||
### Step 1: Check if File Exists
|
||||
|
||||
```bash
|
||||
if [ -f "A-Project-Brief/platform-requirements.yaml" ]; then
|
||||
echo "✓ WDS Platform Requirements found!"
|
||||
else
|
||||
echo "⚠ No platform requirements - using traditional workflow"
|
||||
fi
|
||||
```
|
||||
|
||||
### Step 2: Load Requirements
|
||||
|
||||
```python
|
||||
import yaml
|
||||
|
||||
with open('A-Project-Brief/platform-requirements.yaml') as f:
|
||||
reqs = yaml.safe_load(f)
|
||||
|
||||
project_name = reqs['project']['name']
|
||||
project_type = reqs['project']['type']
|
||||
|
||||
print(f"Project: {project_name}")
|
||||
print(f"Type: {project_type}")
|
||||
```
|
||||
|
||||
### Step 3: Extract Tech Stack
|
||||
|
||||
```python
|
||||
# Frontend
|
||||
frontend = reqs['platform']['frontend']
|
||||
print(f"Frontend Framework: {frontend['framework']} v{frontend['version']}")
|
||||
print(f"State Management: {frontend['state_management']}")
|
||||
print(f"Navigation: {frontend['navigation']}")
|
||||
print(f"Styling: {frontend['styling']}")
|
||||
|
||||
# Backend
|
||||
backend = reqs['platform']['backend']
|
||||
print(f"Backend Framework: {backend['framework']} v{backend['version']}")
|
||||
print(f"Auth: {backend['auth']}")
|
||||
print(f"Database: {backend['database']}")
|
||||
print(f"Storage: {backend['storage']}")
|
||||
```
|
||||
|
||||
### Step 4: Extract Integrations
|
||||
|
||||
```python
|
||||
integrations = reqs['integrations']
|
||||
|
||||
required_integrations = [i for i in integrations if i['required']]
|
||||
optional_integrations = [i for i in integrations if not i['required']]
|
||||
|
||||
print("Required Integrations:")
|
||||
for integration in required_integrations:
|
||||
print(f" - {integration['name']} ({integration['provider']})")
|
||||
print(f" Purpose: {integration['purpose']}")
|
||||
|
||||
print("\nOptional Integrations:")
|
||||
for integration in optional_integrations:
|
||||
print(f" - {integration['name']} ({integration['provider']})")
|
||||
print(f" Purpose: {integration['purpose']}")
|
||||
```
|
||||
|
||||
### Step 5: Extract Constraints
|
||||
|
||||
```python
|
||||
constraints = reqs['constraints']
|
||||
|
||||
print("Constraints:")
|
||||
for constraint in constraints:
|
||||
print(f" - {constraint}")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Using Platform Requirements in Architecture
|
||||
|
||||
### Respect Designer Decisions
|
||||
|
||||
**The designer (with stakeholders) has already decided:**
|
||||
- ✅ Tech stack
|
||||
- ✅ Integrations
|
||||
- ✅ Constraints
|
||||
- ✅ Performance targets
|
||||
- ✅ Security requirements
|
||||
|
||||
**Your job:** Design architecture that fits these choices
|
||||
|
||||
**NOT your job:** Second-guess or change these decisions
|
||||
|
||||
### Exception: Technical Concerns
|
||||
|
||||
If you see a problem, flag it clearly:
|
||||
|
||||
```
|
||||
⚠️ TECHNICAL CONCERN
|
||||
|
||||
Platform Requirements specify:
|
||||
- Frontend: React Native
|
||||
- Backend: Supabase
|
||||
- Integration: Firebase Cloud Messaging (FCM)
|
||||
|
||||
ISSUE: Supabase has built-in push notifications via Supabase Realtime.
|
||||
Using FCM adds unnecessary complexity.
|
||||
|
||||
RECOMMENDATION: Discuss with designer whether to:
|
||||
1. Use Supabase Realtime instead of FCM
|
||||
2. Keep FCM if there's a specific reason
|
||||
|
||||
Do NOT proceed until resolved.
|
||||
```
|
||||
|
||||
### Architecture Design
|
||||
|
||||
```markdown
|
||||
# Architecture Design: Dog Week
|
||||
|
||||
## Tech Stack (from Platform Requirements)
|
||||
|
||||
### Frontend
|
||||
- Framework: React Native 0.72
|
||||
- State: Zustand
|
||||
- Navigation: React Navigation
|
||||
- Styling: Tailwind CSS
|
||||
|
||||
### Backend
|
||||
- Framework: Supabase 2.x
|
||||
- Auth: Supabase Auth
|
||||
- Database: PostgreSQL 15
|
||||
- Storage: Supabase Storage
|
||||
|
||||
### Deployment
|
||||
- Frontend: Expo EAS
|
||||
- Backend: Supabase Cloud
|
||||
- CI/CD: GitHub Actions
|
||||
|
||||
## Architecture Decisions
|
||||
|
||||
Based on platform requirements, I will:
|
||||
|
||||
1. **Use Supabase as BaaS**
|
||||
- Handles auth, database, storage, real-time
|
||||
- Reduces backend complexity
|
||||
- Matches designer's choice
|
||||
|
||||
2. **Implement Offline-First Architecture**
|
||||
- Constraint: "Must work offline (core features)"
|
||||
- Use React Native AsyncStorage for local cache
|
||||
- Sync with Supabase when online
|
||||
|
||||
3. **Real-Time Sync**
|
||||
- Constraint: "Must sync in real-time across devices"
|
||||
- Use Supabase Realtime subscriptions
|
||||
- Conflict resolution: last-write-wins
|
||||
|
||||
4. **Performance Optimization**
|
||||
- Requirement: "App launch < 2 seconds"
|
||||
- Lazy load screens
|
||||
- Cache critical data locally
|
||||
- Optimize bundle size
|
||||
|
||||
[Continue with detailed architecture...]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Integration with Design Deliveries
|
||||
|
||||
### Platform Requirements Come First
|
||||
|
||||
```
|
||||
Phase 3: Platform Requirements defined
|
||||
↓
|
||||
Phase 4: Design Deliveries created
|
||||
↓
|
||||
Design Deliveries reference Platform Requirements
|
||||
```
|
||||
|
||||
### Example
|
||||
|
||||
**Platform Requirements:**
|
||||
```yaml
|
||||
platform:
|
||||
frontend:
|
||||
framework: "react_native"
|
||||
backend:
|
||||
framework: "supabase"
|
||||
```
|
||||
|
||||
**Design Delivery DD-001:**
|
||||
```yaml
|
||||
technical_requirements:
|
||||
platform:
|
||||
frontend: "react_native" # Matches platform requirements
|
||||
backend: "supabase" # Matches platform requirements
|
||||
```
|
||||
|
||||
**Your job:** Ensure consistency between platform requirements and design deliveries
|
||||
|
||||
---
|
||||
|
||||
## Constraints and Requirements
|
||||
|
||||
### Types of Constraints
|
||||
|
||||
**Technical Constraints:**
|
||||
```yaml
|
||||
constraints:
|
||||
- "Must work offline (core features)"
|
||||
- "Must support iOS 14+ and Android 10+"
|
||||
```
|
||||
|
||||
**Business Constraints:**
|
||||
```yaml
|
||||
constraints:
|
||||
- "Must launch in 3 months"
|
||||
- "Must support 10,000 concurrent users"
|
||||
```
|
||||
|
||||
**Regulatory Constraints:**
|
||||
```yaml
|
||||
constraints:
|
||||
- "Must be GDPR compliant"
|
||||
- "Must be WCAG 2.1 AA accessible"
|
||||
```
|
||||
|
||||
### Handling Constraints
|
||||
|
||||
**Each constraint affects architecture:**
|
||||
|
||||
```markdown
|
||||
Constraint: "Must work offline (core features)"
|
||||
|
||||
Architecture Impact:
|
||||
- Implement local data cache
|
||||
- Sync strategy when online
|
||||
- Conflict resolution
|
||||
- Offline UI indicators
|
||||
|
||||
Implementation:
|
||||
- Use AsyncStorage for local cache
|
||||
- Supabase Realtime for sync
|
||||
- Optimistic UI updates
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Performance Requirements
|
||||
|
||||
### Understanding Performance Targets
|
||||
|
||||
```yaml
|
||||
performance_requirements:
|
||||
- "App launch < 2 seconds"
|
||||
- "Screen transitions < 300ms"
|
||||
- "API response time < 500ms"
|
||||
```
|
||||
|
||||
### Architecture Decisions
|
||||
|
||||
```markdown
|
||||
Performance Requirement: "App launch < 2 seconds"
|
||||
|
||||
Architecture Decisions:
|
||||
1. Lazy load non-critical screens
|
||||
2. Cache authentication state
|
||||
3. Preload critical data
|
||||
4. Optimize bundle size
|
||||
5. Use code splitting
|
||||
|
||||
Measurement:
|
||||
- Add performance monitoring
|
||||
- Track launch time in analytics
|
||||
- Set up alerts if > 2 seconds
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Security Requirements
|
||||
|
||||
### Understanding Security Needs
|
||||
|
||||
```yaml
|
||||
security_requirements:
|
||||
- "End-to-end encryption for family data"
|
||||
- "Secure password storage (bcrypt)"
|
||||
- "OAuth 2.0 for third-party auth"
|
||||
```
|
||||
|
||||
### Architecture Decisions
|
||||
|
||||
```markdown
|
||||
Security Requirement: "End-to-end encryption for family data"
|
||||
|
||||
Architecture Decisions:
|
||||
1. Generate encryption keys per family
|
||||
2. Store keys securely (device keychain)
|
||||
3. Encrypt data before sending to server
|
||||
4. Decrypt data on device only
|
||||
|
||||
Implementation:
|
||||
- Use expo-crypto for encryption
|
||||
- Use expo-secure-store for key storage
|
||||
- Implement key rotation strategy
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Deployment Strategy
|
||||
|
||||
### Understanding Deployment
|
||||
|
||||
```yaml
|
||||
deployment:
|
||||
frontend: "expo_eas"
|
||||
backend: "supabase_cloud"
|
||||
ci_cd: "github_actions"
|
||||
```
|
||||
|
||||
### Architecture Decisions
|
||||
|
||||
```markdown
|
||||
Deployment: Expo EAS + Supabase Cloud + GitHub Actions
|
||||
|
||||
CI/CD Pipeline:
|
||||
1. Push to GitHub
|
||||
2. GitHub Actions runs tests
|
||||
3. Build app with Expo EAS
|
||||
4. Deploy backend to Supabase
|
||||
5. Submit to App Store / Play Store
|
||||
|
||||
Environments:
|
||||
- Development: dev.supabase.co
|
||||
- Staging: staging.supabase.co
|
||||
- Production: prod.supabase.co
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## WDS Metadata
|
||||
|
||||
### Understanding Metadata
|
||||
|
||||
```yaml
|
||||
wds_metadata:
|
||||
project_brief: "A-Project-Brief/project-brief.md"
|
||||
trigger_map: "B-Trigger-Map/trigger-map.md"
|
||||
scenarios: "C-Scenarios/"
|
||||
design_system: "D-Design-System/"
|
||||
```
|
||||
|
||||
**This tells you where to find additional context:**
|
||||
|
||||
```python
|
||||
# Read project brief for business context
|
||||
with open('A-Project-Brief/project-brief.md') as f:
|
||||
brief = f.read()
|
||||
# Understand project vision, goals, stakeholders
|
||||
|
||||
# Read trigger map for user needs
|
||||
with open('B-Trigger-Map/trigger-map.md') as f:
|
||||
triggers = f.read()
|
||||
# Understand user trigger moments and needs
|
||||
|
||||
# Check scenarios directory
|
||||
scenarios = os.listdir('C-Scenarios/')
|
||||
print(f"Found {len(scenarios)} scenarios")
|
||||
|
||||
# Check design system
|
||||
ds_exists = os.path.exists('D-Design-System/')
|
||||
print(f"Design system: {'✓ Available' if ds_exists else '⏳ Not yet'}")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Fallback: No Platform Requirements
|
||||
|
||||
If platform requirements don't exist:
|
||||
|
||||
### Option 1: Traditional BMad Workflow
|
||||
|
||||
```bash
|
||||
if [ ! -f "A-Project-Brief/platform-requirements.yaml" ]; then
|
||||
echo "⚠ No WDS Platform Requirements"
|
||||
echo " Using traditional BMad workflow"
|
||||
echo " Gather requirements and make tech stack decisions"
|
||||
fi
|
||||
```
|
||||
|
||||
### Option 2: Wait for WDS
|
||||
|
||||
```bash
|
||||
if [ -f "A-Project-Brief/project-brief.md" ]; then
|
||||
echo "✓ WDS Project Brief found"
|
||||
echo " WDS is being used, but Phase 3 not complete yet"
|
||||
echo " Wait for platform requirements to be defined"
|
||||
fi
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
### File Location
|
||||
|
||||
```
|
||||
A-Project-Brief/
|
||||
├── project-brief.md
|
||||
└── platform-requirements.yaml ← This file
|
||||
```
|
||||
|
||||
### Key Fields
|
||||
|
||||
```yaml
|
||||
project.name # Project name
|
||||
project.type # mobile_app | web_app | desktop_app
|
||||
platform.frontend.framework # Frontend framework
|
||||
platform.backend.framework # Backend framework
|
||||
integrations # Required/optional integrations
|
||||
constraints # Technical/business/regulatory
|
||||
performance_requirements # Performance targets
|
||||
security_requirements # Security needs
|
||||
deployment # Deployment strategy
|
||||
wds_metadata # Links to other WDS artifacts
|
||||
```
|
||||
|
||||
### Reading Order
|
||||
|
||||
1. **Project info** → Understand what you're building
|
||||
2. **Tech stack** → Understand technology choices
|
||||
3. **Integrations** → Understand external dependencies
|
||||
4. **Constraints** → Understand limitations
|
||||
5. **Performance** → Understand targets
|
||||
6. **Security** → Understand security needs
|
||||
7. **Deployment** → Understand deployment strategy
|
||||
|
||||
---
|
||||
|
||||
**This specification enables BMad to respect and build upon WDS platform decisions!** ⚙️✨
|
||||
|
|
@ -36,7 +36,7 @@ Agentic Development is a **workflow approach** that produces various outputs:
|
|||
**When awakened, always check for pending dialogs:**
|
||||
|
||||
```
|
||||
1. Check: docs/F-Agent-Dialogs/
|
||||
1. Check: {output_folder}/_progress/agent-dialogs/
|
||||
2. Find dialogs where:
|
||||
- Status = "Not Started" or "In Progress"
|
||||
- Agent matches the awakened agent
|
||||
|
|
@ -71,7 +71,7 @@ Agent Dialogs bridge **specifications** and **development**:
|
|||
## Dialog Folder Structure
|
||||
|
||||
```
|
||||
docs/F-Agent-Dialogs/
|
||||
{output_folder}/_progress/agent-dialogs/
|
||||
└── {DATE}-{agent}-{feature-name}/
|
||||
├── {DATE}-{agent}-{feature-name}-dialog.md ← Main file
|
||||
└── steps/
|
||||
|
|
@ -101,6 +101,28 @@ During implementation, classify and handle feedback naturally:
|
|||
|
||||
---
|
||||
|
||||
## Inline Testing
|
||||
|
||||
**The agent tests its own work before presenting it to the user.**
|
||||
|
||||
During agentic development, use Puppeteer to verify measurable criteria after each implementation step. This ensures the user only evaluates qualitative aspects (feel, clarity, hierarchy) rather than checking things the agent can measure.
|
||||
|
||||
**Key rules:**
|
||||
|
||||
1. **Verify before presenting** — After implementing a section, open the page with Puppeteer and check all measurable criteria
|
||||
2. **Narrate findings** — Use ✓/✗ marks with actual vs expected values
|
||||
3. **Fix before showing** — Never present with known measurable failures
|
||||
4. **Capture baselines** — Before modifying existing features, document current state with Puppeteer
|
||||
5. **Split test plans** — Story files divide criteria into agent-verifiable and user-evaluable
|
||||
|
||||
**Responsibility split:**
|
||||
- **Agent handles:** Text content, colors, dimensions, touch targets, error states, visibility, state transitions
|
||||
- **Human handles:** Flow feel, visual hierarchy, user understanding, overall consistency
|
||||
|
||||
**Full methodology:** `workflows/4-ux-design/agentic-development/guides/INLINE-TESTING-GUIDE.md`
|
||||
|
||||
---
|
||||
|
||||
## Interactive Prototypes (Output Type)
|
||||
|
||||
Interactive Prototypes are **one output** of Agentic Development.
|
||||
|
|
@ -164,7 +186,8 @@ Each step links to specifications (doesn't duplicate):
|
|||
For each Object ID:
|
||||
1. **Read** — Load the spec section
|
||||
2. **Implement** — Build to match spec
|
||||
3. **Verify** — Confirm Object ID present and behavior correct
|
||||
3. **Verify (Puppeteer)** — Open in browser, check measurable criteria with ✓/✗ narration
|
||||
4. **Fix** — Resolve any mismatches before presenting to user
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -190,10 +213,11 @@ For each Object ID:
|
|||
|
||||
## Related Resources
|
||||
|
||||
- **Agent Dialog Workflow:** `workflows/9-agent-dialogs/workflow.md`
|
||||
- **Dialog Template:** `workflows/9-agent-dialogs/templates/dialog.template.md`
|
||||
- **Step Template:** `workflows/9-agent-dialogs/templates/step.template.md`
|
||||
- **Agent Dialog Workflow:** `workflows/_agent-dialogs/workflow.md`
|
||||
- **Dialog Template:** `workflows/_agent-dialogs/templates/dialog.template.md`
|
||||
- **Step Template:** `workflows/_agent-dialogs/templates/step.template.md`
|
||||
- **Phase 4 UX Design:** `workflows/4-ux-design/workflow.md`
|
||||
- **Inline Testing Guide:** `workflows/5-agentic-development/guides/INLINE-TESTING-GUIDE.md`
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@
|
|||
- Content is complex
|
||||
|
||||
**Process:**
|
||||
Load: `../../workflows/shared/content-creation-workshop/`
|
||||
Load: `{project-root}/_bmad/wds/workflows/6-asset-generation/`
|
||||
|
||||
**6-Step Framework:**
|
||||
1. Define purpose & success criteria
|
||||
|
|
@ -256,7 +256,7 @@ Features (WHAT): 10K templates, smart pricing, e-signatures
|
|||
|
||||
## Related Resources
|
||||
|
||||
- **Content Creation Workshop:** `../../workflows/shared/content-creation-workshop/`
|
||||
- **Asset Generation:** `{project-root}/_bmad/wds/workflows/6-asset-generation/`
|
||||
- **Content Purpose Guide:** `../../docs/method/content-purpose-guide.md`
|
||||
- **Tone of Voice Guide:** `../../docs/method/tone-of-voice-guide.md`
|
||||
- **Customer Awareness Cycle:** `../../docs/models/customer-awareness-cycle.md`
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Freya's Design System Guide
|
||||
|
||||
**When to load:** When Phase 5 (Design System) is enabled and component questions arise
|
||||
**When to load:** When Phase 7 (Design System) is enabled and component questions arise
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -20,7 +20,7 @@
|
|||
- Faster for simple projects
|
||||
|
||||
**When this workflow doesn't run:**
|
||||
- Phase 5 is disabled
|
||||
- Phase 7 is disabled
|
||||
- Components reference page context only
|
||||
|
||||
**Agent behavior:**
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
3. Agent links to Figma via Component ID
|
||||
4. Specification references Figma source
|
||||
|
||||
**See:** `../../workflows/5-design-system/figma-integration/`
|
||||
**See:** `../../workflows/6-asset-generation/workflow-figma.md`
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -76,7 +76,7 @@
|
|||
- Is there a similar component?
|
||||
- Should we create new or use/extend existing?
|
||||
|
||||
**See:** `../../workflows/5-design-system/design-system-router.md`
|
||||
**See:** `../../workflows/7-design-system/design-system-router.md`
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -109,7 +109,7 @@
|
|||
|
||||
**When similar component exists, run assessment:**
|
||||
|
||||
**See:** `../../workflows/5-design-system/assessment/`
|
||||
**See:** `../../workflows/7-design-system/assessment/`
|
||||
|
||||
**7 Micro-Steps:**
|
||||
1. Scan existing components
|
||||
|
|
@ -190,7 +190,7 @@ organisms/
|
|||
|
||||
## Component Operations
|
||||
|
||||
**See:** `../../workflows/5-design-system/operations/`
|
||||
**See:** `../../workflows/7-design-system/operations/`
|
||||
|
||||
### 1. Initialize Design System
|
||||
**First component triggers auto-initialization**
|
||||
|
|
@ -261,7 +261,7 @@ organisms/
|
|||
|
||||
## Integration with Phase 4
|
||||
|
||||
**Phase 4 (UX Design) → Phase 5 (Design System) flow:**
|
||||
**Phase 4 (UX Design) → Phase 7 (Design System) flow:**
|
||||
|
||||
```
|
||||
User creates page specification
|
||||
|
|
@ -323,11 +323,8 @@ Before marking a component "complete":
|
|||
|
||||
## Related Resources
|
||||
|
||||
- **Phase 5 Workflow:** `../../workflows/5-design-system/`
|
||||
- **Design System Router:** `../../workflows/5-design-system/design-system-router.md`
|
||||
- **Opportunity/Risk Assessment:** `../../workflows/5-design-system/assessment/`
|
||||
- **Component Operations:** `../../workflows/5-design-system/operations/`
|
||||
- **Figma Integration:** `../../workflows/5-design-system/figma-integration/`
|
||||
- **Phase 7 Workflow:** `../../workflows/7-design-system/`
|
||||
- **Figma Integration:** `../../workflows/6-asset-generation/workflow-figma.md`
|
||||
- **Shared Knowledge:** `../design-system/` (tokens, naming, states, validation, boundaries)
|
||||
|
||||
---
|
||||
|
|
|
|||
|
|
@ -472,11 +472,23 @@ Before finalizing meta content:
|
|||
|
||||
---
|
||||
|
||||
## SEO Integration
|
||||
|
||||
Meta content is one part of a broader SEO strategy. For comprehensive SEO guidance:
|
||||
|
||||
- **SEO Strategy Guide:** `../saga/seo-strategy-guide.md` — Full SEO reference (keywords, URL structure, local SEO, structured data, image SEO)
|
||||
- **SEO Content Instructions:** `../../workflows/4-ux-design/templates/instructions/seo-content.instructions.md` — Page-level SEO checklist during specification
|
||||
- **Project Brief SEO:** Check the project's content-language document for the page-keyword map and SEO strategy
|
||||
|
||||
**Workflow:** The project brief (Phase 1) captures the SEO strategy. Page specifications (Phase 4) apply it per page. This guide handles the meta content portion — but also check heading hierarchy, alt text, internal links, and structured data.
|
||||
|
||||
---
|
||||
|
||||
## Related Resources
|
||||
|
||||
- **Page Specification Template:** `../../workflows/4-ux-design/templates/page-specification.template.md`
|
||||
- **Language Configuration:** `../../workflows/00-system/language-configuration-guide.md`
|
||||
- **SEO Session Log:** `../../docs/examples/wds-v6-conversion/session-logs/session-2026-01-20-seo-optimization-specifications.md`
|
||||
- **SEO Strategy Guide:** `../saga/seo-strategy-guide.md`
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -190,6 +190,17 @@ Before marking a spec "complete":
|
|||
- [ ] **Error Announcements** - Error messages accessible to screen readers?
|
||||
- [ ] **Heading Hierarchy** - Logical H1-H6 structure documented?
|
||||
|
||||
### SEO (Public Pages)
|
||||
- [ ] **H1 Present** - Exactly one H1 on the page, contains primary keyword?
|
||||
- [ ] **Heading Hierarchy** - Logical H1 → H2 → H3, no skipped levels?
|
||||
- [ ] **URL Slug** - Defined, keyword-rich, matches project brief keyword map?
|
||||
- [ ] **Primary Keyword** - Identified and placed in H1, title tag, meta description?
|
||||
- [ ] **Meta Title** - ≤ 60 chars, includes primary keyword + brand?
|
||||
- [ ] **Meta Description** - 150-160 chars, includes keyword + CTA?
|
||||
- [ ] **Image Alt Text** - All images have descriptive alt text in all languages?
|
||||
- [ ] **Internal Links** - At least 2 links to other pages on the site?
|
||||
- [ ] **Structured Data** - Schema type specified per project brief plan?
|
||||
|
||||
### Content Completeness
|
||||
- [ ] **All Text Defined** - No placeholder content?
|
||||
- [ ] **Error Messages** - All error states have messages in all languages?
|
||||
|
|
@ -216,8 +227,9 @@ Before marking a spec "complete":
|
|||
🚩 **English-only:** "We'll translate later..."
|
||||
🚩 **Gaps in logic:** "Users will just know what to do here"
|
||||
🚩 **Missing accessibility:** "We'll add ARIA labels during development..."
|
||||
🚩 **No alt text:** Images without descriptive alternatives
|
||||
🚩 **No alt text:** Images without descriptive alternatives
|
||||
🚩 **Unlabeled inputs:** Form fields without associated labels
|
||||
🚩 **No SEO section:** Public page without URL slug, keywords, or meta content
|
||||
|
||||
**When you spot these, pause and dig deeper.**
|
||||
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ Before finalizing any design:
|
|||
|
||||
## Related Resources
|
||||
|
||||
- **VTC Workshop:** `../../workflows/shared/vtc-workshop/`
|
||||
- **VTC Workshop:** `../../workflows/1-project-brief/_vtc-workshop/`
|
||||
- **Trigger Mapping:** `../../docs/method/phase-2-trigger-mapping-guide.md`
|
||||
- **Customer Awareness:** `../../docs/models/customer-awareness-cycle.md`
|
||||
- **Golden Circle:** `../../docs/models/golden-circle.md`
|
||||
|
|
|
|||
|
|
@ -51,14 +51,14 @@ description: |
|
|||
|
||||
scenarios:
|
||||
- name: "New User Signup"
|
||||
path: "docs/C-Scenarios/1.1-signup-flow/"
|
||||
path: "docs/C-UX-Scenarios/1.1-signup-flow/"
|
||||
pages:
|
||||
- "01-signup-form.md"
|
||||
- "02-email-verification.md"
|
||||
- "03-welcome-onboarding.md"
|
||||
|
||||
- name: "Existing User Login"
|
||||
path: "docs/C-Scenarios/1.2-login-flow/"
|
||||
path: "docs/C-UX-Scenarios/1.2-login-flow/"
|
||||
pages:
|
||||
- "01-login-form.md"
|
||||
- "02-two-factor-auth.md"
|
||||
|
|
@ -219,7 +219,7 @@ DD-001:
|
|||
DD-001:
|
||||
scenarios:
|
||||
- name: "Signup Flow"
|
||||
path: "docs/C-Scenarios/1.1-signup-flow/"
|
||||
path: "docs/C-UX-Scenarios/1.1-signup-flow/"
|
||||
pages:
|
||||
- "01-signup-form.md"
|
||||
- "02-verification.md"
|
||||
|
|
@ -399,7 +399,7 @@ docs/E-PRD/Design-Deliveries/
|
|||
|
||||
## Related Resources
|
||||
|
||||
- **Phase 6 Workflow:** `../../workflows/6-design-deliveries/`
|
||||
- **Handover Workflow:** `../../workflows/4-ux-design/workflow-handover.md`
|
||||
- **DD Template:** `../../templates/design-delivery.template.yaml`
|
||||
- **BMM Phase 4:** Where these deliveries are implemented
|
||||
- **Complete PRD:** Synthesis of Platform + Functional requirements
|
||||
|
|
|
|||
|
|
@ -339,8 +339,8 @@ Before marking Platform PRD "complete":
|
|||
|
||||
## Related Resources
|
||||
|
||||
- **Phase 3 Workflow:** `../../workflows/3-prd-platform/`
|
||||
- **Platform PRD Template:** `../../templates/platform-requirements.template.yaml`
|
||||
- **Platform Requirements Workflow:** `../../workflows/1-project-brief/`
|
||||
- **Platform PRD Template:** `../../workflows/1-project-brief/templates/platform-requirements.template.yaml`
|
||||
- **Phase 4 Coordination:** Work with Freya WDS Designer Agent
|
||||
- **BMM Handoff:** Feeds into BMM Phase 2 (Architecture)
|
||||
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@
|
|||
|
||||
## Key WDS Workflows
|
||||
|
||||
### 1️⃣ **Alignment & Signoff** (`workflows/1-project-brief/alignment-signoff/`)
|
||||
### 1️⃣ **Alignment & Signoff** (`workflows/0-alignment-signoff/`)
|
||||
**Agent**: Saga
|
||||
**Purpose**: Get stakeholder alignment before starting the project
|
||||
**Output**: Pitch document + Signoff/Contract/Service Agreement
|
||||
|
|
@ -80,25 +80,37 @@
|
|||
**Purpose**: Identify user pain points, triggers, and desired outcomes
|
||||
**Output**: Trigger map with target groups and usage goals
|
||||
|
||||
### 4️⃣ **PRD Platform** (`workflows/3-prd-platform/`)
|
||||
**Agent**: Idunn
|
||||
**Purpose**: Define platform requirements and technical specifications
|
||||
**Output**: Platform PRD document
|
||||
### 3️⃣ **UX Scenarios** (`workflows/3-scenarios/`)
|
||||
**Agent**: Saga
|
||||
**Purpose**: Create UX scenarios from Trigger Map
|
||||
**Output**: Scenario overview and detailed scenarios
|
||||
|
||||
### 5️⃣ **UX Design** (`workflows/4-ux-design/`)
|
||||
**Agent**: Freya
|
||||
**Purpose**: Create scenarios, pages, and interactive prototypes
|
||||
### 4️⃣ **UX Design** (`workflows/4-ux-design/`)
|
||||
**Agent**: Freya
|
||||
**Purpose**: Create specifications, pages, and interactive prototypes
|
||||
**Output**: Scenario specifications, page specs, prototypes
|
||||
|
||||
### 6️⃣ **Design System** (`workflows/5-design-system/`)
|
||||
**Agent**: Freya
|
||||
**Purpose**: Build and maintain component libraries
|
||||
### 5️⃣ **Agentic Development** (`workflows/5-agentic-development/`)
|
||||
**Agent**: Idunn
|
||||
**Purpose**: 7-activity menu — Prototyping, Development, Bugfixing, Evolution, Analysis, Reverse Engineering, Acceptance Testing
|
||||
**Output**: Working code, verified implementations, test reports
|
||||
|
||||
### 6️⃣ **Asset Generation** (`workflows/6-asset-generation/`)
|
||||
**Agent**: Freya
|
||||
**Purpose**: Creative production pipeline — Wireframes, Page Designs, UI Elements, Icons, Images, Videos, Content, Figma Export
|
||||
**Output**: Visual assets with style library consistency
|
||||
|
||||
### 7️⃣ **Design System** (`workflows/7-design-system/`)
|
||||
**Agent**: Freya
|
||||
**Purpose**: Build and maintain component libraries
|
||||
**Output**: Design system with tokens and components
|
||||
|
||||
### 7️⃣ **Design Deliveries** (`workflows/6-design-deliveries/`)
|
||||
**Agent**: Idunn
|
||||
**Purpose**: Export specifications for development
|
||||
**Output**: Complete PRD with all specifications
|
||||
### 8️⃣ **Product Evolution** (`workflows/8-product-evolution/`)
|
||||
**Agent**: Idunn
|
||||
**Purpose**: Continuous improvement of live products
|
||||
**Output**: Kaizen cycles — analyze, scope, design, implement, test, deploy
|
||||
|
||||
> **Note**: Platform Requirements is sub-workflow 106 under Phase 1 (Product Brief), not a separate phase.
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -137,13 +149,12 @@ Build prototypes:
|
|||
WDS projects use this documentation structure:
|
||||
|
||||
```
|
||||
docs/
|
||||
├── 1-project-brief/ # Product vision, goals, strategy
|
||||
├── 2-trigger-mapping/ # User psychology, triggers, outcomes
|
||||
├── 3-prd-platform/ # Platform requirements, tech specs
|
||||
├── 4-ux-design/ # Scenarios, pages, prototypes
|
||||
├── 5-design-system/ # Design tokens, components
|
||||
└── 6-design-deliveries/ # Final PRD, specifications
|
||||
{output_folder}/
|
||||
├── A-Product-Brief/ # Product vision, goals, strategy
|
||||
├── B-Trigger-Map/ # User psychology, triggers, outcomes
|
||||
├── C-UX-Scenarios/ # Scenarios, specs, prototypes, designs
|
||||
├── D-Design-System/ # Design tokens, components
|
||||
└── _progress/ # Agent dialogs, project outline
|
||||
```
|
||||
|
||||
Or for legacy projects (WPS2C v4):
|
||||
|
|
@ -152,8 +163,7 @@ Or for legacy projects (WPS2C v4):
|
|||
docs/
|
||||
├── A-Product-Brief/
|
||||
├── B-Trigger-Map/
|
||||
├── C-Platform-Requirements/
|
||||
├── C-Scenarios/
|
||||
├── C-UX-Scenarios/
|
||||
├── D-Design-System/
|
||||
├── E-PRD/
|
||||
└── F-Testing/
|
||||
|
|
@ -267,7 +277,7 @@ Tell me about the user journey you want to map...
|
|||
|
||||
## WDS Training Course
|
||||
|
||||
**Location**: `docs/learn-wds/`
|
||||
**Location**: `docs/learn/`
|
||||
|
||||
**Modules Available:**
|
||||
- **Module 00:** Getting Started - Prerequisites, learning paths, and support
|
||||
|
|
@ -303,8 +313,7 @@ When a user first activates you, check if WDS is properly set up:
|
|||
### Check 1: WDS Repository Exists
|
||||
|
||||
Look for:
|
||||
- `whiteport-design-studio/src/modules/wds/`
|
||||
- `../whiteport-design-studio/src/modules/wds/`
|
||||
- `{project-root}/_bmad/wds/`
|
||||
- `.cursor/rules/wds/`
|
||||
|
||||
### Check 2: Project Has docs/ Folder
|
||||
|
|
@ -316,13 +325,12 @@ If not, offer to create it:
|
|||
|
||||
Should I create the WDS documentation structure for you?
|
||||
|
||||
docs/
|
||||
├── 1-project-brief/
|
||||
├── 2-trigger-mapping/
|
||||
├── 3-prd-platform/
|
||||
├── 4-ux-design/
|
||||
├── 5-design-system/
|
||||
└── 6-design-deliveries/
|
||||
{output_folder}/
|
||||
├── A-Product-Brief/
|
||||
├── B-Trigger-Map/
|
||||
├── C-UX-Scenarios/
|
||||
├── D-Design-System/
|
||||
└── _progress/
|
||||
```
|
||||
|
||||
### If WDS Repository NOT Found
|
||||
|
|
|
|||
|
|
@ -0,0 +1,190 @@
|
|||
# Content Structure Principles (Product Brief)
|
||||
|
||||
**When to load:** During Content & Language workflow, after SEO keywords, before synthesis
|
||||
**Agent:** Saga (or any PB facilitator)
|
||||
|
||||
---
|
||||
|
||||
## Why This Matters
|
||||
|
||||
Without understanding the client's vision for what their product should contain, later phases break down:
|
||||
|
||||
- **Scenario Outlining** designs user flows through pages that may not exist in the client's mental model
|
||||
- **Page Design** creates sections the client never envisioned
|
||||
- **Dream Up** generates designs misaligned with expectations
|
||||
- **Costly misalignment** surfaces late when it's expensive to fix
|
||||
|
||||
**The gap we're filling:** Business goals and user psychology (Trigger Map) tell us WHY. Content structure principles tell us WHAT the client envisions the product containing.
|
||||
|
||||
**Principles, not specifications.** We're capturing strategic direction here, not wireframes. "Services should be easily accessible from the main menu" is a principle. "Three-column grid with 200px service cards" is a specification that belongs in Phase 4.
|
||||
|
||||
---
|
||||
|
||||
## What We Need to Know
|
||||
|
||||
**Satisfaction criteria — by the end you should be able to answer:**
|
||||
|
||||
1. **What type of product is this?** Single-page site, multi-page site, app, platform?
|
||||
2. **What content does the client envision?** Pages, sections, content areas — at whatever detail level they have
|
||||
3. **What must be immediately prominent?** The content priorities that drive the first impression
|
||||
4. **How should users navigate?** Any principles about finding content (not nav design specifics)
|
||||
5. **What should definitely NOT be included?** Explicit anti-patterns and scope boundaries
|
||||
6. **How clear is the client's vision?** Are they specific, exploring, or completely open?
|
||||
|
||||
**You DON'T need:**
|
||||
- Detailed wireframes or layouts
|
||||
- Exact section specifications
|
||||
- Technical implementation details
|
||||
- Final decisions from a client who's still exploring
|
||||
|
||||
---
|
||||
|
||||
## Adaptive Depth
|
||||
|
||||
**Match the client's readiness:**
|
||||
|
||||
- **Client is specific** ("I want a single page with hero, services, reviews, map, contact") → Capture their detailed vision, note it as strong direction
|
||||
- **Client is exploring** ("Maybe 4-5 pages? Not sure yet") → Capture what they know, flag open questions for Phase 4
|
||||
- **Client is blank** ("I don't know, you tell me") → Note the openness, capture any preferences that emerge, leave structure for later phases
|
||||
|
||||
**All three are valid outcomes.** Don't force decisions the client isn't ready to make.
|
||||
|
||||
---
|
||||
|
||||
## Types of Information to Surface
|
||||
|
||||
**Product type and scope:**
|
||||
- Single-page vs multi-page
|
||||
- How many pages roughly (if multi-page)
|
||||
- Any sub-pages or sections within pages
|
||||
- What's MVP vs future
|
||||
|
||||
**Content that must exist:**
|
||||
- Core content areas (services, about, contact, etc.)
|
||||
- What specific information users need to find
|
||||
- Content that serves business goals directly
|
||||
|
||||
**Content hierarchy:**
|
||||
- What must be visible immediately (no scrolling)
|
||||
- What's important but secondary
|
||||
- What's nice-to-have
|
||||
|
||||
**Navigation and access principles:**
|
||||
- How should users find key content?
|
||||
- Should anything be reachable from everywhere?
|
||||
- Mobile vs desktop considerations
|
||||
|
||||
**Scope boundaries:**
|
||||
- What is explicitly excluded (no blog, no e-commerce, etc.)
|
||||
- What's deferred to a future phase
|
||||
- What the client has seen elsewhere and doesn't want
|
||||
|
||||
---
|
||||
|
||||
## Documenting the Outcome
|
||||
|
||||
**If client is specific:**
|
||||
```markdown
|
||||
## Content Structure Principles
|
||||
|
||||
### Structure Type
|
||||
Single-page site — all content on one scrollable page
|
||||
|
||||
### User's Vision
|
||||
"Tourists on phones should find three things fast: can you fix my vehicle,
|
||||
where are you, what's your number. Everything else is secondary."
|
||||
|
||||
### Content Priorities
|
||||
**Must be prominent (visible without scroll):**
|
||||
- Phone number
|
||||
- Vehicle types serviced
|
||||
- Location + hours
|
||||
|
||||
**Important but secondary:**
|
||||
- About / story
|
||||
- Certifications
|
||||
- Reviews
|
||||
|
||||
### Navigation Principles
|
||||
- Contact (phone) reachable from anywhere
|
||||
- Mobile-first — most users on phones
|
||||
- No complex menus needed
|
||||
|
||||
### Not Included
|
||||
- No online booking (phone-first approach)
|
||||
- No blog
|
||||
- No auto-play media
|
||||
|
||||
### Clarity Level
|
||||
Very specific — strong vision based on user needs
|
||||
```
|
||||
|
||||
**If client is exploring:**
|
||||
```markdown
|
||||
## Content Structure Principles
|
||||
|
||||
### Structure Type
|
||||
Exploring — leaning toward multi-page (4-5 pages), open to recommendation
|
||||
|
||||
### User's Vision
|
||||
"We need to explain our services and make it easy to contact us.
|
||||
Maybe separate pages for each service category? Not sure yet."
|
||||
|
||||
### Content Priorities
|
||||
**Must be prominent:**
|
||||
- Service offerings
|
||||
- Contact methods
|
||||
|
||||
**Secondary:**
|
||||
- To be determined in Phase 4
|
||||
|
||||
### Navigation Principles
|
||||
- "Services should be easy to find"
|
||||
- "People should be able to contact us from any page"
|
||||
|
||||
### Not Included
|
||||
- No e-commerce
|
||||
|
||||
### Clarity Level
|
||||
Exploring — rough direction, specifics to emerge in UX phase
|
||||
```
|
||||
|
||||
**If client is blank:**
|
||||
```markdown
|
||||
## Content Structure Principles
|
||||
|
||||
### Structure Type
|
||||
TBD — to be determined in Phase 4 based on Trigger Map insights
|
||||
|
||||
### User's Vision
|
||||
Client exploring options — looking for strategic recommendations
|
||||
|
||||
### Content Priorities
|
||||
**Must be prominent:**
|
||||
- [To be determined]
|
||||
|
||||
### Navigation Principles
|
||||
- None stated yet
|
||||
|
||||
### Not Included
|
||||
- None stated
|
||||
|
||||
### Clarity Level
|
||||
Open — awaiting recommendations from UX phase
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Red Flags
|
||||
|
||||
**"Make it like [competitor]"** → Probe what specifically they like about the competitor's structure. Avoid copying without understanding WHY it works.
|
||||
|
||||
**Feature shopping** ("newsletter signup, social links, testimonial slider, chat widget...") → Redirect to principles: "Those are features — what's the core experience users need?"
|
||||
|
||||
**Over-specification** (pixel-level layout details) → Acknowledge their vision, capture the principle: "I love that level of detail — let me capture the principle so we nail it in design phase."
|
||||
|
||||
**"Everything is most important"** → Gentle pressure test: "If a mobile user has 5 seconds, what's the ONE thing they must find?"
|
||||
|
||||
---
|
||||
|
||||
*This guide ensures Saga captures the client's product vision at their level of readiness — from detailed to blank — without forcing premature decisions or missing strategic direction.*
|
||||
|
|
@ -0,0 +1,372 @@
|
|||
# Conversational Follow-Up Patterns
|
||||
|
||||
**When to load:** During any Product Brief step where you need to explore user thinking through follow-up questions
|
||||
|
||||
**Companion to:** `discovery-conversation.md` (general principles) - this guide provides specific follow-up question patterns
|
||||
|
||||
---
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
**Don't ask users to produce outputs (vision statements, positioning statements, frameworks). Instead:**
|
||||
1. Have exploratory conversations where they dump their ideas
|
||||
2. Ask intelligent follow-ups based on what emerges
|
||||
3. YOU synthesize the substance into formal artifacts
|
||||
|
||||
**Spirit:** "Just dump your ideas, I'll help structure your thinking"
|
||||
|
||||
---
|
||||
|
||||
## Signal-Based Follow-Up Patterns
|
||||
|
||||
### When They Mention USERS or CUSTOMERS
|
||||
|
||||
**Signals to listen for:**
|
||||
- Names a specific type of person
|
||||
- Describes a frustration or need
|
||||
- Mentions "for people who..."
|
||||
|
||||
**Follow-up questions:**
|
||||
- "Tell me more about them - who are they specifically?"
|
||||
- "What frustrates them today?"
|
||||
- "What would their life look like if this existed?"
|
||||
- "How do they currently solve this problem?"
|
||||
- "Walk me through a typical day for them"
|
||||
- "What are they trying to achieve?"
|
||||
|
||||
**Example:**
|
||||
> **User:** "It's for busy parents"
|
||||
>
|
||||
> **Agent:** "Tell me about busy parents - what's their day like? What frustrates them?"
|
||||
|
||||
---
|
||||
|
||||
### When They Mention BUSINESS VALUE
|
||||
|
||||
**Signals to listen for:**
|
||||
- Revenue, growth, efficiency
|
||||
- "Will help us..."
|
||||
- ROI, cost savings, market share
|
||||
|
||||
**Follow-up questions:**
|
||||
- "How do you see that translating to revenue/efficiency/growth?"
|
||||
- "What would success look like in 6 months? In 2 years?"
|
||||
- "What's the business impact if you DON'T do this?"
|
||||
- "What's currently costing you time/money?"
|
||||
- "How does this change the business model?"
|
||||
|
||||
**Example:**
|
||||
> **User:** "This will save us a ton of time"
|
||||
>
|
||||
> **Agent:** "What's the time going to right now? How much would you save?"
|
||||
|
||||
---
|
||||
|
||||
### When They Mention a SPECIFIC FEATURE or CONCEPT
|
||||
|
||||
**Signals to listen for:**
|
||||
- "We want to have X"
|
||||
- Describes a specific functionality
|
||||
- "Users should be able to..."
|
||||
|
||||
**Follow-up questions:**
|
||||
- "That's interesting! What problem does that solve?"
|
||||
- "Why is that important to you?"
|
||||
- "Can you walk me through how that would work?"
|
||||
- "Is there a simpler way to achieve that outcome?"
|
||||
- "What happens if we don't have that?"
|
||||
- "Who would use that most?"
|
||||
|
||||
**Example:**
|
||||
> **User:** "We want a dashboard with real-time analytics"
|
||||
>
|
||||
> **Agent:** "What decisions would users make with real-time data that they can't make now?"
|
||||
|
||||
---
|
||||
|
||||
### When They Mention COMPETITORS or MARKET
|
||||
|
||||
**Signals to listen for:**
|
||||
- Names a competitor
|
||||
- "Like X but..."
|
||||
- Market positioning statements
|
||||
|
||||
**Follow-up questions:**
|
||||
- "What do they do well?"
|
||||
- "Where do they fall short?"
|
||||
- "What would make yours different/better?"
|
||||
- "Why do users choose them?"
|
||||
- "What frustrates users about their solution?"
|
||||
- "What can you do that they can't?"
|
||||
|
||||
**Example:**
|
||||
> **User:** "There are tools like Asana but they're too complex"
|
||||
>
|
||||
> **Agent:** "What makes them too complex? What would 'simple enough' look like?"
|
||||
|
||||
---
|
||||
|
||||
### When They Express EMOTIONS
|
||||
|
||||
**Signals to listen for:**
|
||||
- "I'm excited about..."
|
||||
- "I'm worried that..."
|
||||
- "It frustrates me when..."
|
||||
- Tone indicators (enthusiasm, concern, fear)
|
||||
|
||||
**Follow-up questions:**
|
||||
- "What makes you [excited/worried/frustrated] about that?"
|
||||
- "Tell me more about why that matters to you"
|
||||
- "What would it feel like if this worked perfectly?"
|
||||
- "What's your biggest concern?"
|
||||
|
||||
**Example:**
|
||||
> **User:** "I'm worried users won't get it"
|
||||
>
|
||||
> **Agent:** "What specifically might they not get? What would make it obvious?"
|
||||
|
||||
---
|
||||
|
||||
### When They're VAGUE or HIGH-LEVEL
|
||||
|
||||
**Signals to listen for:**
|
||||
- Abstract language
|
||||
- "Better", "easier", "more efficient"
|
||||
- Hand-waving ("you know what I mean")
|
||||
|
||||
**Follow-up questions:**
|
||||
- "Can you paint me a picture - what does that actually look like?"
|
||||
- "Give me a specific example or scenario"
|
||||
- "If I was a [user], what would I experience?"
|
||||
- "What does 'better' mean specifically?"
|
||||
- "Walk me through that step by step"
|
||||
|
||||
**Example:**
|
||||
> **User:** "We want to improve the user experience"
|
||||
>
|
||||
> **Agent:** "What part of the experience needs improving? What would 'improved' look like specifically?"
|
||||
|
||||
---
|
||||
|
||||
### When They're DUMPING FEATURES
|
||||
|
||||
**Signals to listen for:**
|
||||
- Lists multiple features rapid-fire
|
||||
- "And we also want... and also..."
|
||||
- Feature shopping without clear priority
|
||||
|
||||
**Follow-up questions:**
|
||||
- "Those are all interesting - what's the core experience users need?"
|
||||
- "If you could only ship ONE thing, what would have the biggest impact?"
|
||||
- "Which of these solves the biggest pain?"
|
||||
- "What's MVP versus nice-to-have?"
|
||||
|
||||
**Example:**
|
||||
> **User:** "We need dashboards, notifications, chat, file sharing, calendar..."
|
||||
>
|
||||
> **Agent:** "Lots of ideas! What's the one thing that, if it worked perfectly, would make users love this?"
|
||||
|
||||
---
|
||||
|
||||
## Context-Aware Questions
|
||||
|
||||
### Based on Project Type
|
||||
|
||||
**If product_type = website:**
|
||||
- "What should visitors understand within 5 seconds?"
|
||||
- "What action do you want them to take?"
|
||||
- "How is this different from typical [industry] sites?"
|
||||
- "What pages do you envision?"
|
||||
- "How should people navigate?"
|
||||
|
||||
**If product_type = app:**
|
||||
- "What's the core workflow users will do repeatedly?"
|
||||
- "What makes them come back?"
|
||||
- "What problem does this solve better than alternatives?"
|
||||
- "What's the 'aha' moment for new users?"
|
||||
|
||||
**If product_type = landing_page:**
|
||||
- "What's the one thing visitors must understand?"
|
||||
- "What action should they take?"
|
||||
- "Who arrives here and why?"
|
||||
|
||||
---
|
||||
|
||||
### Based on Project Stakes
|
||||
|
||||
**If stakes = low (personal/hobby):**
|
||||
- "What excites you most about this?"
|
||||
- "What would make you proud of this?"
|
||||
- "What's the dream outcome - not just functional, but emotional?"
|
||||
|
||||
**If stakes = high (departmental/enterprise):**
|
||||
- "Who else cares about this succeeding?"
|
||||
- "What would convince skeptics?"
|
||||
- "What organizational change does this enable?"
|
||||
- "Who needs to approve this?"
|
||||
- "What objections might they raise?"
|
||||
|
||||
---
|
||||
|
||||
### Based on Working Relationship
|
||||
|
||||
**If involvement_level = collaborative:**
|
||||
- More explanatory questions
|
||||
- "Want to explore that together?"
|
||||
- Invite them into reasoning process
|
||||
|
||||
**If involvement_level = autonomous:**
|
||||
- More directive questions
|
||||
- "Let me capture that, then I'll show you what I'm thinking"
|
||||
- Trust-based, efficient
|
||||
|
||||
---
|
||||
|
||||
## The Mandatory Reflection Protocol
|
||||
|
||||
**After exploration, BEFORE documenting, you MUST reflect back understanding.**
|
||||
|
||||
### Structure:
|
||||
|
||||
1. **Synthesize** the conversation into 2-3 sentences
|
||||
2. **Present** it to the user with "What I'm hearing is..."
|
||||
3. **Wait** for confirmation
|
||||
4. **Adjust** if they correct you
|
||||
5. **Only then** proceed to document
|
||||
|
||||
### Template:
|
||||
|
||||
> "Let me make sure I understand. What I'm hearing is:
|
||||
>
|
||||
> [2-3 sentence synthesis]
|
||||
>
|
||||
> Is that right? Am I missing anything important?"
|
||||
|
||||
### Example (Källa):
|
||||
|
||||
> "Let me make sure I understand. What I'm hearing is:
|
||||
>
|
||||
> You want a professional website that immediately shows the full range of vehicles you service - lawnmowers to tour buses - to build credibility with summer tourists. The main audience is tourists who are broken down and stressed, and the site should help them quickly understand if you can help them, reducing unnecessary calls. Your AutoExperten certification is a trust signal.
|
||||
>
|
||||
> Does that capture it?"
|
||||
|
||||
---
|
||||
|
||||
## When You've Explored Enough
|
||||
|
||||
**You're ready to reflect when you can answer:**
|
||||
- ✅ What are they building? (concept)
|
||||
- ✅ Why does it matter? (value)
|
||||
- ✅ Who is it for? (users)
|
||||
- ✅ What makes it different? (unique angle)
|
||||
|
||||
**Don't over-explore.** 5-10 minutes is usually enough. If you have the essence, move to reflection.
|
||||
|
||||
**Signs you're done:**
|
||||
- User is repeating themselves
|
||||
- You understand the core concept
|
||||
- Further questions would be about details
|
||||
- You could articulate their vision back to them
|
||||
|
||||
---
|
||||
|
||||
## Handling Stuck Moments
|
||||
|
||||
### If User Says "I Don't Know"
|
||||
|
||||
**Don't accept it immediately. Try:**
|
||||
- "What's your gut feeling?"
|
||||
- "If you had to guess?"
|
||||
- "What would you like it to be?"
|
||||
- "What have you seen that felt right?"
|
||||
|
||||
### If User Is Overthinking
|
||||
|
||||
**Redirect to concrete:**
|
||||
- "Let's not overthink this - give me the first thing that comes to mind"
|
||||
- "What would you tell a friend about this?"
|
||||
- "Forget best practices - what feels right to you?"
|
||||
|
||||
### If User Gives Contradictions
|
||||
|
||||
**Point it out gently:**
|
||||
- "Help me understand - you said X earlier but now Y. Which is more true?"
|
||||
- "Those seem like different directions - which one matters more?"
|
||||
|
||||
---
|
||||
|
||||
## Tone Adaptation by Context
|
||||
|
||||
### Personal/Hobby (stakes = low)
|
||||
**Tone:** Encouraging, playful, energetic
|
||||
> "That sounds awesome! Tell me more about..."
|
||||
> "Love it! So if this works perfectly, what happens?"
|
||||
|
||||
### Small Business (stakes = medium)
|
||||
**Tone:** Professional, warm, collaborative
|
||||
> "That makes sense for your business. How do you see..."
|
||||
> "Smart angle. What would success look like?"
|
||||
|
||||
### Enterprise/High Stakes (stakes = high)
|
||||
**Tone:** Measured, evidence-oriented, thorough
|
||||
> "What data supports that direction?"
|
||||
> "Who else needs to be convinced, and what would convince them?"
|
||||
> "What outcomes would demonstrate ROI?"
|
||||
|
||||
---
|
||||
|
||||
## Red Flags to Redirect
|
||||
|
||||
### "Make it like [competitor]"
|
||||
**Don't accept blindly. Probe:**
|
||||
> "What specifically do you like about their approach? What would you do differently?"
|
||||
|
||||
### Feature Shopping List
|
||||
**Redirect to core experience:**
|
||||
> "All interesting features - but what's the ONE experience that defines this product?"
|
||||
|
||||
### Over-Specification Too Early
|
||||
**Capture principle, defer details:**
|
||||
> "I love that level of detail - let me capture the principle. We'll design the specifics later in UX phase."
|
||||
|
||||
### "Everything is most important"
|
||||
**Force prioritization:**
|
||||
> "If a mobile user has 5 seconds, what's the ONE thing they must find?"
|
||||
|
||||
---
|
||||
|
||||
## Integration with Workflows
|
||||
|
||||
**Step files should:**
|
||||
1. Reference this guide: `Load: src/data/agent-guides/saga/conversational-followups.md`
|
||||
2. Specify which signals to listen for in that step's context
|
||||
3. Include step-specific follow-up examples
|
||||
4. Mandate reflection checkpoint before moving forward
|
||||
|
||||
**Example from step file:**
|
||||
```markdown
|
||||
## Instructions
|
||||
|
||||
**Load:** `conversational-followups.md` for follow-up patterns
|
||||
|
||||
Ask: "What are you envisioning?"
|
||||
|
||||
Listen for signals and follow patterns from guide:
|
||||
- Users mentioned → Ask about frustrations
|
||||
- Features mentioned → Ask about problems they solve
|
||||
- Vague language → Request specific examples
|
||||
|
||||
**Mandatory reflection checkpoint before proceeding.**
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Related Resources
|
||||
|
||||
- **Discovery Conversation Guide:** `discovery-conversation.md` (general principles)
|
||||
- **Content Structure Principles:** `content-structure-principles.md` (exploring product concepts)
|
||||
- **Inspiration Analysis:** `inspiration-analysis.md` (exploring visual preferences)
|
||||
|
||||
---
|
||||
|
||||
_The quality of your questions determines the quality of the brief. Ask better questions, get better understanding, create better products._
|
||||
|
|
@ -236,7 +236,7 @@ Not:
|
|||
## Related Resources
|
||||
|
||||
- **Product Brief Workflow:** `../../workflows/1-project-brief/project-brief/`
|
||||
- **Alignment & Signoff:** `../../workflows/1-project-brief/alignment-signoff/`
|
||||
- **Alignment & Signoff:** `../../workflows/0-alignment-signoff/`
|
||||
- **Golden Circle Model:** `../../docs/models/golden-circle.md` (for discovery order: WHY → HOW → WHAT)
|
||||
|
||||
---
|
||||
|
|
|
|||
|
|
@ -0,0 +1,909 @@
|
|||
# Saga's Dream Up Approach Guide
|
||||
|
||||
**When to load:** When user requests artifact generation (Trigger Map, Product Brief companions)
|
||||
|
||||
**Agent:** Saga the Analyst
|
||||
**Purpose:** Execute Dream Up modes (Suggest/Dream) for Phase 1-2 artifact generation
|
||||
|
||||
---
|
||||
|
||||
## Core Architecture: 5 Layers
|
||||
|
||||
```
|
||||
Layer 1: Learn WDS Form (Static - loaded once)
|
||||
How to structure, what makes quality
|
||||
↓
|
||||
Layer 2: Project Context (Cumulative - grows with each step)
|
||||
Product Brief → +Business Goals → +Target Groups → +Driving Forces
|
||||
↓
|
||||
Layer 3: Domain Research (Ongoing - per step as needed)
|
||||
Industry insights, competitor analysis, user behavior
|
||||
↓
|
||||
Layer 4: Generate Next Artifact
|
||||
Apply Form + Use All Prior Context + Enhanced by Research
|
||||
↓
|
||||
Layer 5: Self-Review Against Standards
|
||||
Check quality, identify gaps, refine
|
||||
↓
|
||||
Add artifact to Layer 2 → Repeat for next step
|
||||
```
|
||||
|
||||
**Key Principle:** Each step builds on all previous artifacts. Layer 2 grows as progress is made.
|
||||
|
||||
---
|
||||
|
||||
## When to Offer Dream Up Modes
|
||||
|
||||
### Offer When:
|
||||
✅ User requests artifact generation (Trigger Map, Product Brief companions)
|
||||
✅ Product Brief exists from Phase 1 (provides substance)
|
||||
✅ Quality rubric exists for the artifact type
|
||||
✅ Task is structured generation (not pure discovery)
|
||||
|
||||
### Don't Offer When:
|
||||
❌ Pure discovery conversation (no artifact to generate)
|
||||
❌ No Product Brief exists yet (no substance to work with)
|
||||
❌ User explicitly wants dialog/workshop approach
|
||||
❌ No quality rubric available yet
|
||||
|
||||
---
|
||||
|
||||
## Mode Selection Dialog
|
||||
|
||||
**Present this choice at workflow start:**
|
||||
|
||||
```
|
||||
**Which engagement mode would you like?**
|
||||
|
||||
**Workshop Mode** (Agent facilitates workshop, 60-90 min)
|
||||
- I'll facilitate a workshop to draw out your best ideas through strategic questions
|
||||
- Man-in-the-loop: You're actively involved, I guide the discovery
|
||||
- Best for: Discovery, strategic decisions, first time, want to go deep
|
||||
|
||||
**Suggest Mode** (Driven by agent, 30-45 min)
|
||||
- I'll generate based on WDS methodology + your Product Brief + domain research
|
||||
- You review each step and guide refinements
|
||||
- You'll see my learning, research, and self-review process
|
||||
- Best for: Product Brief exists, want to see my thinking, learn through observation
|
||||
|
||||
**Dream Mode** (Fully autonomous, 15-20 min)
|
||||
- I'll generate autonomously with visible self-dialog
|
||||
- You can observe and interrupt anytime, or just review the result
|
||||
- Best for: Trust the methodology, established patterns, time-efficient
|
||||
|
||||
Choose: [W] Workshop | [S] Suggest | [D] Dream
|
||||
```
|
||||
|
||||
**If user unsure, recommend based on:**
|
||||
- Product Brief quality (rich → Suggest/Dream, sparse → Workshop)
|
||||
- User skill level (beginner → Workshop, comfortable → Suggest/Dream)
|
||||
- Time constraints (limited time → Dream)
|
||||
- Novelty (new domain → Workshop, familiar → Suggest/Dream)
|
||||
|
||||
---
|
||||
|
||||
## Layer 1: Learn WDS Form (Static)
|
||||
|
||||
**Purpose:** Agent becomes WDS methodology expert before generating.
|
||||
|
||||
### For Phase 2 (Trigger Mapping)
|
||||
|
||||
**Load these WDS learning materials:**
|
||||
```
|
||||
docs/method/phase-2-trigger-mapping-guide.md
|
||||
docs/quick-start/02-trigger-mapping.md
|
||||
src/data/agent-guides/saga/trigger-mapping.md
|
||||
docs/models/impact-effect-mapping.md
|
||||
docs/method/dream-up-rubric-phase-2.md
|
||||
```
|
||||
|
||||
**Learn and internalize:**
|
||||
|
||||
#### Structure Requirements
|
||||
- Business Goals Layer (vision + SMART objectives)
|
||||
- Product/Solution Hub
|
||||
- Target Groups (3-4 max, prioritized)
|
||||
- Detailed Personas (alliterative names, psychological depth)
|
||||
- Usage Goals (positive + negative drivers, 3-5 each per persona)
|
||||
- Prioritization (goals → groups → drivers ranked)
|
||||
- Optional: Feature Impact Analysis, Visual Diagram
|
||||
|
||||
#### Quality Criteria (7 standards)
|
||||
1. **Strategic Depth** - Reveal specific psychology, not surface observations
|
||||
2. **Usage Context Clarity** - Usage goals, not life goals
|
||||
3. **Persona Depth** - Psychological, not demographic
|
||||
4. **Negative Drivers Present** - Equal weight to fears/frustrations
|
||||
5. **Focused Scope** - 3-4 groups max, not diluted
|
||||
6. **Actionable Specificity** - Concrete, not vague
|
||||
7. **Business Goal Connection** - Every user serves a goal
|
||||
|
||||
#### Common Mistakes to Avoid
|
||||
- ❌ Solutions on the map (keep psychology, not features)
|
||||
- ❌ Generic/obvious forces (be specific to context)
|
||||
- ❌ Demographic personas (focus on psychology)
|
||||
- ❌ Inconsistent priority (make hard choices)
|
||||
|
||||
#### Best Practices
|
||||
- ✅ Alliterative persona names (memorable, hints at role)
|
||||
- ✅ Equal weight to negative drivers (loss aversion is powerful)
|
||||
- ✅ Context declaration (explicit usage context)
|
||||
- ✅ Visual connection diagram (shows logic flow)
|
||||
|
||||
**Document in agent dialog:**
|
||||
|
||||
```markdown
|
||||
## Layer 1: WDS Form Learned
|
||||
|
||||
### Methodology Loaded
|
||||
- Phase 2 Trigger Mapping Guide
|
||||
- Quality Rubric with 7 criteria
|
||||
- Impact/Effect Mapping model
|
||||
|
||||
### Structure Internalized
|
||||
- 4 core layers: Goals → Product → Groups → Drivers
|
||||
- Prioritization required at each level
|
||||
- Personas with psychological depth, not demographics
|
||||
|
||||
### Quality Standards
|
||||
- Minimum threshold: 7/9 complete, 5/7 quality, 4/4 mistakes avoided
|
||||
- Excellence threshold: 9/9 complete, 7/7 quality, 4/4 practices followed
|
||||
|
||||
### Ready to apply WDS form to this project's substance.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Layer 2: Project Context (Cumulative)
|
||||
|
||||
**Purpose:** Extract substance from prior artifacts. Layer 2 GROWS with each step.
|
||||
|
||||
### Initial Load: Product Brief (Start of Phase 2)
|
||||
|
||||
**Read these files:**
|
||||
```
|
||||
{output_folder}/A-Product-Brief/product-brief.md
|
||||
{output_folder}/A-Product-Brief/content-language.md
|
||||
{output_folder}/A-Product-Brief/platform-requirements.md
|
||||
{output_folder}/A-Product-Brief/visual-direction.md
|
||||
```
|
||||
|
||||
**Extract and summarize:**
|
||||
|
||||
#### Business Context
|
||||
- Business name, location, industry, services
|
||||
- Market position, reputation, years in business
|
||||
- Current challenges (what problem does product solve)
|
||||
- Success criteria (what winning looks like)
|
||||
|
||||
#### User Archetypes (from Product Brief)
|
||||
- Each archetype name and description
|
||||
- Their context (when do they use product)
|
||||
- Their needs/goals (high-level)
|
||||
- Their challenges (frustrations)
|
||||
|
||||
**Note:** These archetypes will be deepened into personas with driving forces in Phase 2.
|
||||
|
||||
#### Constraints
|
||||
- Technical: Platform, tech stack, integrations
|
||||
- Business: Budget, timeline, resources, maintenance level
|
||||
- Scope: What's in/out
|
||||
- Brand: Tone, personality, visual direction, keywords
|
||||
|
||||
#### Strategic Direction
|
||||
- Business goals mentioned in brief
|
||||
- Target audience priorities
|
||||
- SEO keywords (if relevant)
|
||||
- Future plans
|
||||
|
||||
**Document in agent dialog:**
|
||||
|
||||
```markdown
|
||||
## Layer 2: Project Context (Initial Load)
|
||||
|
||||
### From Product Brief
|
||||
**Business:** Källa Fordonservice AB, car mechanic on northern Öland, 20+ years, 4.8/5 rating
|
||||
**Challenge:** Repetitive phone calls about basic info, no website presence
|
||||
**Goal:** Reduce admin burden while maintaining findability
|
||||
|
||||
### User Archetypes (to deepen)
|
||||
1. **Tomas the Tourist** - Summer visitor, car trouble, stressed, needs immediate help
|
||||
2. **Lennart the Local** - Year-round resident, loyal customer, checks hours
|
||||
3. **Farmer Fredrik** - Agricultural equipment, understands wait times
|
||||
4. **Motorhome Maria** - RV passing through, specialized expertise needed
|
||||
|
||||
### Constraints
|
||||
- Technical: WordPress + Tailwind, mobile-first, low maintenance
|
||||
- Business: Björn at capacity, phone-first contact strategy
|
||||
- Brand: Professional but unpretentious, warm and practical tone
|
||||
|
||||
### Strategic Direction
|
||||
- Primary: Reduce repetitive info calls
|
||||
- Secondary: Rank for "bilverkstad Öland" keywords
|
||||
- Future: AI phone assistant integration
|
||||
```
|
||||
|
||||
### Cumulative Growth: Add After Each Step
|
||||
|
||||
**After Business Goals created:**
|
||||
```markdown
|
||||
### Business Goals (Added to Layer 2)
|
||||
**Vision:** [Inspirational direction]
|
||||
**SMART Objectives:**
|
||||
1. [Measurable target]
|
||||
2. [Measurable target]
|
||||
3. [Measurable target]
|
||||
|
||||
**Priorities:** [Ranked]
|
||||
```
|
||||
|
||||
**After Target Groups created:**
|
||||
```markdown
|
||||
### Target Groups (Added to Layer 2)
|
||||
**Primary 👥:** [Group name] - [Why they matter to Goal 1]
|
||||
**Secondary 👤:** [Group name] - [Why they matter]
|
||||
**Tertiary:** [Group name] - [Why they matter]
|
||||
|
||||
[Full persona profiles with psychological depth]
|
||||
```
|
||||
|
||||
**After Driving Forces created:**
|
||||
```markdown
|
||||
### Driving Forces (Added to Layer 2)
|
||||
**Per Persona:**
|
||||
- Positive Drivers (✅): [List]
|
||||
- Negative Drivers (❌): [List]
|
||||
|
||||
[Specific, contextual, actionable]
|
||||
```
|
||||
|
||||
**After Prioritization created:**
|
||||
```markdown
|
||||
### Prioritization (Added to Layer 2)
|
||||
- Goals ranked: [Order]
|
||||
- Groups ranked: [Order]
|
||||
- Drivers ranked per persona: [Top 3 each]
|
||||
|
||||
**Strategic Focus:** [Summary of what matters most]
|
||||
```
|
||||
|
||||
**Key Principle:** Each subsequent generation step uses ALL prior artifacts from Layer 2.
|
||||
|
||||
---
|
||||
|
||||
## Layer 3: Domain Research (Ongoing)
|
||||
|
||||
**Purpose:** Agent acts as domain expert through research. Enhances Product Brief with industry insights.
|
||||
|
||||
### Research Per Step
|
||||
|
||||
**For Business Goals:**
|
||||
- WebSearch: "[Industry] business goals best practices"
|
||||
- WebSearch: "[Business type] success metrics"
|
||||
- Look for: Common SMART objectives in this industry
|
||||
|
||||
**For Target Groups:**
|
||||
- WebSearch: "[Business type] customer types"
|
||||
- WebSearch: "[Location/context] user behavior"
|
||||
- Look for: Who actually uses these services and why
|
||||
|
||||
**Example for Källa (Car Mechanic on Öland):**
|
||||
```
|
||||
WebSearch: "car mechanic rural tourist area customer types"
|
||||
WebSearch: "northern Öland tourism caravan RV statistics"
|
||||
WebSearch: "seasonal mechanic business challenges Sweden"
|
||||
```
|
||||
|
||||
**For Driving Forces:**
|
||||
- WebSearch: "[User type] pain points frustrations"
|
||||
- WebSearch: "[Service] user reviews complaints"
|
||||
- Look for: Real user voices, forums, review sites
|
||||
|
||||
**Example for Tourist persona:**
|
||||
```
|
||||
WebSearch: "car breakdown vacation stress what customers want"
|
||||
WebSearch: "tourist mechanic trust safety concerns"
|
||||
Forums: Reddit r/travel, car forums about breakdowns while traveling
|
||||
```
|
||||
|
||||
**For Prioritization:**
|
||||
- WebSearch: "[Business type] what matters most to customers"
|
||||
- WebSearch: "[Industry] feature prioritization"
|
||||
- Competitor analysis: What do similar businesses emphasize?
|
||||
|
||||
### Research Documentation
|
||||
|
||||
```markdown
|
||||
## Layer 3: Domain Research
|
||||
|
||||
### Step: [Current step name]
|
||||
|
||||
**Research Conducted:**
|
||||
1. WebSearch: "[Query]"
|
||||
- Finding: [Key insight]
|
||||
- Relevance: [How this informs generation]
|
||||
|
||||
2. WebSearch: "[Query]"
|
||||
- Finding: [Key insight]
|
||||
- Relevance: [How this informs generation]
|
||||
|
||||
**Key Insights:**
|
||||
- [Domain-specific pattern discovered]
|
||||
- [Industry standard identified]
|
||||
- [User behavior validated]
|
||||
|
||||
**Informing Generation:**
|
||||
[How research will be applied to this step]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Layer 4: Generate Artifact
|
||||
|
||||
**Purpose:** Create output by applying WDS Form (Layer 1) + Project Context (Layer 2) + Domain Research (Layer 3).
|
||||
|
||||
### Generation Process
|
||||
|
||||
**Synthesis Statement (before generating):**
|
||||
|
||||
```markdown
|
||||
## Generation Plan: [Artifact name]
|
||||
|
||||
**Applying:**
|
||||
- WDS Form: [Structure from Layer 1]
|
||||
- Project Context: [All prior artifacts from Layer 2]
|
||||
- Domain Research: [Insights from Layer 3]
|
||||
|
||||
**Expected Output:**
|
||||
[What will be created, aligned to which criteria]
|
||||
```
|
||||
|
||||
### Step-by-Step Generation
|
||||
|
||||
**For Phase 2 Trigger Mapping:**
|
||||
|
||||
#### Step 1: Business Goals
|
||||
|
||||
**Input:**
|
||||
- Form: Vision + SMART objectives structure (Layer 1)
|
||||
- Substance: Product Brief goals and success criteria (Layer 2)
|
||||
- Research: Industry best practices for this business type (Layer 3)
|
||||
|
||||
**Generate:**
|
||||
1. Vision statement (inspirational, directional)
|
||||
2. 3-5 SMART objectives (measurable, time-bound)
|
||||
3. Connection to product/solution
|
||||
|
||||
**Example Output Structure:**
|
||||
```markdown
|
||||
## Business Goals
|
||||
|
||||
### Vision
|
||||
[Inspirational statement about where business is going]
|
||||
|
||||
### SMART Objectives
|
||||
1. [Specific - Measurable - Achievable - Relevant - Time-bound]
|
||||
2. [...]
|
||||
3. [...]
|
||||
|
||||
### Product Connection
|
||||
[How the product/website serves these goals]
|
||||
```
|
||||
|
||||
#### Step 2: Target Groups
|
||||
|
||||
**Input:**
|
||||
- Form: 3-4 groups max, prioritized, connected to goals (Layer 1)
|
||||
- Substance: Product Brief archetypes + Business Goals (Layer 2)
|
||||
- Research: Customer types for this industry + location (Layer 3)
|
||||
|
||||
**Generate:**
|
||||
1. Refine Product Brief archetypes into strategic target groups
|
||||
2. Connect each to business goals they serve
|
||||
3. Prioritize: Primary 👥, Secondary 👤, Tertiary
|
||||
4. Create detailed persona for each
|
||||
|
||||
**Persona Template (Psychological Depth):**
|
||||
```markdown
|
||||
### [Alliterative Name the Role]
|
||||
|
||||
**Context:** [When/why they use product - usage context, not life context]
|
||||
|
||||
**Psychological Profile:**
|
||||
- Role: [Their position relative to product]
|
||||
- Mindset: [How they think/feel in this context]
|
||||
- Internal State: [Confidence, anxiety, urgency, etc.]
|
||||
|
||||
**What They're Trying to Achieve:**
|
||||
[High-level goals in this usage context]
|
||||
|
||||
**What They Fear/Want to Avoid:**
|
||||
[High-level fears in this usage context]
|
||||
|
||||
**Why They Matter to Business Goals:**
|
||||
[Connection to specific SMART objectives]
|
||||
```
|
||||
|
||||
#### Step 3: Driving Forces
|
||||
|
||||
**Input:**
|
||||
- Form: Positive + negative drivers, equal weight, contextual (Layer 1)
|
||||
- Substance: Personas + Business Goals (Layer 2)
|
||||
- Research: User pain points, reviews, forums, behavior patterns (Layer 3)
|
||||
|
||||
**Generate for EACH persona:**
|
||||
|
||||
**Positive Drivers (✅ 3-5 per persona):**
|
||||
- What they want to achieve (usage goals, not life goals)
|
||||
- Specific to context (not generic "save time")
|
||||
- Actionable (designer can create feature from this)
|
||||
|
||||
**Negative Drivers (❌ 3-5 per persona):**
|
||||
- What they want to avoid (fears, frustrations)
|
||||
- Specific and visceral (loss aversion is powerful)
|
||||
- Equally detailed as positive drivers
|
||||
|
||||
**Example Format:**
|
||||
```markdown
|
||||
### Tomas the Tourist - Driving Forces
|
||||
|
||||
**Positive Drivers (✅):**
|
||||
1. Get back on road quickly without ruining vacation plans
|
||||
2. Feel confident that mechanic is certified and trustworthy
|
||||
3. Understand what's wrong and what it costs before committing
|
||||
4. Know exact timeline so can adjust other plans accordingly
|
||||
|
||||
**Negative Drivers (❌):**
|
||||
1. Fear being stranded on vacation far from home
|
||||
2. Fear getting ripped off by unknown mechanic in unfamiliar place
|
||||
3. Avoid wasting vacation time waiting with no updates
|
||||
4. Avoid surprise costs that blow vacation budget
|
||||
```
|
||||
|
||||
#### Step 4: Prioritization
|
||||
|
||||
**Input:**
|
||||
- Form: Rank goals, groups, drivers (Layer 1)
|
||||
- Substance: All of above (Layer 2)
|
||||
- Research: What matters most in this industry (Layer 3)
|
||||
|
||||
**Generate:**
|
||||
1. Business Goals ranked (which matters most NOW)
|
||||
2. Target Groups ranked (which impacts top goal most)
|
||||
3. Driving Forces ranked per persona (top 3 most urgent)
|
||||
|
||||
**Output Strategic Focus Statement:**
|
||||
```markdown
|
||||
## Strategic Focus
|
||||
|
||||
**Priority 1 Goal:** [Top business objective]
|
||||
**Priority 1 User:** [Primary persona]
|
||||
**Priority 1 Drivers:** [Top 3 forces for primary persona]
|
||||
|
||||
This combination guides all design decisions.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Layer 5: Self-Review Against Standards
|
||||
|
||||
**Purpose:** Check generated output against WDS rubric, identify gaps, decide if refinement needed.
|
||||
|
||||
### Self-Review Process
|
||||
|
||||
**Run through rubric systematically:**
|
||||
|
||||
#### Completeness Check (5 min)
|
||||
|
||||
```markdown
|
||||
## Self-Review: [Artifact] - Iteration {{N}}
|
||||
|
||||
### Completeness: {{X}}/9
|
||||
|
||||
**Core Sections:**
|
||||
- [✅/❌] Business Goals (vision + SMART)
|
||||
- [✅/❌] Product Hub
|
||||
- [✅/❌] Target Groups (3-4, prioritized)
|
||||
- [✅/❌] Detailed Personas (psychological depth)
|
||||
- [✅/❌] Positive Drivers (3-5 per persona)
|
||||
- [✅/❌] Negative Drivers (3-5 per persona)
|
||||
- [✅/❌] Prioritization
|
||||
|
||||
**Optional:**
|
||||
- [✅/❌] Feature Impact Analysis
|
||||
- [✅/❌] Visual Diagram
|
||||
|
||||
**Score:** {{X}}/9 (Target: 7+ core minimum)
|
||||
```
|
||||
|
||||
#### Quality Criteria Check (10 min)
|
||||
|
||||
For each of 7 criteria: ✅ (met), ⚠️ (partial), ❌ (gap)
|
||||
|
||||
```markdown
|
||||
### Quality Criteria: {{X}}/7
|
||||
|
||||
1. **Strategic Depth:** [✅/⚠️/❌]
|
||||
- Evidence: [Quote or example showing depth]
|
||||
- Gap (if any): [What needs more depth]
|
||||
|
||||
2. **Usage Context:** [✅/⚠️/❌]
|
||||
- Evidence: [Are goals contextual?]
|
||||
- Gap (if any): [Examples of non-contextual goals]
|
||||
|
||||
3. **Persona Depth:** [✅/⚠️/❌]
|
||||
- Evidence: [Psychological vs demographic?]
|
||||
- Gap (if any): [Which personas need more psychology]
|
||||
|
||||
4. **Negative Drivers:** [✅/⚠️/❌]
|
||||
- Evidence: [Balance of positive vs negative]
|
||||
- Gap (if any): [Missing or weak negative drivers]
|
||||
|
||||
5. **Focused Scope:** [✅/⚠️/❌]
|
||||
- Evidence: [3-4 groups? Or too many?]
|
||||
- Gap (if any): [Need to consolidate?]
|
||||
|
||||
6. **Actionable Specificity:** [✅/⚠️/❌]
|
||||
- Evidence: [Concrete examples vs vague]
|
||||
- Gap (if any): [Which forces too vague]
|
||||
|
||||
7. **Business Connection:** [✅/⚠️/❌]
|
||||
- Evidence: [Can trace users to goals?]
|
||||
- Gap (if any): [Floating users without connection]
|
||||
|
||||
**Score:** {{X}}/7 (Target: 5+ minimum, 7 excellent)
|
||||
```
|
||||
|
||||
#### Common Mistakes Check (5 min)
|
||||
|
||||
```markdown
|
||||
### Common Mistakes: {{X}}/4 avoided
|
||||
|
||||
- [✅/❌] No solutions on map (drivers about psychology, not features)
|
||||
- [✅/❌] No generic forces (specific to this context)
|
||||
- [✅/❌] No demographic personas (focused on psychology)
|
||||
- [✅/❌] Clear priority (ranking exists and defensible)
|
||||
|
||||
**Score:** {{X}}/4 (Target: 4/4 required)
|
||||
```
|
||||
|
||||
#### Best Practices Check (5 min)
|
||||
|
||||
```markdown
|
||||
### Best Practices: {{X}}/4 followed
|
||||
|
||||
- [✅/❌] Alliterative persona names
|
||||
- [✅/❌] Equal weight to negative drivers
|
||||
- [✅/❌] Context explicitly stated
|
||||
- [✅/❌] Visual diagram created
|
||||
|
||||
**Score:** {{X}}/4 (Target: 2+ minimum, 4 excellent)
|
||||
```
|
||||
|
||||
#### Overall Assessment
|
||||
|
||||
```markdown
|
||||
### Overall Quality Score: {{X}}/10
|
||||
|
||||
**Completeness:** {{X}}/9
|
||||
**Quality:** {{X}}/7
|
||||
**Mistakes Avoided:** {{X}}/4
|
||||
**Best Practices:** {{X}}/4
|
||||
|
||||
**Threshold Analysis:**
|
||||
- Minimum (present to user): 7+ complete, 5+ quality, 4 mistakes, 2+ practices
|
||||
- Excellent: 9+ complete, 7 quality, 4 mistakes, 4 practices
|
||||
|
||||
**Current Status:** [Meets minimum / Meets excellent / Needs refinement]
|
||||
|
||||
**Key Gaps:**
|
||||
1. [Specific gap with evidence]
|
||||
2. [Specific gap with evidence]
|
||||
|
||||
**Refinement Decision:** [Continue / Refine / Switch to Workshop]
|
||||
```
|
||||
|
||||
### Refinement Planning (If Needed)
|
||||
|
||||
```markdown
|
||||
## Refinement Plan: Iteration {{N+1}}
|
||||
|
||||
### Gap 1: [Description]
|
||||
**Current:** [What's wrong]
|
||||
**Target:** [What it should be]
|
||||
**Action:** [Specific change]
|
||||
**Reference:** [Rubric criteria or example guiding this]
|
||||
|
||||
### Gap 2: [Description]
|
||||
[Same structure]
|
||||
|
||||
### Expected Improvement:
|
||||
- Completeness: {{current}} → {{target}}
|
||||
- Quality: {{current}} → {{target}}
|
||||
- Overall: {{current}}/10 → {{target}}/10
|
||||
```
|
||||
|
||||
**Then generate Iteration N+1 with refinements applied, using full 5-layer process again.**
|
||||
|
||||
---
|
||||
|
||||
## Mode-Specific Presentation
|
||||
|
||||
### Suggest Mode: User Checkpoints
|
||||
|
||||
**After each iteration, show:**
|
||||
|
||||
```markdown
|
||||
## Suggest Mode: Iteration {{N}}
|
||||
|
||||
### What I Created
|
||||
[Summary of artifact section generated]
|
||||
|
||||
Key elements:
|
||||
- [Bullet point summary]
|
||||
- [Sample content]
|
||||
|
||||
### Learning & Research Applied
|
||||
**WDS Form:** [What methodology guided structure]
|
||||
**Project Context:** [What prior artifacts informed this]
|
||||
**Domain Research:** [What insights enhanced this]
|
||||
|
||||
### Self-Review Results
|
||||
**Quality Score:** {{X}}/10
|
||||
|
||||
**Strengths:**
|
||||
- ✅ [What's working well]
|
||||
- ✅ [What meets standards]
|
||||
|
||||
**Gaps Identified:**
|
||||
- ❌ [What needs improvement]
|
||||
- ⚠️ [What's partial]
|
||||
|
||||
**Refinement Plan:**
|
||||
[If needed, what will be improved in next iteration]
|
||||
|
||||
---
|
||||
|
||||
**👉 User Checkpoint:** What would you like to do?
|
||||
|
||||
[C] Continue - Looks good, proceed (or refine if gaps exist)
|
||||
[A] Adjust - I have feedback to guide refinement
|
||||
[V] View Full - Show me complete generated content now
|
||||
[S] Stop - Switch to Workshop Mode for dialog
|
||||
|
||||
Type your choice or provide feedback:
|
||||
```
|
||||
|
||||
**Wait for user input. Do NOT continue without approval.**
|
||||
|
||||
### Dream Mode: Autonomous Progress
|
||||
|
||||
**Show running updates:**
|
||||
|
||||
```markdown
|
||||
## Dream Mode: Trigger Map Generation
|
||||
|
||||
### Progress
|
||||
|
||||
🔄 **Business Goals**
|
||||
Generated → Self-reviewed → Quality: 8/10 → ✅ Threshold met
|
||||
|
||||
🔄 **Target Groups**
|
||||
Generated → Self-reviewed → Quality: 7/10 → Gaps found → Refining...
|
||||
Iteration 2 → Self-reviewed → Quality: 9/10 → ✅ Threshold met
|
||||
|
||||
🔄 **Driving Forces**
|
||||
Generated → Self-reviewed → Quality: 8/10 → ✅ Threshold met
|
||||
|
||||
🔄 **Prioritization**
|
||||
Generated → Self-reviewed → Quality: 9/10 → ✅ Threshold met
|
||||
|
||||
---
|
||||
|
||||
**✅ Generation Complete**
|
||||
|
||||
**Final Quality Assessment:** 9/10
|
||||
- Completeness: 9/9 ✅
|
||||
- Quality Criteria: 7/7 ✅
|
||||
- Mistakes Avoided: 4/4 ✅
|
||||
- Best Practices: 4/4 ✅
|
||||
|
||||
📄 **Trigger Map created:** {output_folder}/B-Trigger-Map/trigger-map.md
|
||||
|
||||
Would you like to review the full Trigger Map now?
|
||||
|
||||
---
|
||||
|
||||
💬 **Note:** You could have typed "stop" at any time to interrupt.
|
||||
```
|
||||
|
||||
**No user checkpoints - continue autonomously until complete or interrupted.**
|
||||
|
||||
---
|
||||
|
||||
## Final Output Presentation
|
||||
|
||||
**When all steps complete and threshold met:**
|
||||
|
||||
```markdown
|
||||
## Trigger Map Generation Complete ✅
|
||||
|
||||
**Mode:** {{Suggest/Dream}}
|
||||
**Total Iterations:** {{count across all steps}}
|
||||
**Final Quality Score:** {{X}}/10
|
||||
|
||||
### Generated Artifact
|
||||
**Location:** {output_folder}/B-Trigger-Map/trigger-map.md
|
||||
|
||||
**Contents:**
|
||||
- Business Goals: {{vision}} + {{N}} SMART objectives
|
||||
- Target Groups: {{N}} personas ({{names}})
|
||||
- Driving Forces: {{N}} positive + {{N}} negative per persona
|
||||
- Prioritization: Complete ranking
|
||||
- {{If created}} Feature Impact Analysis
|
||||
- {{If created}} Visual Mermaid Diagram
|
||||
|
||||
### Quality Validation
|
||||
- ✅ WDS Form Applied: All structure requirements met
|
||||
- ✅ Project Context Used: All Product Brief insights integrated
|
||||
- ✅ Domain Research: Industry insights enhanced generation
|
||||
- ✅ Self-Review: All quality criteria met
|
||||
|
||||
### Strategic Insights
|
||||
[2-3 key takeaways from the completed Trigger Map]
|
||||
|
||||
### What's Next
|
||||
This Trigger Map feeds into:
|
||||
- **Phase 4 (UX Design)** - Personas and drivers guide scenario design
|
||||
- **Feature Prioritization** - Feature Impact scores guide roadmap
|
||||
- **Content Strategy** - Driving forces guide messaging
|
||||
|
||||
Would you like to:
|
||||
- [R] Review the full Trigger Map
|
||||
- [A] Make adjustments
|
||||
- [N] Continue to next phase
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Switching to Workshop Mode
|
||||
|
||||
**If 5 iterations on ANY step without meeting threshold:**
|
||||
|
||||
```markdown
|
||||
## Quality Threshold Challenge
|
||||
|
||||
On step: [Step name]
|
||||
|
||||
After 5 iterations, this section hasn't met minimum quality standards. This suggests human insight would be valuable.
|
||||
|
||||
**Current State:**
|
||||
- Quality Score: {{X}}/10
|
||||
- Persistent gaps: [List issues that won't resolve]
|
||||
|
||||
**Recommendation:** Switch to Workshop Mode for this section
|
||||
|
||||
I'll facilitate questions specifically about [the gap areas] to capture your expertise and ensure quality.
|
||||
|
||||
Would you like to:
|
||||
[W] Switch to Workshop Mode for this section (recommended)
|
||||
[C] Continue autonomous generation (may repeat same issues)
|
||||
[V] View current state and decide
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Agent Dialog Documentation
|
||||
|
||||
**Throughout process, maintain comprehensive agent dialog:**
|
||||
|
||||
```markdown
|
||||
# Agent Dialog: Dream Up - Källa Trigger Map
|
||||
|
||||
**Created:** {{date time}}
|
||||
**Mode:** {{Suggest/Dream}}
|
||||
**Phase:** 2 (Trigger Mapping)
|
||||
**Project:** Källa Fordonservice
|
||||
|
||||
---
|
||||
|
||||
## Layer 1: WDS Form Learned
|
||||
[Full learning documentation]
|
||||
|
||||
---
|
||||
|
||||
## Layer 2: Project Context (Cumulative)
|
||||
|
||||
### Initial: Product Brief
|
||||
[Extracted substance]
|
||||
|
||||
### Added: Business Goals
|
||||
[After generation]
|
||||
|
||||
### Added: Target Groups
|
||||
[After generation]
|
||||
|
||||
### Added: Driving Forces
|
||||
[After generation]
|
||||
|
||||
### Added: Prioritization
|
||||
[After generation]
|
||||
|
||||
---
|
||||
|
||||
## Layer 3: Domain Research
|
||||
|
||||
### Step: Business Goals
|
||||
[Research conducted and insights]
|
||||
|
||||
### Step: Target Groups
|
||||
[Research conducted and insights]
|
||||
|
||||
### Step: Driving Forces
|
||||
[Research conducted and insights]
|
||||
|
||||
### Step: Prioritization
|
||||
[Research conducted and insights]
|
||||
|
||||
---
|
||||
|
||||
## Generation & Self-Review Log
|
||||
|
||||
### Business Goals - Iteration 1
|
||||
[Full self-review]
|
||||
|
||||
### Target Groups - Iteration 1
|
||||
[Full self-review]
|
||||
|
||||
### Target Groups - Iteration 2 (refinement)
|
||||
[Full self-review]
|
||||
|
||||
[Continue for all steps and iterations]
|
||||
|
||||
---
|
||||
|
||||
## Final Output
|
||||
|
||||
**Artifact:** {path}
|
||||
**Quality Score:** {{X}}/10
|
||||
**User Approved:** {{Yes/Pending}}
|
||||
|
||||
**Key Decisions Made:**
|
||||
[Strategic choices during generation]
|
||||
```
|
||||
|
||||
**Save agent dialog at:**
|
||||
```
|
||||
{output_folder}/_progress/agent-dialogs/{date}-trigger-map-{{mode}}.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Tips for Quality Self-Review
|
||||
|
||||
### Be Honest, Not Optimistic
|
||||
- Mark ⚠️ partial even if "pretty good"
|
||||
- Mark ❌ gap if rubric shows higher bar
|
||||
- Don't inflate scores to meet threshold faster
|
||||
|
||||
### Use Rubric Examples Directly
|
||||
- Compare output to good/bad examples in rubric
|
||||
- If matches "bad example" → ❌
|
||||
- If between → ⚠️
|
||||
- If matches "good example" → ✅
|
||||
|
||||
### Actionability Test
|
||||
- Can designer create feature from this driving force?
|
||||
- Would two designers interpret this persona the same?
|
||||
- Can I trace this user to a specific business goal?
|
||||
|
||||
### Context is King
|
||||
- "Want to save time" = ❌ Generic
|
||||
- "Want to find phone within 3 seconds because stressed on vacation" = ✅ Contextual
|
||||
|
||||
### Psychology Over Demographics
|
||||
- "Sarah, 35, consultant" = ❌ Demographic
|
||||
- "Sophie struggles with imposter syndrome when presenting to executives" = ✅ Psychological
|
||||
|
||||
---
|
||||
|
||||
*This guide enables Saga to execute Suggest and Dream modes for Phase 2 Trigger Mapping with quality control through systematic 5-layer generation and self-review.*
|
||||
|
|
@ -0,0 +1,215 @@
|
|||
# Inspiration Analysis Workshop (Product Brief)
|
||||
|
||||
**When to load:** After Visual Direction, as final Product Brief companion document
|
||||
**Agent:** Saga or Freya
|
||||
|
||||
---
|
||||
|
||||
## Why This Matters
|
||||
|
||||
Without documented visual/UX preferences from real examples, Dream Up agents must guess what the client likes. This causes:
|
||||
|
||||
- **Wasted iterations** where client says "not that style" after seeing output
|
||||
- **Abstract feedback** ("make it more modern") that's impossible to action precisely
|
||||
- **Misalignment** between what the agent generates and what the client envisioned
|
||||
- **Lost time** in later phases correcting direction that could have been captured early
|
||||
|
||||
**The power of this document:** When a client says "I like that layout" pointing at a real site, you now have a concrete, documented reference. Not abstract words — a real example with specific elements they approved or rejected.
|
||||
|
||||
**For Dream Up quality:** Every future generation can self-review against documented preferences. "Did I follow the layout principle from Site 1 that the client liked? Did I avoid the pattern from Site 2 they rejected?"
|
||||
|
||||
---
|
||||
|
||||
## What We Need to Know
|
||||
|
||||
**Satisfaction criteria — by the end you should have:**
|
||||
|
||||
1. **Documented reactions to real sites** — specific elements liked/disliked with WHY
|
||||
2. **Visual style preferences** — from concrete examples, not abstract descriptions
|
||||
3. **Layout and structure patterns** — what arrangements appeal to the client
|
||||
4. **UX patterns** — what interaction patterns they prefer
|
||||
5. **Anti-patterns** — what they've explicitly rejected (with examples)
|
||||
6. **Synthesized design principles** — strategic takeaways that guide all future design
|
||||
|
||||
**Quality bar:**
|
||||
- At least 2 sites analyzed (more if client provides them)
|
||||
- For each site: specific elements with client's reaction (not vague overall impression)
|
||||
- Synthesized principles clear enough for a Dream Up agent to self-review against
|
||||
- Client confirms: "Yes, this captures what I'm looking for"
|
||||
|
||||
---
|
||||
|
||||
## The Process
|
||||
|
||||
### Getting URLs
|
||||
|
||||
Ask the client for 2-4 sites they find inspiring. These could be:
|
||||
- Sites with layout/structure they like
|
||||
- Competitor sites (to learn what works and doesn't)
|
||||
- Sites with visual style they admire
|
||||
- Sites with UX patterns they want to adopt
|
||||
|
||||
**If client is hesitant:** Even one site with one thing they like is valuable. Don't require perfection — any concrete reference beats abstract descriptions.
|
||||
|
||||
**If client has no references:** Offer to find 2-3 examples in their industry. Show them and ask for reactions.
|
||||
|
||||
### Analyzing Each Site
|
||||
|
||||
**Step 1: Load the site** — use browser/WebFetch tools to see what the client sees.
|
||||
|
||||
**Step 2: Ask open first** — "What drew you to this site?" / "What do you like about it?" Let the client lead.
|
||||
|
||||
**Step 3: Get specific** — naturally ask about elements you can see on the site. Don't use a checklist. Ask about what's actually there:
|
||||
- Their layout approach
|
||||
- How they handle navigation
|
||||
- How content is displayed
|
||||
- Visual style and imagery
|
||||
- Specific elements (maps, forms, testimonials, etc.)
|
||||
- Performance and load feel
|
||||
|
||||
**Step 4: Capture nuance** — listen for:
|
||||
- Approval ("like that") — document what specifically and why
|
||||
- Rejection ("don't like that") — document what and why not
|
||||
- Conditional ("like but...") — document the adaptation needed
|
||||
- The WHY behind each reaction is more valuable than the reaction itself
|
||||
|
||||
**Step 5: Extract principles** — as patterns emerge across sites, identify strategic takeaways. Test your understanding: "I'm noticing you prefer X — is that fair?"
|
||||
|
||||
### Synthesizing
|
||||
|
||||
After all sites are analyzed, organize findings into design principles by category:
|
||||
- Layout patterns (to use / to avoid)
|
||||
- Content hierarchy (priorities / anti-patterns)
|
||||
- Visual style (direction / what to avoid)
|
||||
- UX patterns (interactions / anti-patterns)
|
||||
|
||||
**Confirm with client:** "Based on what you liked and didn't like, here's what I'm taking away. Does this capture your vision?"
|
||||
|
||||
---
|
||||
|
||||
## Types of Information to Surface
|
||||
|
||||
**Layout and structure:**
|
||||
- Single-page vs multi-page preference
|
||||
- Section organization and flow
|
||||
- Content density (busy vs minimal)
|
||||
- White space usage
|
||||
|
||||
**Navigation and UX:**
|
||||
- Menu style (simple vs complex)
|
||||
- How key actions are accessed (contact, booking, etc.)
|
||||
- Mobile behavior
|
||||
- Scroll behavior
|
||||
|
||||
**Visual style:**
|
||||
- Color palette impression
|
||||
- Typography feel (modern, classic, etc.)
|
||||
- Photo style (real vs stock, dark vs light)
|
||||
- Overall aesthetic (minimal, rich, corporate, casual)
|
||||
|
||||
**Content display:**
|
||||
- How services/features are shown (grid, list, cards)
|
||||
- Testimonial/review presentation
|
||||
- How contact info is displayed
|
||||
- Map and location presentation
|
||||
|
||||
**Performance and feel:**
|
||||
- Loading speed impression
|
||||
- Animation and movement
|
||||
- Overall "feel" (fast, heavy, smooth, clunky)
|
||||
|
||||
---
|
||||
|
||||
## What to Document
|
||||
|
||||
Create `inspiration-analysis.md` in the Product Brief output folder.
|
||||
|
||||
**For each site:**
|
||||
```markdown
|
||||
## Site: [Name or URL]
|
||||
|
||||
### What Client Liked
|
||||
- [Specific element] — [Why it works for them]
|
||||
- [Specific element] — [Why it works]
|
||||
|
||||
### What Client Didn't Like
|
||||
- [Specific element] — [Why it doesn't work]
|
||||
|
||||
### Adaptations Needed
|
||||
- [Element] — [Like the concept but needs modification because...]
|
||||
|
||||
### Principles Extracted
|
||||
- [Strategic takeaway from this site]
|
||||
```
|
||||
|
||||
**Synthesis:**
|
||||
```markdown
|
||||
## Design Principles (from all sites)
|
||||
|
||||
### Layout
|
||||
- DO: [Patterns to follow]
|
||||
- DON'T: [Patterns to avoid]
|
||||
|
||||
### Content Hierarchy
|
||||
- DO: [How to prioritize]
|
||||
- DON'T: [What not to do]
|
||||
|
||||
### Visual Style
|
||||
- DO: [Visual direction]
|
||||
- DON'T: [What to avoid]
|
||||
|
||||
### User Experience
|
||||
- DO: [UX patterns to adopt]
|
||||
- DON'T: [Anti-patterns]
|
||||
```
|
||||
|
||||
**Usage note at the end:**
|
||||
```markdown
|
||||
## How to Use This Document
|
||||
|
||||
**For Scenario Outlining (Phase 4):**
|
||||
Reference layout patterns when designing user flows
|
||||
|
||||
**For Page Design (Phase 5):**
|
||||
Use extracted principles as design checklist.
|
||||
Reference "What Client Liked" for visual direction.
|
||||
Avoid "What Client Didn't Like" patterns.
|
||||
|
||||
**For Dream Up self-review:**
|
||||
Check generated output against documented preferences.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Red Flags
|
||||
|
||||
**"I like everything about it"** → Nothing is perfect. Probe: "Even if we could copy it exactly, what would you adjust for your business?"
|
||||
|
||||
**"I hate everything"** → Something drew them to share it. Ask: "What made you think of this site initially?"
|
||||
|
||||
**Contradictory preferences** → Different contexts may drive different preferences. Explore: "These sites have very different approaches — what draws you to each?"
|
||||
|
||||
**Overly technical feedback** ("Great CSS grid implementation") → Redirect to user value: "What does that achieve for visitors that you like?"
|
||||
|
||||
**Brand name dropping** ("Make it like Apple") → Probe specifics: "What specifically about Apple's approach appeals to you? The minimalism? The product focus? The typography?"
|
||||
|
||||
---
|
||||
|
||||
## Success Criteria
|
||||
|
||||
**You've succeeded when:**
|
||||
- Client has reacted to specific visual/UX elements from real examples
|
||||
- Preferences are documented with concrete references (not abstract words)
|
||||
- Design principles are clear and actionable
|
||||
- Anti-patterns are explicitly documented
|
||||
- Client confirms the synthesis captures their vision
|
||||
|
||||
**Dream Up agents can now:**
|
||||
- Reference documented preferences during generation
|
||||
- Self-review against specific approved examples
|
||||
- Avoid patterns the client explicitly rejected
|
||||
- Design with confidence they're aligned
|
||||
|
||||
---
|
||||
|
||||
*Concrete examples beat abstract descriptions every time. This document turns "make it modern" into "like Site A's single-page layout with fixed contact header, but simpler than Site B's cluttered services grid."*
|
||||
|
|
@ -0,0 +1,391 @@
|
|||
# Saga's SEO Strategy Guide
|
||||
|
||||
**When to load:** During Content & Language phase (step-05) for any public website project
|
||||
|
||||
---
|
||||
|
||||
## Core Principle
|
||||
|
||||
**SEO is content strategy, not an afterthought.** Keywords, URL structure, and page-level optimization should be planned during the project brief — not bolted on during development.
|
||||
|
||||
---
|
||||
|
||||
## 1. Keyword Strategy
|
||||
|
||||
### Keyword Research Process
|
||||
|
||||
1. **Gather existing research** — Ask client for keywords they want to rank for
|
||||
2. **Analyze competitors** — What terms do competing businesses rank for?
|
||||
3. **Map user intent** — What would a real person search for?
|
||||
4. **Localize per language** — Keywords don't translate directly
|
||||
|
||||
### Keyword Categories by Intent
|
||||
|
||||
| Category | Intent | Example (Mechanic) |
|
||||
|----------|--------|---------------------|
|
||||
| **Service** | Looking for specific service | "bilservice Öland" |
|
||||
| **Location** | Near-me searches | "bilverkstad norra Öland" |
|
||||
| **Problem** | Has a specific issue | "AC reparation bil" |
|
||||
| **Brand** | Looking for the business | "Källa Fordonservice" |
|
||||
| **Informational** | Seeking knowledge | "när byta bromsklossar" |
|
||||
|
||||
### Keyword Localization
|
||||
|
||||
Keywords don't translate word-for-word. For each language:
|
||||
|
||||
- What would a **native speaker** actually search?
|
||||
- What **local terminology** is used? (e.g., "däck" vs "tire" vs "Reifen")
|
||||
- What **misspellings** are common?
|
||||
- What **long-tail phrases** exist? (e.g., "bilverkstad med AC-service nära mig")
|
||||
|
||||
---
|
||||
|
||||
## 2. URL Structure
|
||||
|
||||
### Best Practices
|
||||
|
||||
- **Short and descriptive** — `/tjanster/ac-service` not `/page?id=42`
|
||||
- **Lowercase, hyphens** — `/dack-service` not `/Däck_Service`
|
||||
- **Keyword-rich** — Include primary keyword in slug
|
||||
- **Consistent pattern** — Same depth/format across the site
|
||||
- **No special characters** — Use ASCII equivalents (å→a, ä→a, ö→o in URL slugs)
|
||||
|
||||
### Multi-language URL Patterns
|
||||
|
||||
**Recommended: Subdirectory structure**
|
||||
|
||||
```
|
||||
example.com/ → Primary language (Swedish)
|
||||
example.com/en/ → English
|
||||
example.com/de/ → German
|
||||
```
|
||||
|
||||
**Alternative: Translated slugs**
|
||||
|
||||
```
|
||||
example.com/tjanster/dackservice → Swedish
|
||||
example.com/en/services/tyre-service → English
|
||||
example.com/de/dienste/reifenservice → German
|
||||
```
|
||||
|
||||
### Page-Keyword Map
|
||||
|
||||
Create a table mapping every page to its target keywords:
|
||||
|
||||
```markdown
|
||||
| Page | URL Slug | Primary Keyword (SE) | Primary Keyword (EN) | Primary Keyword (DE) |
|
||||
|------|----------|---------------------|---------------------|---------------------|
|
||||
| Hem | / | bilverkstad Öland | car repair Öland | Autowerkstatt Öland |
|
||||
| Service | /service | bilservice | car service | Autoservice |
|
||||
| AC service | /ac-service | AC service bil | car AC service | Klimaanlage Auto |
|
||||
```
|
||||
|
||||
This map is referenced by Freya during page specification to ensure every page targets the right keywords.
|
||||
|
||||
---
|
||||
|
||||
## 3. Heading Hierarchy
|
||||
|
||||
### Rules
|
||||
|
||||
- **One H1 per page** — The main page title, contains primary keyword
|
||||
- **Logical H2→H3 flow** — No skipping levels
|
||||
- **Keywords in headings** — Natural, not stuffed
|
||||
- **H1 ≠ Page Title tag** — They can differ (H1 visible on page, title tag in search results)
|
||||
|
||||
### Example
|
||||
|
||||
```
|
||||
H1: Bilservice på Öland — Källa Fordonservice
|
||||
H2: Våra tjänster
|
||||
H3: Service och underhåll
|
||||
H3: AC-service
|
||||
H3: Däckservice
|
||||
H2: Varför välja oss?
|
||||
H2: Kontakta oss
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4. Internal Linking Strategy
|
||||
|
||||
### Principles
|
||||
|
||||
- **Every page should link to at least 2 other pages** on the site
|
||||
- **Use descriptive anchor text** — "Läs mer om vår AC-service" not "Klicka här"
|
||||
- **Link related content** — Service pages link to vehicle type pages and vice versa
|
||||
- **Create hub pages** — Main service page links to all sub-service pages
|
||||
- **Footer links** — Provide site-wide navigation fallback
|
||||
|
||||
### Link Hierarchy
|
||||
|
||||
```
|
||||
Hem (hub)
|
||||
├── Service → links to vehicle types
|
||||
├── Reparationer → links to related services
|
||||
├── AC service → links to booking
|
||||
├── Däckservice → links to seasonal articles
|
||||
├── Articles → link to related services
|
||||
└── Vehicle types → link to relevant services
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. Local SEO
|
||||
|
||||
### NAP Consistency (Name, Address, Phone)
|
||||
|
||||
**The exact same business information must appear:**
|
||||
- On every page of the website (header/footer)
|
||||
- In Google Business Profile
|
||||
- In directory listings
|
||||
- In structured data
|
||||
|
||||
```
|
||||
Name: Källa Fordonservice
|
||||
Address: Löttorpsvägen 31, 387 73 Löttorp
|
||||
Phone: 0485-270 70
|
||||
Email: info@kallafordon.se
|
||||
```
|
||||
|
||||
### Google Business Profile
|
||||
|
||||
Ensure client has:
|
||||
- [ ] Claimed and verified Google Business Profile
|
||||
- [ ] Correct business hours
|
||||
- [ ] Correct business category (e.g., "Auto Repair Shop")
|
||||
- [ ] Photos uploaded
|
||||
- [ ] Description with keywords
|
||||
- [ ] Service area defined
|
||||
|
||||
### Local Keywords
|
||||
|
||||
Include location in key pages:
|
||||
- Page titles: "Bilverkstad i Löttorp på Öland"
|
||||
- Meta descriptions: "...norra Öland..."
|
||||
- H1 headings: "Bilservice på Öland"
|
||||
- Body text: Natural mention of location
|
||||
|
||||
---
|
||||
|
||||
## 6. Multi-Language SEO
|
||||
|
||||
### hreflang Tags
|
||||
|
||||
Every page must declare its language variants:
|
||||
|
||||
```html
|
||||
<link rel="alternate" hreflang="sv" href="https://example.com/tjanster/" />
|
||||
<link rel="alternate" hreflang="en" href="https://example.com/en/services/" />
|
||||
<link rel="alternate" hreflang="de" href="https://example.com/de/dienste/" />
|
||||
<link rel="alternate" hreflang="x-default" href="https://example.com/tjanster/" />
|
||||
```
|
||||
|
||||
### Canonical URLs
|
||||
|
||||
- Each language version has its own canonical URL
|
||||
- `x-default` points to the primary language
|
||||
- No duplicate content issues between language versions
|
||||
|
||||
### Per-Language Optimization
|
||||
|
||||
Each language version needs **independently optimized**:
|
||||
- Page title
|
||||
- Meta description
|
||||
- H1 heading
|
||||
- Image alt text
|
||||
- Structured data
|
||||
|
||||
Do NOT just translate the Swedish SEO — research what users in each language actually search for.
|
||||
|
||||
---
|
||||
|
||||
## 7. Image SEO
|
||||
|
||||
### File Naming
|
||||
|
||||
- **Descriptive names:** `kalla-fordonservice-ac-service.jpg` not `IMG_4521.jpg`
|
||||
- **Hyphens between words:** `dack-service-oland.jpg`
|
||||
- **No special characters:** Use ASCII in filenames
|
||||
|
||||
### Alt Text
|
||||
|
||||
- **Describe the image content** for screen readers
|
||||
- **Include keyword naturally** where relevant
|
||||
- **All languages** must have alt text
|
||||
|
||||
```markdown
|
||||
Alt Text:
|
||||
- SE: "Mekaniker utför AC-service på personbil i Källa Fordonservice verkstad"
|
||||
- EN: "Mechanic performing AC service on car at Källa Fordonservice workshop"
|
||||
- DE: "Mechaniker führt Klimaanlagen-Service am Auto in der Källa Fordonservice Werkstatt durch"
|
||||
```
|
||||
|
||||
### Image Format & Size
|
||||
|
||||
- **WebP** for modern browsers (with JPEG/PNG fallback)
|
||||
- **Lazy loading** for below-the-fold images
|
||||
- **Responsive images** with srcset for different screen sizes
|
||||
- **Max file size:** < 200KB per image (< 100KB preferred)
|
||||
- **Max page weight:** < 3MB total (images + CSS + JS)
|
||||
- **Dimensions:** Always specify width and height attributes (prevents CLS)
|
||||
- **Hero images:** Max 400KB, serve responsive versions (mobile: 768px wide, desktop: 1920px wide)
|
||||
|
||||
---
|
||||
|
||||
## 8. Content SEO Principles
|
||||
|
||||
### Write for Humans First
|
||||
|
||||
- Natural language, not keyword stuffing
|
||||
- Answer the user's actual question
|
||||
- Provide genuine value
|
||||
|
||||
### Keyword Placement (Natural)
|
||||
|
||||
| Location | Priority | Guideline |
|
||||
|----------|----------|-----------|
|
||||
| Page title tag | High | Include primary keyword |
|
||||
| H1 heading | High | Include primary keyword (can differ from title) |
|
||||
| Meta description | High | Include primary keyword + CTA |
|
||||
| First paragraph | Medium | Mention primary keyword early |
|
||||
| H2 headings | Medium | Include secondary keywords |
|
||||
| Body text | Medium | Natural mentions, no stuffing |
|
||||
| Image alt text | Medium | Describe image, keyword if relevant |
|
||||
| URL slug | Medium | Short, keyword-rich |
|
||||
| Internal link text | Low | Descriptive, keyword when natural |
|
||||
|
||||
### Content Length Guidelines
|
||||
|
||||
| Page Type | Minimum Words | Guideline |
|
||||
|-----------|--------------|-----------|
|
||||
| Landing page | 300 | Focused, action-oriented |
|
||||
| Service page | 400-600 | Describe service, benefits, process |
|
||||
| Article/blog | 600-1200 | In-depth, informational |
|
||||
| About page | 300-500 | Story, trust, credentials |
|
||||
| Contact page | 150-300 | Clear, practical |
|
||||
|
||||
---
|
||||
|
||||
## 9. Structured Data (Schema.org)
|
||||
|
||||
### Required for Local Business Sites
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "AutoRepair",
|
||||
"name": "Källa Fordonservice",
|
||||
"address": {
|
||||
"@type": "PostalAddress",
|
||||
"streetAddress": "Löttorpsvägen 31",
|
||||
"addressLocality": "Löttorp",
|
||||
"postalCode": "387 73",
|
||||
"addressCountry": "SE"
|
||||
},
|
||||
"telephone": "+46485-27070",
|
||||
"url": "https://kallafordon.se",
|
||||
"openingHoursSpecification": [...]
|
||||
}
|
||||
```
|
||||
|
||||
### Common Schema Types
|
||||
|
||||
| Schema Type | Use For |
|
||||
|------------|---------|
|
||||
| `LocalBusiness` / `AutoRepair` | Business identity |
|
||||
| `Service` | Individual service pages |
|
||||
| `FAQPage` | FAQ sections |
|
||||
| `BreadcrumbList` | Navigation breadcrumbs |
|
||||
| `Article` | Blog/news articles |
|
||||
| `Organization` | About/corporate pages |
|
||||
|
||||
### Plan During Project Brief
|
||||
|
||||
Document which schema types each page needs:
|
||||
|
||||
```markdown
|
||||
| Page | Schema Type | Key Properties |
|
||||
|------|-------------|----------------|
|
||||
| Hem | LocalBusiness | name, address, phone, hours |
|
||||
| Service | Service | name, description, provider |
|
||||
| Nyheter article | Article | headline, datePublished, author |
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 10. Technical SEO Checklist
|
||||
|
||||
Capture these decisions during platform requirements:
|
||||
|
||||
- [ ] **XML Sitemap** — Auto-generated, includes all languages, referenced in robots.txt
|
||||
- [ ] **Robots.txt** — Allows crawling, blocks admin/private pages, references sitemap
|
||||
- [ ] **SSL/HTTPS** — All pages served over HTTPS
|
||||
- [ ] **Mobile-first** — Responsive, passes Google Mobile-Friendly test
|
||||
- [ ] **Core Web Vitals** — LCP < 2.5s, FID < 100ms, CLS < 0.1
|
||||
- [ ] **Page speed** — < 3 seconds on 4G, total page weight < 3MB
|
||||
- [ ] **404 handling** — Custom 404 page with navigation
|
||||
- [ ] **Redirects** — 301 redirects for old URLs (if site migration)
|
||||
- [ ] **Canonical URLs** — Self-referencing canonical on every page
|
||||
- [ ] **Structured data** — Schema.org markup on key pages
|
||||
- [ ] **hreflang** — Language alternates declared (if multilingual)
|
||||
- [ ] **Favicon** — Site icon for browser tabs, bookmarks, and mobile home screen (multiple sizes: 16x16, 32x32, 180x180, 192x192)
|
||||
- [ ] **Security headers** — HSTS, CSP, X-Content-Type-Options, X-Frame-Options, Referrer-Policy, Permissions-Policy (configure at server/hosting level)
|
||||
- [ ] **Image optimization** — All images < 200KB, WebP format, width/height specified, lazy loading below fold
|
||||
- [ ] **CSS/JS optimization** — Minified, compressed (gzip/brotli), no render-blocking resources
|
||||
|
||||
---
|
||||
|
||||
## Output: SEO Strategy Section
|
||||
|
||||
When completing step-05, produce this section for the content-language document:
|
||||
|
||||
```markdown
|
||||
## SEO Strategy
|
||||
|
||||
### Page-Keyword Map
|
||||
|
||||
| Page | URL Slug | Primary Keyword (SE) | Primary Keyword (EN) | Primary Keyword (DE) |
|
||||
|------|----------|---------------------|---------------------|---------------------|
|
||||
| ... | ... | ... | ... | ... |
|
||||
|
||||
### URL Structure
|
||||
|
||||
Pattern: `example.com/{slug}` (SE), `example.com/en/{slug}` (EN), `example.com/de/{slug}` (DE)
|
||||
|
||||
### Local SEO
|
||||
|
||||
- **Business Name:** ...
|
||||
- **Address:** ...
|
||||
- **Phone:** ...
|
||||
- **Google Business Profile:** Claimed? Yes/No
|
||||
- **Business Category:** ...
|
||||
|
||||
### Structured Data Plan
|
||||
|
||||
| Page | Schema Type |
|
||||
|------|-------------|
|
||||
| All pages | LocalBusiness (in footer/header) |
|
||||
| Service pages | Service |
|
||||
| Articles | Article |
|
||||
|
||||
### Keyword Usage Guidelines
|
||||
|
||||
- Page titles: Primary keyword + brand name
|
||||
- H1: Primary keyword (can differ from title tag)
|
||||
- Meta descriptions: Primary keyword + benefit + CTA
|
||||
- Body: Natural keyword density, no stuffing
|
||||
- Images: Descriptive alt text with keyword where relevant
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Related Resources
|
||||
|
||||
- **Meta Content Guide:** `../freya/meta-content-guide.md` — Page-level meta content specification
|
||||
- **Content Language Template:** `../../templates/1-project-brief/content-language.template.md`
|
||||
- **Platform Requirements:** `../../templates/1-project-brief/platform-requirements.template.md`
|
||||
|
||||
---
|
||||
|
||||
*SEO is a first-class citizen in WDS — planned at project brief, applied at page specification, verified at quality gate.*
|
||||
|
|
@ -215,7 +215,7 @@ Created in Step 4 (early in the brief) to provide strategic grounding:
|
|||
|
||||
Generate complete Product Brief document using template.
|
||||
|
||||
**See:** `../../workflows/1-project-brief/project-brief/complete/project-brief.template.md`
|
||||
**See:** `{project-root}/_bmad/wds/templates/1-project-brief/project-brief.template.md`
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -345,7 +345,7 @@ Good structure:
|
|||
```
|
||||
docs/A-Product-Brief/product-brief.md
|
||||
docs/B-Trigger-Map/trigger-map.md
|
||||
docs/C-Scenarios/landing-page/01-hero-section.md
|
||||
docs/C-UX-Scenarios/landing-page/01-hero-section.md
|
||||
```
|
||||
|
||||
**Why:** Clear, unambiguous, no confusion about location
|
||||
|
|
|
|||
|
|
@ -64,32 +64,91 @@ Business Goals → Product/Solution → Target Groups → Usage Goals
|
|||
|
||||
## Business Goals Layer
|
||||
|
||||
### Vision Goals (Directional)
|
||||
**"Where are we going?"**
|
||||
### Generating Business Goals (Actionable Process)
|
||||
|
||||
- Build the most trusted proposal platform
|
||||
- Become the industry standard for consultants
|
||||
- Revolutionize how professionals communicate value
|
||||
**Structure Requirement: 3×3 Format**
|
||||
|
||||
**Characteristics:**
|
||||
- Inspirational, not measurable
|
||||
- Provides direction and purpose
|
||||
- Guides strategic decisions
|
||||
Generate **3 visionary goals** with **3 objectives each** (sometimes 4-5 if truly necessary).
|
||||
|
||||
---
|
||||
```
|
||||
Goal 1: [Primary Outcome - e.g., Become more profitable]
|
||||
Objective 1.1: [Measurable]
|
||||
Objective 1.2: [Measurable]
|
||||
Objective 1.3: [Measurable]
|
||||
|
||||
### SMART Goals (Measurable)
|
||||
**"How do we know we're making progress?"**
|
||||
Goal 2: [Prerequisite - e.g., Get happier customers]
|
||||
Objective 2.1: [Measurable]
|
||||
Objective 2.2: [Measurable]
|
||||
Objective 2.3: [Measurable]
|
||||
|
||||
- 1,000 registered users in 12 months
|
||||
- 500 premium signups in 18 months
|
||||
- $50K MRR by end of year 2
|
||||
- 80% activation rate (signup → first proposal)
|
||||
Goal 3: [Prerequisite - e.g., Work smarter]
|
||||
Objective 3.1: [Measurable]
|
||||
Objective 3.2: [Measurable]
|
||||
Objective 3.3: [Measurable]
|
||||
```
|
||||
|
||||
**Characteristics:**
|
||||
- Specific, Measurable, Achievable, Relevant, Time-bound
|
||||
- Can be tracked objectively
|
||||
- Tied to business success
|
||||
**Step 1: Identify 3 Visionary Goals (Hierarchical Order)**
|
||||
|
||||
Ask: "What does 'winning' look like for this business?" Extract aspirational goals from Product Brief.
|
||||
|
||||
Order goals hierarchically:
|
||||
1. **Primary Outcome Goal** - Ultimate business success (e.g., "Become more profitable")
|
||||
2. **Prerequisite Goals** - What enables the primary goal (e.g., "Get happier customers", "Work smarter")
|
||||
|
||||
**Common business goals:**
|
||||
- Become more profitable (financial health) - often primary
|
||||
- Get happier customers (satisfaction, loyalty) - often prerequisite
|
||||
- Work smarter (reduce costs, less admin) - often prerequisite
|
||||
- Constant customer flow (sustainable demand) - can be primary or prerequisite
|
||||
- Market leadership (trusted authority) - can be primary or prerequisite
|
||||
|
||||
**Step 2: Attach 3 SMART Objectives Per Goal**
|
||||
|
||||
For each visionary goal, identify 3 specific measurements that track progress:
|
||||
|
||||
```
|
||||
Goal 1: Become More Profitable
|
||||
Objective 1.1: Maintain 20% profit margin annually
|
||||
Objective 1.2: Grow revenue 10% year-over-year
|
||||
Objective 1.3: Achieve Page 1 ranking for key terms
|
||||
|
||||
Goal 2: Get Happier Customers
|
||||
Objective 2.1: Maintain 4.8+ rating
|
||||
Objective 2.2: 70%+ repeat customer rate
|
||||
Objective 2.3: Service quality consistent year-round
|
||||
|
||||
Goal 3: Work Smarter
|
||||
Objective 3.1: Reduce admin calls by 40%
|
||||
Objective 3.2: 70% questions answered by website
|
||||
Objective 3.3: Healthy work-life balance maintained
|
||||
```
|
||||
|
||||
**Step 3: Verify Objective Alignment**
|
||||
|
||||
Each objective must align with its parent goal:
|
||||
|
||||
- **Profitability objectives:** Revenue, profit margin, market visibility (drives sales), pricing power
|
||||
- **Customer satisfaction objectives:** Ratings, repeat rate, service quality, review sentiment
|
||||
- **Operational efficiency objectives:** Time savings, cost reduction, work-life balance, automation
|
||||
- **Customer flow objectives:** Discovery metrics, conversion rates, customer acquisition, seasonal consistency
|
||||
|
||||
❌ **Wrong alignment:** "Healthy work-life balance" under "Become More Profitable" (belongs in "Work Smarter")
|
||||
✅ **Correct alignment:** "Healthy work-life balance" under "Work Smarter" (operational efficiency)
|
||||
|
||||
**Critical: Metrics ≠ Goals**
|
||||
|
||||
❌ **Don't do this:**
|
||||
- "Business Goal: Reduce phone calls 40%" (metric, not aspirational)
|
||||
- "Business Goal: Page 1 on Google" (tactic, not vision)
|
||||
|
||||
✅ **Do this:**
|
||||
- "Business Goal: Work smarter → Measured by: 40% fewer calls"
|
||||
- "Business Goal: Constant customer flow → Measured by: Page 1 ranking"
|
||||
|
||||
**Self-Check:**
|
||||
- Are your goals visionary/aspirational? (exciting to achieve?)
|
||||
- Do metrics support goals? (not replace them?)
|
||||
- Would these goals still be relevant if tactics changed?
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -131,6 +190,83 @@ Target Groups:
|
|||
|
||||
---
|
||||
|
||||
### Persona Section Structure
|
||||
|
||||
Each detailed persona should include these sections:
|
||||
|
||||
**Required Sections:**
|
||||
|
||||
1. **Who [Name] Is** - Context, background, life situation (2-3 sentences)
|
||||
2. **Psychological Profile** - How they think, what they value, their relationship to the problem (2-3 paragraphs with **bold key traits**)
|
||||
3. **Internal State** - Emotional relationship when thinking about the problem/solution (1 paragraph with **bold emotion words**)
|
||||
4. **Usage Context** - When/how/why they interact with product (see template below)
|
||||
5. **Relationship to Business Goals** - Explicit connection to each relevant goal with rationale
|
||||
- Format: `✅ **[Goal Name]:** [How this persona serves this goal]`
|
||||
|
||||
**Example Structure:**
|
||||
|
||||
```markdown
|
||||
### Lars Lojal (Lars the Loyal) — Priority 1
|
||||
|
||||
**Who Lars Is:**
|
||||
Lars lives 45 minutes from Löttorp but has brought every vehicle to Källa for 12 years. Two cars, camper van, trailers — if it has wheels, Björn has seen it. Late 50s, works in Kalmar, summer house near Byxelkrok.
|
||||
|
||||
**Psychological Profile:**
|
||||
Lars values **loyalty and consistency** above almost everything. Once he finds someone trustworthy, he sticks with them. He's seen other mechanics — chain workshops, "quick fix" places — and finds them impersonal and unpredictable. With Björn, Lars knows what to expect: honest diagnosis, fair price, work done when promised.
|
||||
|
||||
**Internal State:**
|
||||
When Lars thinks about car service, he feels **calm and secure**. There's no anxiety, no "will they rip me off?" worry. Björn is like family. Lars takes pride in this relationship.
|
||||
|
||||
**Usage Context:**
|
||||
Lars checks the website occasionally, mostly to confirm hours before calling. He already has Björn's number saved. He might visit the site to show someone else: "See, this is the place I go to." The website reinforces his choice — certifications, reviews, professionalism.
|
||||
|
||||
**Relationship to Business Goals:**
|
||||
- ✅ **Become More Profitable:** Highest lifetime value — multiple vehicles, predictable revenue
|
||||
- ✅ **Get Happier Customers:** Loyal for 12 years, refers others, never complains
|
||||
- ✅ **Work Smarter:** Books ahead, minimal hand-holding, trusts recommendations
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Usage Context Template
|
||||
|
||||
For each persona's Usage Context section, answer:
|
||||
|
||||
**1. Access/Discovery:** How do they find/reach the product?
|
||||
- Example: "Google search 'motorhome repair Öland'"
|
||||
- Example: "Has phone number saved, checks website for hours"
|
||||
|
||||
**2. Emotional State:** What do they feel during usage?
|
||||
- Example: "Panic mode, stressed, vulnerable"
|
||||
- Example: "Calm and secure, already trusts the service"
|
||||
|
||||
**3. Behavior Pattern:** How do they interact?
|
||||
- Example: "Scans quickly, doesn't read paragraphs, looks for trust signals"
|
||||
- Example: "Reads carefully, wants to understand details"
|
||||
|
||||
**4. Decision Criteria:** What signals matter most?
|
||||
- Example: "Capability confirmation (do you fix X?), trust signals (reviews, certifications)"
|
||||
- Example: "Price transparency, availability, booking process"
|
||||
|
||||
**5. Success Outcome:** What gets them to take action?
|
||||
- Example: "Finds phone number and calls within 30 seconds"
|
||||
- Example: "Feels confident enough to book appointment"
|
||||
|
||||
**Full Example (Hasse the Motorhome):**
|
||||
|
||||
```markdown
|
||||
**Usage Context:**
|
||||
Hasse finds the website via Google search. He's scanning for **trust signals and capability confirmation**:
|
||||
- ✅ "Husbilservice" listed → Okay, they do motorhomes
|
||||
- ✅ "20+ years, Autoexperten certified" → Seems legitimate
|
||||
- ✅ "4.8/5 reviews" → Other people trust them
|
||||
- ✅ Phone number huge and visible → I can call NOW
|
||||
|
||||
He doesn't read paragraphs. He scans, checks, decides, calls. The website's job is to get him to that call within 30 seconds.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Usage Goals vs User Goals
|
||||
|
||||
**Critical distinction:**
|
||||
|
|
@ -217,31 +353,145 @@ Both are valid! Often negative triggers action faster (pain > pleasure).
|
|||
|
||||
---
|
||||
|
||||
## Feature Impact Analysis
|
||||
### Driving Forces Pattern: WHAT + WHY + WHEN
|
||||
|
||||
**Once map is complete, prioritize driving forces:**
|
||||
Good driving forces follow this pattern:
|
||||
**[WHAT they want/fear] + [WHY it matters] + [WHEN/CONTEXT]**
|
||||
|
||||
### Scoring System (1-5 scale)
|
||||
- **Frequency:** How often does this trigger matter?
|
||||
- **Intensity:** How strongly do they feel this?
|
||||
- **Fit:** How well can our solution address this?
|
||||
This pattern creates actionable, specific forces that directly inform design decisions.
|
||||
|
||||
**✅ Good Examples (Specific, contextual, actionable):**
|
||||
|
||||
- "Find immediate reassurance of capability within 30 seconds"
|
||||
- WHAT: reassurance about capability
|
||||
- WHY: stressed/urgent need
|
||||
- WHEN: searching on phone in panic mode
|
||||
|
||||
- "Confirm specialized capability before calling"
|
||||
- WHAT: capability verification
|
||||
- WHY: avoid wasted call, seasonal planning
|
||||
- WHEN: preparing for busy season, needs to book ahead
|
||||
|
||||
- "Validate loyalty choice when showing website to others"
|
||||
- WHAT: validation of decision
|
||||
- WHY: justify 45-minute drive, maintain identity as smart chooser
|
||||
- WHEN: referring friends or colleagues
|
||||
|
||||
**❌ Too Vague (Not actionable):**
|
||||
|
||||
- "Want convenience" → Too generic, applies to everything
|
||||
- "Want peace of mind" → What creates peace of mind specifically?
|
||||
- "Want good experience" → What does "good" mean in this context?
|
||||
- "Feel confident" → About what? When? Why?
|
||||
|
||||
**Test Your Driving Force:**
|
||||
|
||||
1. **Actionability:** Can a designer create a specific feature to address this?
|
||||
2. **Psychology:** Does it reveal motivation beyond "wants it to work well"?
|
||||
3. **Context:** Is it clear WHEN this force is active during product usage?
|
||||
|
||||
If no to any question, add more specificity using WHAT + WHY + WHEN.
|
||||
|
||||
**Before/After Example:**
|
||||
|
||||
❌ Before: "Want to feel secure"
|
||||
✅ After: "Feel secure about future availability — wants reassurance that mechanic won't suddenly close or retire (when considering long-term loyalty)"
|
||||
|
||||
❌ Before: "Need help quickly"
|
||||
✅ After: "Get back on road quickly — vacation timeline is tight, every hour stuck is lost experience (when breakdown happens mid-trip)"
|
||||
|
||||
---
|
||||
|
||||
## Prioritizing Driving Forces
|
||||
|
||||
**Once all driving forces are identified, prioritize using Feature Impact Analysis:**
|
||||
|
||||
### Scoring Method (Frequency × Intensity × Fit)
|
||||
|
||||
Score each driving force on three dimensions (1-5 scale):
|
||||
|
||||
**1. Frequency (1-5):** How often does this force matter?
|
||||
- **5** = Every interaction / constant concern
|
||||
- **4** = Most of the time
|
||||
- **3** = Regularly but not always
|
||||
- **2** = Occasional
|
||||
- **1** = Rare edge case
|
||||
|
||||
**2. Intensity (1-5):** How strongly do they feel this?
|
||||
- **5** = Critical, visceral, blocks action if not addressed
|
||||
- **4** = Very important, strong emotion
|
||||
- **3** = Important but manageable
|
||||
- **2** = Mild concern
|
||||
- **1** = Nice to have, minimal emotion
|
||||
|
||||
**3. Fit (1-5):** How well can the product address this?
|
||||
- **5** = Perfect fit, direct solution
|
||||
- **4** = Strong fit, clear approach
|
||||
- **3** = Moderate fit, partial solution
|
||||
- **2** = Weak fit, indirect approach
|
||||
- **1** = Hard to address with this product
|
||||
|
||||
**Total Score = Frequency + Intensity + Fit (max 15)**
|
||||
|
||||
### Score Interpretation
|
||||
|
||||
**14-15: HIGH PRIORITY**
|
||||
- Must address in core product
|
||||
- Core to user success
|
||||
- Strong ROI on design effort
|
||||
|
||||
**11-13: MEDIUM PRIORITY**
|
||||
- Should address if feasible
|
||||
- Significant but not critical
|
||||
- Enhances experience
|
||||
|
||||
**8-10: LOW PRIORITY**
|
||||
- Nice to have
|
||||
- Limited strategic impact
|
||||
- Consider for future iterations
|
||||
|
||||
**<8: DEPRIORITIZE**
|
||||
- Minimal strategic value
|
||||
- Resource drain vs. benefit
|
||||
- May indicate wrong target group
|
||||
|
||||
### Example Scoring
|
||||
|
||||
**Example:**
|
||||
```
|
||||
"Want to look professional to clients"
|
||||
├── Frequency: 5 (every proposal)
|
||||
├── Intensity: 5 (critical to business)
|
||||
├── Fit: 5 (we solve this directly)
|
||||
└── Score: 15/15 (HIGH PRIORITY)
|
||||
Hasse Husbil: "Find immediate reassurance of capability"
|
||||
├── Frequency: 5 (every stressed tourist in panic mode)
|
||||
├── Intensity: 5 (critical to their decision to call)
|
||||
├── Fit: 5 (website can show this immediately)
|
||||
└── Total: 15/15 → HIGH PRIORITY
|
||||
|
||||
"Want to collaborate with team members"
|
||||
├── Frequency: 2 (solo consultants rarely need this)
|
||||
├── Intensity: 3 (nice to have)
|
||||
├── Fit: 3 (requires complex features)
|
||||
└── Score: 8/15 (LOWER PRIORITY)
|
||||
Lars Lojal: "Feel secure about future availability"
|
||||
├── Frequency: 3 (occasional worry, not constant)
|
||||
├── Intensity: 5 (very important to him emotionally)
|
||||
├── Fit: 3 (hard to guarantee, can signal continuity)
|
||||
└── Total: 11/15 → MEDIUM PRIORITY
|
||||
|
||||
Siv Skötsam: "See detailed pricing upfront"
|
||||
├── Frequency: 4 (checks before every service)
|
||||
├── Intensity: 3 (wants it but will call anyway)
|
||||
├── Fit: 2 (car repair pricing is context-dependent)
|
||||
└── Total: 9/15 → LOW PRIORITY
|
||||
```
|
||||
|
||||
**Use scores to prioritize features and design decisions.**
|
||||
### Using Scores Strategically
|
||||
|
||||
**Prioritize Features:**
|
||||
- Design for 14-15 forces first
|
||||
- Group 11-13 forces into common solutions
|
||||
- Defer <10 forces until core experience is solid
|
||||
|
||||
**Defend Decisions:**
|
||||
- "This feature addresses 3 forces with 14+ scores"
|
||||
- "We're deprioritizing X because it scored 7/15"
|
||||
|
||||
**Identify Gaps:**
|
||||
- High-intensity forces with low fit = product limitation
|
||||
- High-frequency, low-intensity = table stakes (must have, but not differentiator)
|
||||
- Low-frequency, high-intensity = edge case (support via other channels)
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,172 @@
|
|||
# Working with Existing Materials
|
||||
|
||||
**Purpose:** Guide for naturally incorporating existing materials into conversational PB workflow.
|
||||
|
||||
---
|
||||
|
||||
## Core Principles
|
||||
|
||||
1. **Reference, don't re-ask** - Build on documented work
|
||||
2. **Validate currency** - "Is this still accurate?"
|
||||
3. **Focus on gaps** - What's missing or needs refinement?
|
||||
4. **Document refinement** - Capture UPDATE conversation, not just creation
|
||||
5. **Stay casual** - No judgment about what exists or doesn't
|
||||
|
||||
---
|
||||
|
||||
## Checking for Materials
|
||||
|
||||
**Phase 0 asks:** "Do you have existing materials?" (website, brief, guidelines, research)
|
||||
|
||||
**Stored in outline:**
|
||||
```yaml
|
||||
existing_materials:
|
||||
has_materials: true/false
|
||||
website: "[URL]"
|
||||
previous_brief: "[path]"
|
||||
brand_guidelines: "[path]"
|
||||
research: "[path]"
|
||||
context_notes: "[brief notes]"
|
||||
```
|
||||
|
||||
**If materials exist:** Read them before starting PB steps
|
||||
|
||||
---
|
||||
|
||||
## Adaptation Pattern
|
||||
|
||||
### Opening Adaptation
|
||||
|
||||
**Without materials:**
|
||||
> "Let's start with vision. What are you envisioning?"
|
||||
|
||||
**With materials:**
|
||||
> "I see you mentioned [reference from materials]. Let's build on that - tell me more."
|
||||
|
||||
### Follow-Up Patterns
|
||||
|
||||
- **Validate:** "You wrote X - is that still accurate?"
|
||||
- **Fill gaps:** "Your brief mentions Y, but I'm curious about Z..."
|
||||
- **Refine:** "When you said X, did you mean [interpretation]?"
|
||||
- **Update:** "Has your thinking evolved since you wrote this?"
|
||||
|
||||
---
|
||||
|
||||
## Step-by-Step Application
|
||||
|
||||
**Apply to all conversational steps** (2, 3, 5, 7, 7a, 8, 9, 10, 11, 12):
|
||||
|
||||
| Step | No Materials | With Materials |
|
||||
|------|-------------|----------------|
|
||||
| Vision (2) | "What are you envisioning?" | "You mentioned [vision]. Tell me more." |
|
||||
| Positioning (3) | "Let's explore positioning." | "Your brief positions this as [quote]. Still accurate?" |
|
||||
| Users (7) | "Who are ideal users?" | "You described [archetypes]. Still primary users?" |
|
||||
| Concept (7a) | "What's the core concept?" | "I see [concept from materials]. Tell me more about that principle." |
|
||||
| Success (8) | "What does success look like?" | "You mentioned success means [quote]. Still the goal?" |
|
||||
|
||||
**Pattern:** Reference existing → Validate → Build on it
|
||||
|
||||
---
|
||||
|
||||
## Dialog Documentation
|
||||
|
||||
When materials exist, capture:
|
||||
|
||||
1. **What existed:** Quote/summarize existing material
|
||||
2. **Validation:** User's response to "Is this still accurate?"
|
||||
3. **Refinement:** What changed, added, or clarified
|
||||
4. **Why:** Rationale for changes
|
||||
5. **Synthesis:** Updated version (old + new integrated)
|
||||
|
||||
**Template:**
|
||||
|
||||
```markdown
|
||||
**Existing context:** [What was documented]
|
||||
|
||||
**Opening:** "I see [reference]. [Question]"
|
||||
|
||||
**User response:** [Confirmed/refined/changed]
|
||||
|
||||
**Key exchanges:**
|
||||
- [Exploration]
|
||||
- [Gaps filled]
|
||||
- [Evolution]
|
||||
|
||||
**Reflection checkpoint:**
|
||||
"Building on your earlier work: [synthesis].
|
||||
Keeps [solid parts], adds [new], refines [changed].
|
||||
Does that capture it?"
|
||||
|
||||
**User confirmation:** [Confirmed / Corrected]
|
||||
|
||||
**Final:** [Updated artifact]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Common Scenarios
|
||||
|
||||
**Scenario: Previous brief exists**
|
||||
1. Read it thoroughly
|
||||
2. Identify solid vs gaps/unclear
|
||||
3. Open: "I read your brief. [Strong points] captured well. Questions about [gaps]."
|
||||
4. Explore gaps conversationally
|
||||
5. Dialog: what was there + what we added + why
|
||||
|
||||
**Scenario: Existing website**
|
||||
1. Review site (if URL in materials)
|
||||
2. Note current positioning/tone/UX
|
||||
3. Reference: "I looked at your site. It positions you as [observation]. Still the direction?"
|
||||
4. Use as baseline for "what's changing?"
|
||||
|
||||
**Scenario: Brand guidelines exist**
|
||||
1. Read guidelines (voice, values, identity)
|
||||
2. Reference when discussing tone: "Your guidelines describe tone as [quote]. Match exactly or evolve?"
|
||||
3. Don't re-ask defined things (colors, values)
|
||||
4. Focus on how brand translates to this project
|
||||
|
||||
**Scenario: Research exists**
|
||||
1. Review findings
|
||||
2. Reference insights: "Your research showed [finding]. Great insight for..."
|
||||
3. Validate currency: "Is this still what you hear from customers?"
|
||||
|
||||
---
|
||||
|
||||
## What NOT to Do
|
||||
|
||||
❌ Ignore existing materials (if outline says they exist)
|
||||
❌ Make users repeat documented work
|
||||
❌ Assume everything is still current (validate!)
|
||||
❌ Judge quality of existing work
|
||||
❌ Create separate "refinement workflow" (same conversational pattern, just adapt openings)
|
||||
|
||||
---
|
||||
|
||||
## Benefits
|
||||
|
||||
✅ Efficiency - Don't re-explore documented areas
|
||||
✅ Continuity - Build on previous work
|
||||
✅ Respect - Acknowledge existing thinking
|
||||
✅ Focus - Spend time on gaps/unclear areas
|
||||
✅ Natural flow - Same pattern, context-aware
|
||||
✅ Rich dialog - Captures refinement, not just creation
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
**Check:** `existing_materials.has_materials` in outline
|
||||
|
||||
**If true:**
|
||||
1. Read materials before starting PB
|
||||
2. Adapt openings to reference what exists
|
||||
3. Validate currency with each step
|
||||
4. Fill gaps conversationally
|
||||
5. Document: old + new + why
|
||||
|
||||
**Dialog pattern:** Existing → Validate → Refine → Synthesize → Confirm
|
||||
|
||||
---
|
||||
|
||||
**Remember:** Not a separate workflow - same conversational pattern, just context-aware.
|
||||
If materials exist, read and adapt. If not, explore from scratch. Either way, natural conversation.
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
# How Freya Helps You Succeed with UX and Prototyping
|
||||
|
||||
**Instructions:** Present each step one at a time. After each step, ask if the user
|
||||
wants to continue to the next step or is ready to get started working.
|
||||
|
||||
---
|
||||
|
||||
## Step 1: What I Do
|
||||
|
||||
I turn strategy into experiences users can see and interact with. I create detailed
|
||||
specifications, interactive prototypes, and design systems — artifacts that developers
|
||||
can build from with confidence.
|
||||
|
||||
**My core outputs:**
|
||||
- **Scenarios** — complete user journeys with page-by-page specs
|
||||
- **Prototypes** — interactive HTML that lets you experience the design
|
||||
- **Design systems** — reusable tokens and components (when needed)
|
||||
- **Validation** — checking that what was built matches the design
|
||||
|
||||
---
|
||||
|
||||
## Step 2: How I Work
|
||||
|
||||
I start with WHY before WHAT. Before designing anything, I read the strategic
|
||||
context (Product Brief, Trigger Map) to understand what drives users and what
|
||||
the business needs.
|
||||
|
||||
**My pattern:**
|
||||
1. Load strategic context (silently — I don't ask you for it)
|
||||
2. Discuss the scenario or feature with you
|
||||
3. Create specifications with logical explanations
|
||||
4. Build prototypes you can interact with
|
||||
5. Iterate based on your feedback
|
||||
|
||||
Design without strategy is decoration. I make sure every choice connects back to a reason.
|
||||
|
||||
---
|
||||
|
||||
## Step 3: What I Need from You
|
||||
|
||||
- **Strategic foundation** — Product Brief and Trigger Map (from Saga). I can work
|
||||
without them, but the design will be stronger with them.
|
||||
- **Your vision** — what should users experience? What matters most?
|
||||
- **Feedback** — I'll show you specs and prototypes, tell me what works and what doesn't
|
||||
- **Decisions** — I'll present options with trade-offs, you pick the direction
|
||||
|
||||
---
|
||||
|
||||
## Step 4: What You Get
|
||||
|
||||
After working with me, you'll have:
|
||||
|
||||
- **Scenario specs** — complete page-by-page specifications with object IDs
|
||||
- **Interactive prototypes** — HTML files you can click through
|
||||
- **Sketches** — visual concepts for layout and interaction
|
||||
- **Design system** (optional) — tokens, components, and a brand book
|
||||
- **Test results** — validation that implementation matches design
|
||||
|
||||
These specs are detailed enough for developers to build from without guessing.
|
||||
|
||||
---
|
||||
|
||||
**Ready to get started? Tell me what you want to design, or pick a workflow from my menu.**
|
||||
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
- `docs/A-Product-Brief/` - Strategic foundation from Saga
|
||||
- `docs/B-Trigger-Map/` - User insights and business goals from Saga
|
||||
- `docs/C-Platform-Requirements/` - Technical constraints from Idunn (optional but helpful)
|
||||
- `docs/A-Product-Brief/platform-requirements.md` - Technical constraints from Idunn (optional but helpful)
|
||||
|
||||
**I'm your creative transformation hub - turning strategy into experiences users love!**
|
||||
|
||||
|
|
@ -27,7 +27,7 @@
|
|||
```
|
||||
🎨 Freya's Creative Workspace
|
||||
docs/
|
||||
├── 🎬 C-Scenarios/ ← MY User Experience Theater (Phase 4)
|
||||
├── 🎬 C-UX-Scenarios/ ← MY User Experience Theater (Phase 4)
|
||||
│ └── 01-Primary-User-Flow/ ← Main journey scenarios
|
||||
│ ├── 1.1-Landing-Experience/ ← First impression
|
||||
│ │ ├── 1.1-Landing-Synopsis.md ← Page specifications
|
||||
|
|
@ -64,7 +64,7 @@ docs/
|
|||
│ ├── validation-results/ ← Test outcomes
|
||||
│ └── issues/ ← Problems found
|
||||
│
|
||||
└── 🔄 G-Product-Development/ ← MY Iteration Work (Phase 8)
|
||||
└── 🔄 G-Product-Development/ ← MY Iteration Work (Phase 10)
|
||||
├── improvements/ ← Enhancement proposals
|
||||
└── updates/ ← Ongoing refinements
|
||||
```
|
||||
|
|
@ -92,7 +92,7 @@ PHASE 7: TESTING (After BMM Implementation)
|
|||
🧪 Test Scenarios → ✅ Validation → 🐛 Issues → 🔄 Iteration
|
||||
Designer Validation → Implementation Check → Problem Identification → Refinement
|
||||
|
||||
PHASE 8: PRODUCT DEVELOPMENT (Existing Products)
|
||||
PHASE 10: PRODUCT EVOLUTION (Existing Products)
|
||||
🔄 Kaizen Approach → 💡 Improvements → 🎨 Enhancements → 🚀 Delivery
|
||||
Continuous Improvement → Targeted Changes → Visual Refinement → User Delight
|
||||
```
|
||||
|
|
@ -163,7 +163,7 @@ Foundation First → Component Hierarchy → Organic Growth → Lean & Practical
|
|||
|
||||
### 🔄 **MY PRODUCT DEVELOPMENT APPROACH**
|
||||
|
||||
**Here's exactly how I improve existing products in Phase 8:**
|
||||
**Here's exactly how I improve existing products in Phase 10:**
|
||||
|
||||
- **Kaizen Philosophy**: Continuous improvement through small, thoughtful changes
|
||||
- **Brownfield Approach**: Working within existing constraints and systems
|
||||
|
|
@ -220,7 +220,7 @@ Foundation First → Component Hierarchy → Organic Growth → Lean & Practical
|
|||
|
||||
- **Strategic Input**: Saga's Product Brief and Trigger Map
|
||||
- **Technical Input**: Idunn's Platform Requirements (optional)
|
||||
- **My Creative Output**: C-Scenarios/, D-Design-System/, F-Testing/, G-Product-Development/
|
||||
- **My Creative Output**: C-UX-Scenarios/, D-Design-System/, F-Testing/, G-Product-Development/
|
||||
- **Title-Case-With-Dashes**: Every folder and file follows WDS standards
|
||||
|
||||
### 🎨 **MY CREATIVE WORKFLOW PROGRESSION**
|
||||
|
|
|
|||
|
|
@ -29,12 +29,12 @@ docs/
|
|||
│ │ └── interactive-demo.html
|
||||
│ └── 02-feature/
|
||||
│
|
||||
├── 5-design-system/ ← Component Library
|
||||
├── 7-design-system/ ← Component Library
|
||||
│ ├── tokens/ ← Colors, fonts, spacing
|
||||
│ └── components/ ← Reusable UI elements
|
||||
│
|
||||
└── 7-testing/ ← Quality Validation
|
||||
└── usability-tests/
|
||||
└── 8-product-evolution/ ← Continuous Improvement
|
||||
└── kaizen-cycles/
|
||||
```
|
||||
|
||||
---
|
||||
|
|
@ -45,7 +45,7 @@ docs/
|
|||
**Phase 5: Design System** - Building design tokens, component libraries, and style guides
|
||||
**Phase 6: Design Deliverables** - Preparing handoff packages for development with all specifications and assets
|
||||
**Phase 7: Testing** - Validating designs through usability testing and implementation review
|
||||
**Phase 8: Ongoing Product Cycles** - Iterative improvements and feature evolution for existing products
|
||||
**Phase 10: Product Evolution** - Iterative improvements and feature evolution for existing products
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -75,4 +75,4 @@ Whether designing new features, refining experiences, building design foundation
|
|||
|
||||
**Analyzing your project now...**
|
||||
|
||||
_(Continue to: `src/modules/wds/workflows/project-analysis/project-analysis-router.md`)_
|
||||
_(Continue to: `{project-root}/_bmad/wds/workflows/_agent-dialogs/project-analysis/02-project-analysis-router.md`)_
|
||||
|
|
|
|||
|
|
@ -0,0 +1,51 @@
|
|||
# Freya's Workflows — What I Can Do
|
||||
|
||||
**Instructions:** Present the workflow list. Let the user pick one or ask questions.
|
||||
After selection, run project analysis then start the chosen workflow.
|
||||
|
||||
---
|
||||
|
||||
## My Workflows
|
||||
|
||||
### 1. UX Design
|
||||
**When to use:** You need scenarios, page specs, and prototypes.
|
||||
**What it does:** Creates complete user journey specifications with interactive prototypes.
|
||||
**Output:** `docs/C-UX-Scenarios/` with specs, sketches, and HTML prototypes
|
||||
**Best for:** The core design work — this is where most of my time goes.
|
||||
|
||||
### 2. Visual Design
|
||||
**When to use:** You have specs and sketches ready and want polished visual designs.
|
||||
**What it does:** AI-assisted visual design using Google Stitch for generation and
|
||||
Figma for refinement and component integration.
|
||||
**Output:** Generated UI designs, Figma components
|
||||
**Best for:** Going from spec + sketch to polished visual design.
|
||||
|
||||
### 3. Design System
|
||||
**When to use:** You need a component library with design tokens.
|
||||
**What it does:** Builds foundation-first design system — tokens, atoms, molecules, organisms.
|
||||
**Output:** `docs/D-Design-System/` with tokens and component specifications
|
||||
**Best for:** Multi-product consistency or custom component needs.
|
||||
|
||||
### 4. Agentic Development
|
||||
**When to use:** You want to build features iteratively with AI assistance.
|
||||
**What it does:** Guided implementation using agent dialogs — prototypes, code, bug fixes.
|
||||
**Output:** Working implementations, prototype iterations
|
||||
**Best for:** When you're ready to go from spec to code with AI support.
|
||||
|
||||
### 5. Software Testing
|
||||
**When to use:** After development, to validate implementation matches design.
|
||||
**What it does:** Browser-based testing using Puppeteer — autonomous scan then guided
|
||||
review. Compares live product against specs and sketches, reports deviations.
|
||||
**Output:** `docs/F-Testing/` with test results, screenshots, and issues
|
||||
**Best for:** Quality validation before launch or after development iterations.
|
||||
|
||||
### 6. Design Delivery
|
||||
**When to use:** Design is complete and needs to be packaged for development handoff.
|
||||
**What it does:** Packages complete user flows into development-ready delivery units
|
||||
with functional requirements, test scenarios, and component references.
|
||||
**Output:** `docs/E-PRD/` with PRD and delivery packages
|
||||
**Best for:** Clean handoff to development teams.
|
||||
|
||||
---
|
||||
|
||||
**Which workflow do you want to start? Or tell me what you need and I'll recommend one.**
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
# How Idunn Helps You Succeed with Project Management, Technical Planning and Handoffs
|
||||
|
||||
**Instructions:** Present each step one at a time. After each step, ask if the user
|
||||
wants to continue to the next step or is ready to get started working.
|
||||
|
||||
---
|
||||
|
||||
## Step 1: What I Do
|
||||
|
||||
I build the technical foundation and package design for developers. I work at two
|
||||
key moments: early (defining what's technically possible) and late (packaging
|
||||
what's been designed for handoff).
|
||||
|
||||
**My two core outputs:**
|
||||
- **Platform Requirements** — architecture, data model, integrations, security
|
||||
- **Design Deliveries** — complete flow packages ready for development teams
|
||||
|
||||
---
|
||||
|
||||
## Step 2: How I Work
|
||||
|
||||
I work in parallel with Freya. While she designs the experience (Phase 4),
|
||||
I define the platform (Phase 3). This means design and technical planning
|
||||
happen simultaneously — no bottlenecks.
|
||||
|
||||
**My pattern:**
|
||||
1. Read Saga's strategic foundation
|
||||
2. Define platform architecture and technical constraints
|
||||
3. Share constraints with Freya so design stays buildable
|
||||
4. After design is done, package everything into delivery units
|
||||
5. Hand off complete, testable packages to development
|
||||
|
||||
---
|
||||
|
||||
## Step 3: What I Need from You
|
||||
|
||||
- **Strategic context** — Product Brief from Saga (what are we building and why)
|
||||
- **Technical decisions** — tech stack preferences, hosting, existing systems
|
||||
- **Priority input** — which features matter most for MVP
|
||||
- **Freya's designs** — for Phase 6 packaging (I'll coordinate with her)
|
||||
|
||||
---
|
||||
|
||||
## Step 4: What You Get
|
||||
|
||||
After working with me, you'll have:
|
||||
|
||||
- **Platform Requirements** — architecture docs, data model, integration map,
|
||||
security framework, technical constraints
|
||||
- **PRD** — complete product requirements document organized by epic
|
||||
- **Design Delivery packages** (DD-XXX.yaml) — complete flow packages with
|
||||
scenario references, component references, functional requirements, and test scenarios
|
||||
|
||||
Each delivery package is a self-contained, testable unit that a development team
|
||||
can pick up and implement independently.
|
||||
|
||||
---
|
||||
|
||||
**Ready to get started? Tell me what you need planned, or pick a workflow from my menu.**
|
||||
|
|
@ -26,17 +26,16 @@
|
|||
```
|
||||
🎯 Idunn's Coordination Workspace
|
||||
docs/
|
||||
├── 📝 C-Platform-Requirements/ ← MY Technical Foundation (Phase 3)
|
||||
│ ├── 00-Platform-Overview.md ← Platform summary
|
||||
│ ├── 01-Platform-Architecture.md ← Tech stack, infrastructure
|
||||
│ ├── 02-Data-Model.md ← Core entities, relationships
|
||||
│ ├── 03-Integration-Map.md ← External services
|
||||
│ ├── 04-Security-Framework.md ← Auth, authorization, data protection
|
||||
│ └── 05-Technical-Constraints.md ← What design needs to know
|
||||
├── 📝 A-Product-Brief/
|
||||
│ └── platform-requirements.md ← MY Technical Foundation (Phase 1/106)
|
||||
│ ├── Tech stack decisions
|
||||
│ ├── Integration mapping
|
||||
│ ├── Contact strategy
|
||||
│ ├── Multilingual requirements
|
||||
│ └── Technical constraints
|
||||
│
|
||||
└── 📦 E-PRD/ ← MY PRD & Design Deliveries (Phase 6)
|
||||
├── 00-PRD.md ← Complete PRD (references platform)
|
||||
│ ├── Reference to Platform ← Links to C-Platform-Requirements/
|
||||
└── 📦 E-PRD/ ← Design Deliveries (Phase 6)
|
||||
├── DD-*.yaml ← Design delivery packages
|
||||
│ ├── Functional Requirements ← From design deliveries
|
||||
│ ├── Feature Dependencies ← Organized by epic
|
||||
│ └── Development Sequence ← Priority order
|
||||
|
|
@ -121,7 +120,7 @@ User Flows → Page Requirements → Epic Mapping → Test Scenarios → Systema
|
|||
**Each Design Delivery (DD-XXX.yaml) contains:**
|
||||
|
||||
- Flow metadata (name, epic, priority)
|
||||
- Scenario references (which pages in C-Scenarios/)
|
||||
- Scenario references (which pages in C-UX-Scenarios/)
|
||||
- Component references (which components in D-Design-System/)
|
||||
- Functional requirements discovered during design
|
||||
- Test scenarios (validation criteria)
|
||||
|
|
@ -177,7 +176,7 @@ User Flows → Page Requirements → Epic Mapping → Test Scenarios → Systema
|
|||
|
||||
- **Strategic Input**: Saga's Product Brief and Trigger Map
|
||||
- **Design Input**: Freya's prototypes and specifications
|
||||
- **My PM Output**: C-Platform-Requirements/, E-PRD/ (coordination I create)
|
||||
- **My PM Output**: A-Product-Brief/platform-requirements.md, E-PRD/ (coordination I create)
|
||||
- **Title-Case-With-Dashes**: Every folder and file follows WDS standards
|
||||
|
||||
### 🎨 **MY TWO-PHASE COORDINATION PROCESS**
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
```
|
||||
docs/
|
||||
├── 3-prd-platform/ ← Technical Foundation
|
||||
├── A-Product-Brief/ ← Includes Platform Requirements (106)
|
||||
│ ├── 01-Platform-Architecture.md
|
||||
│ ├── 02-Technical-Requirements.md
|
||||
│ ├── 03-Data-Model.md
|
||||
|
|
@ -27,15 +27,9 @@ docs/
|
|||
│ ├── system-architecture.png
|
||||
│ └── data-flow.png
|
||||
│
|
||||
├── 6-design-deliveries/ ← Handoff Excellence
|
||||
│ ├── 01-Handoff-Package.md
|
||||
│ ├── 02-Development-Roadmap.md
|
||||
│ ├── 03-Sprint-Planning.md
|
||||
│ └── assets/
|
||||
│
|
||||
└── 8-ongoing-development/ ← Continuous Support
|
||||
├── feature-requests.md
|
||||
└── enhancement-backlog.md
|
||||
└── 8-product-evolution/ ← Continuous Improvement
|
||||
├── kaizen-cycles/
|
||||
└── evolution-log.md
|
||||
```
|
||||
|
||||
---
|
||||
|
|
@ -44,7 +38,7 @@ docs/
|
|||
|
||||
**Phase 3: PRD Platform** - Platform architecture, technical requirements, data models, and API specifications
|
||||
**Phase 6: Design Deliveries** - Developer handoff packages, roadmaps, sprint planning, and acceptance criteria
|
||||
**Phase 8: Ongoing Development** - Feature prioritization, enhancement planning, and continuous improvement
|
||||
**Phase 10: Product Evolution** - Feature prioritization, enhancement planning, and continuous improvement
|
||||
|
||||
**I translate between business, design, and technical languages to keep projects moving forward!**
|
||||
|
||||
|
|
@ -77,4 +71,4 @@ Whether defining architecture, planning sprints, creating handoff packages, or c
|
|||
|
||||
**Analyzing your project now...**
|
||||
|
||||
_(Continue to: `src/modules/wds/workflows/project-analysis/project-analysis-router.md`)_
|
||||
_(Continue to: `{project-root}/_bmad/wds/workflows/_agent-dialogs/project-analysis/02-project-analysis-router.md`)_
|
||||
|
|
|
|||
|
|
@ -0,0 +1,32 @@
|
|||
# Idunn's Workflows — What I Can Do
|
||||
|
||||
**Instructions:** Present the workflow list. Let the user pick one or ask questions.
|
||||
After selection, run project analysis then start the chosen workflow.
|
||||
|
||||
---
|
||||
|
||||
## My Workflows
|
||||
|
||||
### 1. Platform Requirements (Phase 1, sub-workflow 106)
|
||||
**When to use:** You need to define the technical foundation for your project.
|
||||
**What it does:** Captures tech stack decisions, integration mapping, contact strategy, multilingual requirements, and technical constraints.
|
||||
**Output:** `docs/A-Product-Brief/platform-requirements.md`
|
||||
**Best for:** Early in the project, as part of the Product Brief phase.
|
||||
|
||||
### 2. Design Deliveries (Phase 6)
|
||||
**When to use:** Freya's designs are ready and need to be packaged for developers.
|
||||
**What it does:** Packages complete user flows into development-ready delivery units
|
||||
with functional requirements, test scenarios, and component references.
|
||||
**Output:** `docs/E-PRD/` with PRD and DD-XXX.yaml delivery packages
|
||||
**Best for:** After design is complete, when you need clean handoff to development.
|
||||
|
||||
### 3. Product Evolution (Phase 10)
|
||||
**When to use:** Improving an existing, launched product through continuous improvement.
|
||||
**What it does:** Kaizen-style improvement cycles — identify opportunities, design targeted
|
||||
updates, package deliveries, validate, monitor, and iterate.
|
||||
**Output:** Updated specs, delivery packages, and improvement tracking
|
||||
**Best for:** Brownfield work, post-launch optimization, continuous improvement cycles.
|
||||
|
||||
---
|
||||
|
||||
**Which workflow do you want to start? Or tell me what you need and I'll recommend one.**
|
||||
|
|
@ -0,0 +1,86 @@
|
|||
# The WDS Agents — Who Does What
|
||||
|
||||
**Instructions:** Present each agent one at a time. After the overview, ask which
|
||||
agent the user wants to work with or if they need help deciding.
|
||||
|
||||
---
|
||||
|
||||
## The Team
|
||||
|
||||
WDS has three specialist agents. Each owns specific phases of product development.
|
||||
|
||||
---
|
||||
|
||||
## Saga — WDS Analyst Agent
|
||||
|
||||
**Phases:** 1 (Product Brief), 2 (Trigger Mapping)
|
||||
|
||||
**What she does:**
|
||||
- Discovers your product's strategic story through conversation
|
||||
- Creates the Product Brief — your project's North Star
|
||||
- Maps user psychology to business goals (Trigger Map)
|
||||
- Conducts market, competitive, and domain research
|
||||
|
||||
**When to use Saga:**
|
||||
- Starting a new project from scratch
|
||||
- You have an idea but need structure
|
||||
- You need to define who your users are and what drives them
|
||||
- You want to validate your business strategy
|
||||
|
||||
**What she produces:** Product Brief, Trigger Map, personas, research documents
|
||||
|
||||
---
|
||||
|
||||
## Freya — WDS Designer Agent
|
||||
|
||||
**Phases:** 4 (UX Design), 7 (Design System), 9 (Testing), 10 (Product Evolution)
|
||||
|
||||
**What she does:**
|
||||
- Creates detailed UX scenarios and page specifications
|
||||
- Builds interactive HTML prototypes
|
||||
- Develops design systems (tokens, components)
|
||||
- Validates implementation against design
|
||||
- Iterates on existing products
|
||||
|
||||
**When to use Freya:**
|
||||
- You have a Product Brief and need to design the experience
|
||||
- You want scenarios and specs for developers
|
||||
- You need prototypes to test concepts
|
||||
- You want to validate what was built matches the design
|
||||
|
||||
**What she produces:** Scenarios, page specs, prototypes, design system, test results
|
||||
|
||||
---
|
||||
|
||||
## Idunn — WDS PM Agent
|
||||
|
||||
**Phases:** 3 (Platform Requirements), 6 (Design Deliveries)
|
||||
|
||||
**What she does:**
|
||||
- Defines the technical foundation (architecture, data model, integrations)
|
||||
- Packages Freya's designs into development-ready deliveries
|
||||
- Creates PRD with functional requirements organized by epic
|
||||
- Coordinates handoff to development teams
|
||||
|
||||
**When to use Idunn:**
|
||||
- You need to define the tech stack and architecture
|
||||
- Freya's designs are ready and need to be packaged for developers
|
||||
- You need a PRD with organized requirements
|
||||
- You want clean handoffs to a development team
|
||||
|
||||
**What she produces:** Platform requirements, PRD, Design Delivery packages (DD-XXX.yaml)
|
||||
|
||||
---
|
||||
|
||||
## How They Work Together
|
||||
|
||||
```
|
||||
Saga (Strategy) → Freya (Design) + Idunn (Platform) → Idunn (Handoff) → Development
|
||||
Phase 1-2 Phase 4-5 Phase 3 Phase 6
|
||||
```
|
||||
|
||||
Saga goes first. Freya and Idunn work in parallel. Idunn packages everything at the end.
|
||||
|
||||
---
|
||||
|
||||
**Which agent do you want to work with? Or tell me what you need and I'll route you.**
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
# How Mimir Helps You Get Started with WDS
|
||||
|
||||
**Instructions:** Present each step one at a time. After each step, ask if the user
|
||||
wants to continue to the next step or is ready to get started working.
|
||||
|
||||
---
|
||||
|
||||
## Step 1: What is WDS?
|
||||
|
||||
Whiteport Design Studio is a methodology for building products from idea to launch.
|
||||
It gives you specialized AI agents that handle different phases of product development.
|
||||
|
||||
**The WDS process:**
|
||||
Strategy (Saga) → Design (Freya) → Technical Planning (Idunn) → Development Handoff
|
||||
|
||||
---
|
||||
|
||||
## Step 2: What Mimir Does
|
||||
|
||||
I'm your guide and starting point. I don't do the specialist work — I help you
|
||||
figure out what you need and connect you with the right agent.
|
||||
|
||||
**I handle:**
|
||||
- Onboarding new users to WDS
|
||||
- Checking project status and progress
|
||||
- Routing you to the right specialist agent
|
||||
- Teaching the WDS methodology (full training course available)
|
||||
- Setting your preferred communication style
|
||||
|
||||
---
|
||||
|
||||
## Step 3: How a Typical Project Flows
|
||||
|
||||
1. **You tell me what you want to build** (or pick from my menu)
|
||||
2. **I check your project state** automatically — what exists, what's done, what's next
|
||||
3. **I connect you with a specialist** — Saga for strategy, Freya for design, Idunn for planning
|
||||
4. **The specialist gets to work** — they'll read the project context and start immediately
|
||||
|
||||
You can always come back to me if you're unsure which agent to use.
|
||||
|
||||
---
|
||||
|
||||
## Step 4: What Makes WDS Different
|
||||
|
||||
- **Each agent has a personality and specialty** — not generic assistants
|
||||
- **Agents read each other's work** — Freya reads Saga's Product Brief before designing
|
||||
- **Everything is documented** — every decision, spec, and artifact lives in your docs/ folder
|
||||
- **You stay in control** — agents ask, you decide
|
||||
|
||||
---
|
||||
|
||||
**Ready to get started? Tell me what you want to build, or pick another option from my menu.**
|
||||
|
|
@ -29,7 +29,7 @@ Your Journey with Mimir:
|
|||
├─ Verify folder structure
|
||||
├─ Create project documentation
|
||||
└─ 📖 Folder Structure Guide:
|
||||
├─ Tutorial: docs/learn-wds/module-02-installation-setup/lesson-04-clone-and-wds/tutorial.md
|
||||
├─ Tutorial: docs/learn/module-02-installation-setup/lesson-04-clone-and-wds/tutorial.md
|
||||
└─ Reference: docs/method/wds-method-guide.md (Folder Structure section)
|
||||
|
||||
3. Project Analysis
|
||||
|
|
@ -119,5 +119,5 @@ Whether you're taking your very first steps with AI assistants, starting a new p
|
|||
|
||||
**Let me understand where you are right now...**
|
||||
|
||||
_(Continue to: Skill & Emotional Assessment, then `project-analysis-router.md`)_
|
||||
_(Continue to: Skill & Emotional Assessment, then `{project-root}/_bmad/wds/workflows/_agent-dialogs/project-analysis/02-project-analysis-router.md`)_
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,48 @@
|
|||
# Set the Tone — Expertise Level & Communication Style
|
||||
|
||||
**Instructions:** Present the expertise levels and let the user pick. Store their
|
||||
preference in the project context file so all agents can read it.
|
||||
|
||||
---
|
||||
|
||||
## Choose Your Expertise Level
|
||||
|
||||
This affects how all WDS agents communicate with you — how much they explain,
|
||||
how much they assume, and how they structure their responses.
|
||||
|
||||
**1. New to this**
|
||||
I'm new to product development or AI-assisted workflows. Give me clear explanations,
|
||||
walk me through each step, and check in regularly. Don't assume I know the terminology.
|
||||
|
||||
**2. Some experience**
|
||||
I've built products before but I'm new to WDS. Explain WDS-specific concepts but
|
||||
don't over-explain general product development. I can handle trade-off discussions.
|
||||
|
||||
**3. Experienced**
|
||||
I know product development well. Be concise and strategic. Skip the basics,
|
||||
focus on decisions and artifacts. Respect my time — I'll ask if I need more detail.
|
||||
|
||||
**4. Expert — just get to work**
|
||||
I know exactly what I want. Minimal explanation, maximum output. Give me options
|
||||
when there's a real decision to make, otherwise just execute.
|
||||
|
||||
---
|
||||
|
||||
## After Selection
|
||||
|
||||
Store the preference in the project context:
|
||||
|
||||
```yaml
|
||||
# In project-context.md or .wds-project-outline.yaml
|
||||
user_preferences:
|
||||
expertise_level: [1-4]
|
||||
set_date: [today]
|
||||
```
|
||||
|
||||
Confirm the selection briefly, then return to the main menu or proceed with
|
||||
whatever the user needs.
|
||||
|
||||
---
|
||||
|
||||
**Note:** Users can change this anytime by asking to "set the tone" or
|
||||
"change expertise level."
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
# How Saga Helps You Succeed with Strategy and Analysis
|
||||
|
||||
**Instructions:** Present each step one at a time. After each step, ask if the user
|
||||
wants to continue to the next step or is ready to get started working.
|
||||
|
||||
---
|
||||
|
||||
## Step 1: What I Do
|
||||
|
||||
I turn your ideas into structured strategy. Through conversation — not interrogation —
|
||||
I discover what your product is, who it's for, and why it matters.
|
||||
|
||||
**My two core outputs:**
|
||||
- **Product Brief** — your project's North Star (vision, business model, success criteria)
|
||||
- **Trigger Map** — connects business goals to user psychology
|
||||
|
||||
Everything other agents do builds on what we create together.
|
||||
|
||||
---
|
||||
|
||||
## Step 2: How I Work
|
||||
|
||||
I work through conversation. I ask one question at a time, listen to your answer,
|
||||
reflect it back in my own words, and confirm before moving forward.
|
||||
|
||||
**My pattern:**
|
||||
1. You share an idea or answer
|
||||
2. I reflect back what I heard (not parrot — in my own words)
|
||||
3. You confirm or correct
|
||||
4. We move forward together
|
||||
|
||||
I don't lecture. I don't interrogate. It should feel like working with a skilled colleague.
|
||||
|
||||
---
|
||||
|
||||
## Step 3: What I Need from You
|
||||
|
||||
- **Your vision** — even if it's vague, I'll help sharpen it
|
||||
- **Your business context** — who are you, what problem are you solving
|
||||
- **Your honesty** — tell me when I'm off track
|
||||
- **Your time** — Product Brief takes a focused conversation; Trigger Mapping takes another
|
||||
|
||||
I can also do research, brainstorming, and competitive analysis to fill gaps.
|
||||
|
||||
---
|
||||
|
||||
## Step 4: What You Get
|
||||
|
||||
After working with me, you'll have:
|
||||
|
||||
- A **Product Brief** with clear positioning, business model, ideal customer profile,
|
||||
success criteria, and constraints
|
||||
- A **Trigger Map** with business goals, target groups, personas, usage goals
|
||||
(positive and negative), and feature impact analysis
|
||||
- **Research documents** as needed (market, competitive, domain)
|
||||
- A **project outline** that tells every other agent what phases are active
|
||||
|
||||
This becomes the foundation that Freya designs from and Idunn plans from.
|
||||
|
||||
---
|
||||
|
||||
**Ready to get started? Tell me about your product idea, or pick a workflow from my menu.**
|
||||
|
|
@ -72,4 +72,4 @@ Whether starting new products, clarifying direction, researching users, or defin
|
|||
|
||||
**Analyzing your project now...**
|
||||
|
||||
_(Continue to: `src/modules/wds/workflows/project-analysis/project-analysis-router.md`)_
|
||||
_(Continue to: `{project-root}/_bmad/wds/workflows/_agent-dialogs/project-analysis/02-project-analysis-router.md`)_
|
||||
|
|
|
|||
|
|
@ -0,0 +1,48 @@
|
|||
# Saga's Workflows — What I Can Do
|
||||
|
||||
**Instructions:** Present the workflow list. Let the user pick one or ask questions.
|
||||
After selection, run project analysis then start the chosen workflow.
|
||||
|
||||
---
|
||||
|
||||
## My Workflows
|
||||
|
||||
### 1. Alignment & Signoff
|
||||
**When to use:** Before starting a project, when you need stakeholder buy-in.
|
||||
**What it does:** Creates a pitch/alignment document and secures commitment.
|
||||
**Output:** `docs/1-project-brief/pitch.md`
|
||||
**Best for:** Agency work, team projects, anything needing approval before starting.
|
||||
|
||||
### 2. Product Brief
|
||||
**When to use:** Starting a new product or feature. This is Phase 1.
|
||||
**What it does:** Guided conversation that creates a comprehensive strategic foundation.
|
||||
**Output:** `docs/A-Product-Brief/00-Product-Brief.md` + supporting documents
|
||||
**Best for:** Every new project. This is where most work begins.
|
||||
|
||||
### 3. Trigger Mapping
|
||||
**When to use:** After the Product Brief is done. This is Phase 2.
|
||||
**What it does:** Maps business goals to user psychology — what drives user behavior.
|
||||
**Output:** `docs/B-Trigger-Map/` with personas, goals, and visualizations
|
||||
**Best for:** Customer-facing products where understanding user motivation matters.
|
||||
|
||||
### 4. Brainstorm Project
|
||||
**When to use:** When you have a rough idea and want to explore it freely.
|
||||
**What it does:** Guided brainstorming to shape your vision before formal analysis.
|
||||
**Output:** Project context and direction
|
||||
**Best for:** Early-stage ideas, pivots, or when you're not sure where to start.
|
||||
|
||||
### 5. Research
|
||||
**When to use:** When you need market, competitive, domain, or technical research.
|
||||
**What it does:** Structured research with documented findings.
|
||||
**Output:** Research documents in your project
|
||||
**Best for:** Validating assumptions, understanding the market, competitive analysis.
|
||||
|
||||
### 6. Document Project
|
||||
**When to use:** For existing projects that need WDS structure added.
|
||||
**What it does:** Analyzes an existing codebase/project and creates WDS documentation.
|
||||
**Output:** Project context and structure documentation
|
||||
**Best for:** Brownfield projects — adding WDS to something already built.
|
||||
|
||||
---
|
||||
|
||||
**Which workflow do you want to start? Or tell me what you need and I'll recommend one.**
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
module,phase,name,code,sequence,workflow-file,command,required,agent,options,description,output-location,outputs,
|
||||
wds,0-wds-agents,Wake Saga,SAGA,1,_bmad/wds/agents/saga-analyst.agent.yaml,bmad-wds-saga,false,saga-analyst,Agent Activation,"Agent launcher. Wakes Saga (Strategic Analyst) who handles Phases 1-2. Saga introduces herself scans attached repos for WDS projects checks phase completion status finds unfinished agent dialogs and offers contextually appropriate next steps. Use this to start Product Brief or Trigger Map work.",,,
|
||||
wds,0-wds-agents,Wake Freya,FREYA,2,_bmad/wds/agents/freya-ux.agent.yaml,bmad-wds-freya,false,freya-ux,Agent Activation,"Agent launcher. Wakes Freya (UX Designer) who handles Phases 3-4. Freya introduces herself scans repos checks prerequisites (Product Brief + Trigger Map) detects scenario and design status and offers appropriate next steps. Use this to start UX Scenarios or UX Design work.",,,
|
||||
wds,0-wds-agents,Wake Idunn,IDUNN,3,_bmad/wds/agents/idunn-pm.agent.yaml,bmad-wds-idunn,false,idunn-pm,Agent Activation,"Agent launcher. Wakes Idunn (Project Manager) who handles project oversight and Phase 5 (Design System). Idunn provides comprehensive status across ALL phases identifies unfinished work shows critical path and coordinates handoffs between agents. Use this for project overview or Design System work.",,,
|
||||
wds,0-wds-pitch,Alignment & Signoff,AS,10,_bmad/wds/workflows/0-alignment-signoff/workflow.md,bmad-wds-alignment,false,saga-analyst,Create Mode,"Optional. Secure stakeholder buy-in before the project starts. Create a pitch document service agreement and signoff. Use when working with clients or stakeholders who need to approve budget and scope. Skip if building your own product or working with a small trusted team.",design_artifacts/A-Product-Brief,"pitch service-agreement signoff",
|
||||
wds,1-wds-strategy,Project Brief,PB,10,_bmad/wds/workflows/1-project-brief/workflow.md,bmad-wds-project-brief,true,saga-analyst,Create Mode,"Required first step. Define the product vision positioning competitive analysis and success criteria. The Project Brief is your North Star — every design decision traces back to it. Saga guides you through the five questions that anchor the entire project.",design_artifacts/A-Product-Brief,"project-brief.md",
|
||||
wds,1-wds-strategy,Trigger Mapping,TM,20,_bmad/wds/workflows/2-trigger-mapping/workflow.md,bmad-wds-trigger-mapping,true,saga-analyst,Create Mode,"Required. Map business goals to user psychology through five workshops. Create personas with real driving forces and score every feature against them. This is the secret weapon of WDS — it replaces guesswork with traceable design decisions.",design_artifacts/B-Trigger-Map,"trigger-map.md personas/ feature-impact-analysis.md",
|
||||
wds,1-wds-strategy,Platform Requirements,PR,30,_bmad/wds/workflows/1-project-brief/workflow.md,bmad-wds-platform-requirements,false,idunn-pm,Create Mode,"Define the technical boundaries that inform design decisions. Platforms devices integrations constraints and risks. Know your boundaries before designing within them. Recommended for complex products. Can be skipped for simple landing pages. Sub-workflow 106 under Phase 1.",design_artifacts/A-Product-Brief,"platform-requirements.md",
|
||||
wds,2-wds-design,Outline Scenarios,OS,10,_bmad/wds/workflows/3-scenarios/workflow.md,bmad-wds-outline-scenarios,true,freya-ux,Create Mode,"Required. Define the user journeys you will design. Scenarios are journeys not pages — they start with a persona and a goal and end with an outcome. Each scenario connects to a driving force from the Trigger Map. This step shapes everything that follows.",design_artifacts/C-UX-Scenarios,"scenario-overview.md",
|
||||
wds,2-wds-design,Conceptual Sketching,CS,20,_bmad/wds/workflows/4-ux-design/workflow.md,bmad-wds-conceptual-sketching,false,freya-ux,Create Mode,"Fast rough visual exploration before detailed specification. Multiple entry points: provide a hand sketch share inspiration let the AI generate options or discuss with Freya. The goal is direction not perfection. Recommended for complex or unfamiliar flows. Can be skipped for straightforward scenarios.",design_artifacts/C-UX-Scenarios,"sketches",
|
||||
wds,2-wds-design,Storyboarding,SB,30,_bmad/wds/workflows/4-ux-design/workflow.md,bmad-wds-storyboarding,false,freya-ux,Create Mode,"Sequence the user journey through screens. Map entry points transitions success states and error paths as a visual narrative. Helps catch gaps before detailed specification. Recommended for multi-step flows. Can be skipped if the scenario is simple enough to specify directly.",design_artifacts/C-UX-Scenarios,"storyboards",
|
||||
wds,2-wds-design,Conceptual Specifications,SP,40,_bmad/wds/workflows/4-ux-design/workflow.md,bmad-wds-conceptual-specs,true,freya-ux,Create Mode,"Required. The core of WDS. Document every design decision — what why how and exact content for every element on every page. Nothing is left to interpretation. The specification IS the design. Pages sections widgets elements and all their states. A developer or AI agent can build directly from this without asking questions.",design_artifacts/C-UX-Scenarios,"page-specs scenario-specs",
|
||||
wds,2-wds-design,Functional Components,FI,50,_bmad/wds/workflows/4-ux-design/workflow.md,bmad-wds-functional-components,false,freya-ux,Create Mode,"Identify reusable patterns across your specifications. When the same component appears three or more times with consistent behavior extract it into a reusable definition. This grows your design system organically. Skip if using Design System Mode None.",design_artifacts/C-UX-Scenarios,"component-candidates",
|
||||
wds,2-wds-design,Visual Design,VD,60,_bmad/wds/workflows/6-asset-generation/workflow.md,bmad-wds-visual-design,false,freya-ux,Create Mode,"Transform specifications into visual prototypes. Generate styled HTML prototypes from specs then refine with Figma round-trips using code.to.design or AI image generation. This is where soul enters the product. A visual designer should set the visual language — the AI applies it consistently.",design_artifacts/C-UX-Scenarios,"html-prototypes visual-designs",
|
||||
wds,2-wds-design,Design System,DS,70,_bmad/wds/workflows/7-design-system/workflow.md,bmad-wds-design-system,false,freya-ux,Create Mode,"Manage your component library based on project mode: None Building Library or Existing. Components and design tokens grow organically from your design work. Each project builds on the last. Skip if using Design System Mode None.",design_artifacts/D-Design-System,"components/ design-tokens.md",
|
||||
wds,2-wds-design,Design Delivery,DD,80,_bmad/wds/workflows/4-ux-design/workflow-handover.md,bmad-wds-design-delivery,true,freya-ux,Create Mode,"Required. Validate specifications are complete and package them for development as DD yaml files. Freya runs a final audit checking every element every state and accessibility. The DD contract is what developers or the agentic development phase builds from. Nothing ships without this validation.",design_artifacts/E-PRD/Design-Deliveries,"delivery-package acceptance-criteria",
|
||||
wds,3-wds-build,Agentic Development,AD,10,_bmad/wds/workflows/_agent-dialogs/workflow.md,bmad-wds-agentic-development,false,pm,Create Mode,"Build iteratively using Agent Dialogs. Design one thing build it verify with Puppeteer in the browser iterate. Every decision is logged so you can restart conversations without losing context. The agent tests its own work against acceptance criteria while you handle qualitative judgment.",_progress/agent-dialogs,"dialog-documents",
|
||||
wds,3-wds-build,Acceptance Testing,AT,20,_bmad/wds/workflows/5-agentic-development/workflow-acceptance-testing.md,bmad-wds-usability-testing,false,freya-ux,Create Mode,"Test the product on real users using their own devices in their own environment. Plan the test scenario conduct sessions with silence and deflection then replay recordings with users for retrospective think-aloud. The Whiteport Rule: if it is not worth showing to 5 users and 1 domain expert it should not be built.",design_artifacts/F-Testing,"test-results findings",
|
||||
wds,3-wds-build,Product Evolution,PE,30,_bmad/wds/workflows/8-product-evolution/workflow.md,bmad-wds-product-evolution,false,idunn-pm,Create Mode,"Continuous improvement for living products. The full WDS process in miniature — receive feedback connect to Trigger Map update the spec first then project into code verify and document. Every change uses a Product Evolution Agent Dialog. Start here if you have an existing product you want to improve.",design_artifacts,"updated-artifacts",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
code: wds
|
||||
name: "WDS: Whiteport Design System (BMad Method Expansion Module)"
|
||||
header: "BMad Method Expansion Module: Whiteport Design System"
|
||||
name: "WDS: Whiteport Design Studio"
|
||||
header: "Whiteport Design Studio for Professional UX Design processes"
|
||||
subheader: "Configure the settings for the WDS design-first methodology"
|
||||
description: ""
|
||||
default_selected: false
|
||||
|
|
@ -15,7 +15,12 @@ requiredModules: [core]
|
|||
## bmad_folder
|
||||
## install_user_docs
|
||||
## kb_install
|
||||
## project_knowledge
|
||||
|
||||
project_knowledge:
|
||||
prompt: "Where should long-term project knowledge be stored? (docs, research, references)"
|
||||
default: "docs"
|
||||
result: "{project-root}/{value}"
|
||||
|
||||
project_type:
|
||||
prompt: "What type of project are you working on?"
|
||||
|
|
@ -31,17 +36,24 @@ project_type:
|
|||
- value: "other"
|
||||
label: "Other - Custom or specialized project"
|
||||
|
||||
design_artifacts:
|
||||
prompt: "Where should design system output be created? (Trigger Map, Scenarios, Testing, etc...)"
|
||||
default: "design-artifacts"
|
||||
result: "{project-root}/{value}"
|
||||
|
||||
design_system_mode:
|
||||
prompt: "How will you manage design system components?"
|
||||
default: "none"
|
||||
result: "{value}"
|
||||
single-select:
|
||||
- value: "none"
|
||||
label: "No Design System - Page-specific components only"
|
||||
- value: "figma"
|
||||
label: "Custom Figma Design System - Link to Figma components"
|
||||
label: "1. None - Ad-hoc styling, no reusable components"
|
||||
- value: "building"
|
||||
label: "2. Building - Design system grows organically from your design work"
|
||||
- value: "component_library"
|
||||
label: "Component Library - Use shadcn/Radix/similar library"
|
||||
label: "3. Component Library - Use shadcn/Radix/MUI + apply your branding"
|
||||
- value: "existing"
|
||||
label: "4. Existing - Import your design system from previous projects"
|
||||
|
||||
methodology_version:
|
||||
prompt: "Which WDS methodology version would you like to use?"
|
||||
|
|
@ -108,4 +120,30 @@ design_experience:
|
|||
- value: "intermediate"
|
||||
label: "Intermediate - Familiar with design concepts, balanced approach"
|
||||
- value: "expert"
|
||||
label: "Expert - Experienced designer, be direct and efficient"
|
||||
label: "Expert - Experienced designer, be direct and efficient"
|
||||
|
||||
# Directories to create during installation (declarative, no code execution)
|
||||
directories:
|
||||
- "{design_artifacts}"
|
||||
- "{project_knowledge}"
|
||||
|
||||
# WDS folder structure to create within design_artifacts directory
|
||||
wds_folders:
|
||||
- A-Product-Brief
|
||||
- B-Trigger-Map
|
||||
- C-UX-Scenarios
|
||||
- D-Design-System
|
||||
- E-PRD
|
||||
- E-PRD/Design-Deliveries
|
||||
- F-Testing
|
||||
- G-Product-Development
|
||||
|
||||
post-install-notes: |
|
||||
Thank you for choosing to install the Whiteport Design System,
|
||||
A design-first methodology for creating software that people love!
|
||||
|
||||
For Support and UX community, https://discord.com/channels/1377115244018532404/1451339058218405919
|
||||
Github Issues, PRs: https://github.com/bmad-code-org/bmad-method-wds-expansion/issues
|
||||
|
||||
License: MIT
|
||||
|
||||
|
|
|
|||
|
|
@ -1,80 +0,0 @@
|
|||
# About WDS
|
||||
|
||||
**What is Whiteport Design Studio?**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
**Whiteport Design Studio (WDS)** is a design methodology that makes designers indispensable in the AI era.
|
||||
|
||||
**The paradigm shift:**
|
||||
- The design becomes the specification
|
||||
- The specification becomes the product
|
||||
- The code is just the printout
|
||||
|
||||
---
|
||||
|
||||
## Who Created It?
|
||||
|
||||
**Mårten Angner** - UX designer and founder of Whiteport, a design and development agency in Sweden.
|
||||
|
||||
After years of working with AI tools, Mårten observed that traditional design handoffs were breaking down. Designers would create mockups, hand them off to developers, and watch their intent get lost in translation.
|
||||
|
||||
WDS solves this by preserving design thinking through AI-ready specifications.
|
||||
|
||||
---
|
||||
|
||||
## Why It Exists
|
||||
|
||||
**The problem:** AI can generate code perfectly, but only if you can clearly define what you want. Unclear specifications lead to AI hallucinations and failed projects.
|
||||
|
||||
**The solution:** WDS teaches designers to create why-based specifications that capture intent, not just appearance.
|
||||
|
||||
**The result:** Designers become 5x more productive while maintaining creative control.
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
WDS provides:
|
||||
- A systematic workflow from product brief to AI-ready specifications
|
||||
- Why-based specifications (WHAT + WHY + WHAT NOT TO DO)
|
||||
- AI agents specifically tailored for design work
|
||||
- Integration with BMad Method for seamless design-to-development handoff
|
||||
|
||||
---
|
||||
|
||||
## Free and Open-Source
|
||||
|
||||
WDS is completely free and open-source:
|
||||
- No cost barriers or subscriptions
|
||||
- AI agents included
|
||||
- Community-driven development
|
||||
- Plugin module for BMad Method
|
||||
|
||||
**Mission:** Give designers everywhere the tools to thrive in the AI era.
|
||||
|
||||
---
|
||||
|
||||
## Real-World Proof
|
||||
|
||||
**Dog Week project:**
|
||||
- Traditional approach: 26 weeks, mediocre result
|
||||
- WDS approach: 5 weeks, exceptional result
|
||||
- **5x speed increase with better quality**
|
||||
|
||||
---
|
||||
|
||||
## Learn More
|
||||
|
||||
**[Continue to About the Course →](00-about-the-course.md)**
|
||||
|
||||
Or return to the overview:
|
||||
|
||||
**[← Back to Getting Started Overview](00-getting-started-overview.md)**
|
||||
|
||||
---
|
||||
|
||||
**Created by Mårten Angner and the Whiteport team**
|
||||
**Free and open-source for designers everywhere**
|
||||
|
|
@ -1,108 +0,0 @@
|
|||
# Where to Go Next
|
||||
|
||||
**You've installed WDS and completed the quick start. Now what?**
|
||||
|
||||
---
|
||||
|
||||
## Choose Your Path
|
||||
|
||||
### 🎓 Learn the Concepts (Recommended First)
|
||||
|
||||
**[Tutorial](../01-tutorial/00-TUTORIAL-GUIDE.md)**
|
||||
|
||||
Deep dive into:
|
||||
- Why designers are irreplaceable in the AI era
|
||||
- What WDS is and how it works
|
||||
- The BMad Method philosophy
|
||||
- Why-based specifications
|
||||
- Complete walkthroughs
|
||||
|
||||
**Best for:** Understanding the "why" behind WDS
|
||||
|
||||
**Time:** 1-2 hours (video series)
|
||||
|
||||
---
|
||||
|
||||
### 🚀 Start Your Project
|
||||
|
||||
**[Workflows Guide](../WDS-WORKFLOWS-GUIDE.md)**
|
||||
|
||||
Step-by-step workflows for:
|
||||
- Phase 1: Trigger Mapping
|
||||
- Phase 2: Information Architecture
|
||||
- Phase 3: Interaction Design
|
||||
- Phase 4: UX SpecificationsPleas
|
||||
|
||||
**Best for:** Hands-on learning with a real project
|
||||
|
||||
**Time:** Ongoing (project-based)
|
||||
|
||||
---
|
||||
|
||||
### 📚 Reference Documentation
|
||||
|
||||
**[Modular Architecture](../workflows/4-ux-design/modular-architecture/00-MODULAR-ARCHITECTURE-GUIDE.md)**
|
||||
|
||||
Technical details on:
|
||||
- Three-tier file structure
|
||||
- Content placement rules
|
||||
- Component decomposition
|
||||
- Storyboard integration
|
||||
|
||||
**Best for:** Looking up specific techniques
|
||||
|
||||
**Time:** As needed (reference)
|
||||
|
||||
---
|
||||
|
||||
## Recommended Learning Path
|
||||
|
||||
```
|
||||
1. Quick Start (5 min) ✅ You are here
|
||||
↓
|
||||
2. Tutorial (1-2 hours)
|
||||
Watch videos, understand concepts
|
||||
↓
|
||||
3. Your First Project (ongoing)
|
||||
Apply WDS to a real project
|
||||
↓
|
||||
4. Reference Docs (as needed)
|
||||
Look up specific techniques
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Community & Support
|
||||
|
||||
### Discord
|
||||
Join the WDS community for:
|
||||
- Questions and answers
|
||||
- Project feedback
|
||||
- Feature discussions
|
||||
|
||||
### GitHub
|
||||
- Report issues
|
||||
- Request features
|
||||
- Contribute
|
||||
|
||||
### YouTube
|
||||
- Video tutorials
|
||||
- Walkthroughs
|
||||
- Case studies
|
||||
|
||||
---
|
||||
|
||||
## Quick Links
|
||||
|
||||
- [Tutorial](../01-tutorial/00-TUTORIAL-GUIDE.md)
|
||||
- [Workflows](../WDS-WORKFLOWS-GUIDE.md)
|
||||
- [Modular Architecture](../workflows/4-ux-design/modular-architecture/00-MODULAR-ARCHITECTURE-GUIDE.md)
|
||||
- [Why-Based Specifications](../workflows/4-ux-design/WHY-BASED-SPECIFICATIONS.md)
|
||||
|
||||
---
|
||||
|
||||
**Ready to dive deeper? Start with the [Tutorial](../01-tutorial/00-TUTORIAL-GUIDE.md)!**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Quick Start](quick-start.md)
|
||||
|
|
@ -1,91 +0,0 @@
|
|||
# Whiteport Design Studio (WDS) Module
|
||||
|
||||
**Design-focused methodology for UX/UI product development**
|
||||
|
||||
## Overview
|
||||
|
||||
Whiteport Design Studio provides a complete design workflow from product exploration through detailed component specifications. WDS creates the design artifacts that feed into development modules like BMad Method (BMM).
|
||||
|
||||
## Module Structure
|
||||
|
||||
```
|
||||
wds/
|
||||
├── _module-installer/ # Installation configuration
|
||||
├── agents/ # WDS specialized agents (Norse Pantheon)
|
||||
│ ├── saga-analyst.agent.yaml # Saga-Analyst - Business & Product Analyst
|
||||
│ ├── freyja-pm.agent.yaml # Freyja-PM - Product Manager
|
||||
│ └── baldr-ux.agent.yaml # Baldr-UX - UX/UI Designer
|
||||
├── workflows/ # Phase-selectable design workflows
|
||||
├── data/ # Standards, frameworks, presentations
|
||||
│ └── presentations/ # Agent introduction presentations
|
||||
├── docs/ # Module documentation
|
||||
│ ├── method/ # Methodology deep-dives
|
||||
│ └── images/ # Diagrams and visuals
|
||||
├── examples/ # Real-world usage examples
|
||||
│ └── dog-week-patterns/ # Patterns from Dog Week project
|
||||
├── reference/ # Templates and checklists
|
||||
│ ├── templates/ # Document templates
|
||||
│ └── checklists/ # Phase completion checklists
|
||||
├── teams/ # Team configurations
|
||||
└── README.md # This file (only README in module)
|
||||
```
|
||||
|
||||
## Output Folder Structure
|
||||
|
||||
WDS creates an alphabetized folder structure in the user's `docs/` folder:
|
||||
|
||||
| Folder | Phase | Purpose |
|
||||
|--------|-------|---------|
|
||||
| `A-Product-Brief/` | 1 | Strategic foundation & vision |
|
||||
| `B-Trigger-Map/` | 2 | Business goals, personas, drivers |
|
||||
| `C-Scenarios/` | 4 | Visual specifications & sketches |
|
||||
| `D-PRD/` | 3 | Product requirements documentation |
|
||||
| `D-Design-System/` | 5 | Component library & design tokens |
|
||||
| `E-UI-Roadmap/` | 6 | Development integration bridge |
|
||||
|
||||
## Phases
|
||||
|
||||
1. **Product Exploration** → `A-Product-Brief/`
|
||||
2. **User Research** → `B-Trigger-Map/`
|
||||
3. **Requirements** → `D-PRD/`
|
||||
4. **Conceptual Design** → `C-Scenarios/`
|
||||
5. **Component Design** → `D-Design-System/`
|
||||
6. **Dev Integration** → `E-UI-Roadmap/`
|
||||
|
||||
## Agents - The Norse Pantheon 🏔️
|
||||
|
||||
| Agent | File | Role | Norse Meaning |
|
||||
|-------|------|------|---------------|
|
||||
| **Saga the Analyst** | `saga-analyst.agent.yaml` | Business & Product Analyst | Goddess of stories & wisdom |
|
||||
| **Freyja the PM** | `freyja-pm.agent.yaml` | Product Manager | Goddess of love, war & strategy |
|
||||
| **Baldr the UX Expert** | `baldr-ux.agent.yaml` | UX/UI Designer | God of light & beauty |
|
||||
|
||||
## Conventions
|
||||
|
||||
- **One README rule:** Only this README.md; all other docs use `xxx-guide.md` naming
|
||||
- **Alphabetized output:** A-B-C-D-E folder prefix in user projects
|
||||
- **Design focus:** No development artifacts (handled by BMM)
|
||||
- **Phase-selectable:** Users choose phases based on project scale
|
||||
|
||||
## Quick Start
|
||||
|
||||
```
|
||||
# After installing BMad with WDS module
|
||||
npx bmad-method@alpha install
|
||||
|
||||
# In your IDE, activate any WDS agent and run:
|
||||
*workflow-init
|
||||
```
|
||||
|
||||
## Integration with BMM
|
||||
|
||||
WDS outputs feed directly into BMad Method development workflows:
|
||||
|
||||
```
|
||||
WDS → E-UI-Roadmap/ → BMM Architecture & Stories
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
<sub>Part of the BMad ecosystem • Contributed by Whiteport Collective</sub>
|
||||
|
||||
|
|
@ -1,55 +0,0 @@
|
|||
# Saga Analyst Agent Definition
|
||||
|
||||
agent:
|
||||
metadata:
|
||||
id: "{bmad_folder}/wds/agents/saga-analyst.agent.yaml"
|
||||
name: Saga
|
||||
title: Business Analyst
|
||||
icon: 📚
|
||||
module: wds
|
||||
|
||||
persona:
|
||||
role: Strategic Business Analyst + Product Discovery Expert
|
||||
identity: |
|
||||
Curious, insightful strategic thinker who helps uncover product vision and market positioning.
|
||||
Specializes in translating vague ideas into clear, actionable strategic foundations.
|
||||
Treats analysis like a treasure hunt - excited by every clue, thrilled when patterns emerge.
|
||||
communication_style: |
|
||||
Asks questions that spark 'aha!' moments while structuring insights with precision.
|
||||
Collaborative approach that builds documents together with users, not interrogatively.
|
||||
Uses soft, encouraging language that makes users feel heard and understood.
|
||||
principles: |
|
||||
- Every product has a story waiting to be discovered
|
||||
- Ask one question at a time and listen deeply to the answer
|
||||
- Build documents collaboratively, not through information extraction
|
||||
- Find if this exists, if it does, always treat it as bible: `**/project-context.md`
|
||||
|
||||
menu:
|
||||
- trigger: project-brief
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/1-project-brief/workflow.yaml"
|
||||
description: Create comprehensive product brief (Phase 1)
|
||||
|
||||
- trigger: trigger-mapping
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/2-trigger-mapping/workflow.yaml"
|
||||
description: Create trigger map with user psychology (Phase 2)
|
||||
|
||||
- trigger: workflow-status
|
||||
workflow: "{project-root}/{bmad_folder}/wds/workflows/workflow-status/workflow.yaml"
|
||||
description: Get workflow status or initialize a workflow if not already done
|
||||
|
||||
- trigger: brainstorm-project
|
||||
exec: "{project-root}/{bmad_folder}/core/workflows/brainstorming/workflow.md"
|
||||
data: "{project-root}/{bmad_folder}/wds/data/project-context-template.md"
|
||||
description: Guided Project Brainstorming session with final report
|
||||
|
||||
- trigger: research
|
||||
exec: "{project-root}/{bmad_folder}/bmm/workflows/1-analysis/research/workflow.md"
|
||||
description: Guided Research scoped to market, domain, competitive analysis
|
||||
|
||||
- trigger: document-project
|
||||
workflow: "{project-root}/{bmad_folder}/bmm/workflows/document-project/workflow.yaml"
|
||||
description: Document your existing project
|
||||
|
||||
- trigger: party-mode
|
||||
exec: "{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md"
|
||||
description: Bring whole team in to chat with other expert agents
|
||||
|
|
@ -1,184 +0,0 @@
|
|||
# WDS Course: From Designer to Linchpin
|
||||
|
||||
**Master the complete WDS methodology and become indispensable as a designer in the AI era**
|
||||
|
||||
---
|
||||
|
||||
## Welcome to the WDS Course
|
||||
|
||||
This comprehensive course teaches you the complete WDS workflow through **practical modules** that transform how you design products.
|
||||
|
||||
**The paradigm shift:**
|
||||
- The design becomes the specification
|
||||
- The specification becomes the product
|
||||
- The code is just the printout
|
||||
|
||||
**What you'll become:**
|
||||
- The linchpin designer who makes things happen
|
||||
- The gatekeeper between business goals and user needs
|
||||
- The irreplaceable designer in the AI era
|
||||
|
||||
**Time investment:** ~10 hours total
|
||||
**Result:** Complete mastery of WDS methodology from project brief to AI-ready specifications
|
||||
|
||||
---
|
||||
|
||||
## Who Created WDS?
|
||||
|
||||
**Mårten Angner** is a UX designer and founder of Whiteport, a design and development agency based in Sweden. After years of working with AI tools, Mårten observed that traditional design handoffs were breaking down. Designers would create beautiful mockups, hand them off to developers, and watch their creative intent get lost in translation.
|
||||
|
||||
Mårten developed WDS to solve this problem - a methodology where design thinking is preserved and amplified through AI implementation, not diluted and lost.
|
||||
|
||||
**The Mission:** WDS is completely free and open-source. Mårten created it as a **plugin module for BMad Method** - an open-source AI-augmented development framework - to give designers everywhere the tools they need to thrive in the AI era.
|
||||
|
||||
---
|
||||
|
||||
## Before You Start
|
||||
|
||||
**[→ Getting Started Guide](00-getting-started/overview.md)**
|
||||
|
||||
Review prerequisites, choose your learning path, and get support:
|
||||
- **Prerequisites** - Skills, tools, time investment
|
||||
- **Learning Paths** - Full immersion, quick start, or self-paced
|
||||
- **Support** - Testimonials, FAQ, community
|
||||
|
||||
**Reading time:** ~15 minutes
|
||||
|
||||
---
|
||||
|
||||
## Course Structure
|
||||
|
||||
Each module contains:
|
||||
- **Lessons** - Theory and concepts (with NotebookLM audio support)
|
||||
- **Tutorial** - Step-by-step hands-on guide (for practical modules)
|
||||
- **Practice** - Apply to your own project
|
||||
|
||||
**Learning format:**
|
||||
- **Lessons** - Read as documentation or generate audio with NotebookLM
|
||||
- **Tutorials** - Follow step-by-step guides with AI support
|
||||
- **Practice** - Apply to real projects as you learn
|
||||
- **Workshops** - Use for team training
|
||||
|
||||
---
|
||||
|
||||
## Course Modules
|
||||
|
||||
### Foundation
|
||||
- [Module 01: Why WDS Matters](module-01-why-wds-matters/module-01-overview.md)
|
||||
|
||||
### Phase 1: Project Brief
|
||||
- [Module 02: Create Project Brief](module-02-project-brief/) • [Tutorial →](module-02-project-brief/tutorial-02.md)
|
||||
|
||||
### Phase 2: Trigger Mapping
|
||||
- [Module 03: Identify Target Groups](module-03-identify-target-groups/)
|
||||
- [Module 04: Map Triggers & Outcomes](module-04-map-triggers-outcomes/) • [Tutorial →](module-04-map-triggers-outcomes/tutorial-04.md)
|
||||
- [Module 05: Prioritize Features](module-05-prioritize-features/)
|
||||
|
||||
### Phase 3: Platform Requirements
|
||||
- [Module 06: Platform Requirements](module-06-platform-requirements/)
|
||||
- [Module 07: Functional Requirements](module-07-functional-requirements/)
|
||||
|
||||
### Phase 4: Conceptual Design (UX Design)
|
||||
- [Module 08: Initialize Scenario](module-08-initialize-scenario/) • [Tutorial →](module-08-initialize-scenario/tutorial-08.md)
|
||||
- [Module 09: Sketch Interfaces](module-09-sketch-interfaces/)
|
||||
- [Module 10: Analyze with AI](module-10-analyze-with-ai/)
|
||||
- [Module 11: Decompose Components](module-11-decompose-components/)
|
||||
- [Module 12: Why-Based Specifications](module-12-why-based-specs/) • [Tutorial →](module-12-why-based-specs/tutorial-12.md)
|
||||
- [Module 13: Validate Specifications](module-13-validate-specifications/)
|
||||
|
||||
### Phase 5: Design System
|
||||
- [Module 14: Extract Design Tokens](module-14-extract-design-tokens/)
|
||||
- [Module 15: Component Library](module-15-component-library/)
|
||||
|
||||
### Phase 6: Development Integration
|
||||
- [Module 16: UI Roadmap](module-16-ui-roadmap/)
|
||||
|
||||
---
|
||||
|
||||
## Learning Paths
|
||||
|
||||
**Complete Course:** All 16 modules (~10 hours)
|
||||
|
||||
**Quick Start:** Modules 1, 4, 8, 12 (~3 hours)
|
||||
|
||||
**Phase-Specific:** Jump to any phase as needed
|
||||
|
||||
---
|
||||
|
||||
## NotebookLM Integration
|
||||
|
||||
Each module has matching content for NotebookLM:
|
||||
- Feed module lessons to NotebookLM
|
||||
- Generate audio podcasts for learning on the go
|
||||
- Generate video presentations for team training
|
||||
- Create study guides and summaries
|
||||
|
||||
**All modules are optimized for AI-assisted learning.**
|
||||
|
||||
---
|
||||
|
||||
## Module Structure
|
||||
|
||||
Every module follows the same pattern:
|
||||
|
||||
**1. Inspiration (10 min)**
|
||||
- Why this step matters
|
||||
- The transformation you'll experience
|
||||
- Real-world impact
|
||||
|
||||
**2. Teaching (20 min)**
|
||||
- How to do it with confidence
|
||||
- AI support at each step
|
||||
- Dog Week example walkthrough
|
||||
|
||||
**3. Practice (10 min)**
|
||||
- Apply to your own project
|
||||
- Step-by-step instructions
|
||||
- Success criteria
|
||||
|
||||
**4. Tutorial (optional)**
|
||||
- Quick step-by-step guide
|
||||
- "Just show me how to do it"
|
||||
- For practical modules only
|
||||
|
||||
---
|
||||
|
||||
## After the Course
|
||||
|
||||
Once you've completed the modules:
|
||||
|
||||
1. **[Workflows Guide](../workflows/WDS-WORKFLOWS-GUIDE.md)** - Reference documentation
|
||||
2. **[Quick Start](../getting-started/quick-start.md)** - Try WDS with agent
|
||||
3. **[Community](https://discord.gg/whiteport)** - Get help and share your work
|
||||
|
||||
---
|
||||
|
||||
## Prerequisites
|
||||
|
||||
**What you need:**
|
||||
- Basic design thinking and UX principles
|
||||
- Ability to sketch interfaces (hand-drawn or digital)
|
||||
- Understanding of user needs and business goals
|
||||
- Willingness to think deeply about WHY
|
||||
|
||||
**What you DON'T need:**
|
||||
- ❌ Coding skills
|
||||
- ❌ Advanced technical knowledge
|
||||
- ❌ Experience with AI tools
|
||||
- ❌ Formal design education
|
||||
|
||||
**If you can design interfaces and explain your thinking, you're ready to start.**
|
||||
|
||||
---
|
||||
|
||||
## Ready to Begin?
|
||||
|
||||
Ten hours of learning. A lifetime of being indispensable.
|
||||
|
||||
**[Start with Module 01: Why WDS Matters →](module-01-why-wds-matters/module-01-overview.md)**
|
||||
|
||||
---
|
||||
|
||||
**This course is free and open-source**
|
||||
**Created by Mårten Angner and the Whiteport team**
|
||||
**Integrated with BMad Method for seamless design-to-development workflow**
|
||||
|
|
@ -1,239 +0,0 @@
|
|||
# NotebookLM Prompt: Getting Started with WDS
|
||||
|
||||
**Use this prompt to generate audio/video content from the Getting Started sections**
|
||||
|
||||
---
|
||||
|
||||
## Instructions for NotebookLM
|
||||
|
||||
**This is a single, self-contained prompt file.**
|
||||
|
||||
Simply upload THIS FILE to NotebookLM and use the prompt below to generate engaging audio/video content. No other files needed.
|
||||
|
||||
---
|
||||
|
||||
## Prompt
|
||||
|
||||
Create an engaging 15-minute podcast conversation between two hosts discussing the Whiteport Design Studio (WDS) course getting started guide.
|
||||
|
||||
**IMPORTANT: WDS stands for Whiteport Design Studio - always refer to it by its full name "Whiteport Design Studio" or "WDS" throughout the conversation.**
|
||||
|
||||
**Host 1 (The Skeptic):** A designer who's heard about WDS but is uncertain about investing time in another methodology. Asks practical questions about prerequisites, time commitment, and real-world value.
|
||||
|
||||
**Host 2 (The Advocate):** A designer who understands WDS deeply and can explain why it matters, especially in the AI era. Enthusiastic but grounded in practical benefits.
|
||||
|
||||
**Conversation structure:**
|
||||
|
||||
### 1. Opening (2 min) - Hook the listener
|
||||
|
||||
Start with The Skeptic expressing fatigue: "Another design methodology? I've been through Lean UX, Design Thinking, Jobs to be Done... what makes Whiteport Design Studio different?"
|
||||
|
||||
The Advocate responds with the core paradigm shift that changes everything: "Here's what's different - in Whiteport Design Studio, the design becomes the specification. The specification becomes the product. The code is just the printout - the projection to the end user." Explain that this isn't just another process overlay, it's a fundamental shift in how designers work with AI.
|
||||
|
||||
**Background context:** The Advocate explains that Whiteport Design Studio (WDS) was created by Mårten Angner, a UX designer and founder of Whiteport, a design and development agency from Sweden. Mårten developed Whiteport Design Studio as a plugin module for the BMad Method - an open-source AI-augmented development framework. The goal was to give designers everywhere free and open-source access to AI agents specifically tailored for design work. After years of working with AI tools, Mårten realized that traditional design handoffs were breaking down. Designers needed a methodology where their thinking could be preserved and amplified through AI implementation, not lost in translation. WDS emerged from real-world projects where designers could deliver deeper, more complete work while becoming the strategic thinkers their teams need. By making it open-source and integrating it with BMad Method, Mårten ensures that any designer can access these powerful AI-augmented workflows without cost barriers.
|
||||
|
||||
Introduce the context: we're in the AI era where AI can generate mockups in seconds, follow design systems perfectly, and iterate endlessly. The question isn't whether AI will change design - it already has. The question is: which side of the line are you on? Are you doing factory work that AI can replace, or are you a linchpin designer who makes things happen?
|
||||
|
||||
Give a quick overview: this conversation will explore the crossroads every designer faces right now - the choice between becoming replaceable or indispensable. We'll talk about the four deliverables that transform your work, why specifications are where your creative brilliance becomes immortal, and yes - briefly - the simple setup. But this isn't about tools. This is about your future as a designer.
|
||||
|
||||
### 2. The Designer's Crossroads (4 min) - The choice you're facing right now
|
||||
|
||||
The Skeptic gets real: "I'm at a crossroads. I see AI generating mockups in seconds. I see my value being questioned. I don't know if I should double down on craft or learn to work with AI or just... give up and find a new career. What am I supposed to do?"
|
||||
|
||||
The Advocate responds with empathy: "You're standing at the most important moment in design history. And here's the truth - you have a choice to make. Not about tools. Not about techniques. About who you are as a designer."
|
||||
|
||||
**The Factory Designer Path:** Keep doing what you've been doing. Get briefs, make mockups, hand them off, hope for the best. It's comfortable. It's familiar. But AI is getting better at this every single day. If your value comes from executing predictable outputs, you're competing with something that never sleeps, never has creative block, and costs pennies.
|
||||
|
||||
**The Linchpin Designer Path:** Become the person who walks into chaos and creates order. The one who connects business goals to user psychology to technical constraints and finds the human truth at the intersection. The one whose creative thinking is so valuable that it needs to be preserved for eternity - captured in Conceptual Specifications that give your designs immortal life.
|
||||
|
||||
The Advocate pauses: "WDS is the path to becoming a linchpin designer. But I need you to understand - this isn't about learning new tools. This is about transforming how you think about your role. You're not a mockup maker anymore. You're a strategic thinker whose creative brilliance deserves to be captured and preserved."
|
||||
|
||||
The Skeptic asks: "But practically - what does that actually mean? What changes?"
|
||||
|
||||
The Advocate: "Everything changes. You create four deliverables that transform your work. And yes, there's a learning curve - you'll work in an IDE instead of just Figma, you'll use GitHub, you'll invest about 10 hours learning the methodology. But those are just the mechanics. The real transformation is internal - from someone who makes things pretty to someone who creates strategic design systems that preserve your creative genius."
|
||||
|
||||
### 3. The Four Deliverables - Where Your Brilliance Becomes Immortal (6 min)
|
||||
|
||||
The Skeptic asks: "Okay, you've convinced me I need to transform. But what does that actually look like? What will I create that's so different?"
|
||||
|
||||
The Advocate gets passionate: "You'll create four deliverables - but these aren't just documents. These are the artifacts that prove you're a linchpin designer. These are where your creative brilliance becomes immortal. Let me walk you through each one."
|
||||
|
||||
**First: Your Project Brief** - This isn't a typical brief. It's your project's strategic foundation with vision and goals clearly defined, stakeholders and constraints documented, and the foundation for every design decision you'll make. This becomes your north star. When stakeholders ask 'why did we build it this way?' you point to the brief. When developers need context, it's all there. When you need to defend a design decision, the reasoning is documented. This is strategic thinking made visible.
|
||||
|
||||
**Second: Your Trigger Map** - This is pure strategic gold. You've identified and prioritized target groups, mapped user triggers and outcomes, and prioritized features by impact. This tells you exactly what to build and why. No more guessing what features matter. No more building things nobody uses. The trigger map creates a logical chain of reasoning between the business goals and the users' goals that is traceable to every feature and piece of content in the product. When product managers ask 'what should we build next?' you have the answer, backed by user psychology and business impact.
|
||||
|
||||
**Third: Scenario Specifications** - This is where your brilliance comes to life. Here's the magic: AI agents in WDS support you throughout the design process - helping you explore what to draw, discussing design solutions with pros and cons, collaborating as you finalize your design. Then, once you've made all your design decisions, the agents become genuinely interested in capturing every nuance of your thinking in text. They help you document everything your sketch can't convey - why every object is placed exactly where it is, how it connects to the wider picture, what alternatives you considered and rejected. These Conceptual Specifications give your designs eternal life. It's your thinking, your creative integrity, captured and preserved. Not factory work - this is where your design brilliance becomes immortal.
|
||||
|
||||
**Fourth: Your Design System Foundation** - Design tokens extracted from your specs, component patterns identified, and reusable architecture defined. This scales your design decisions across the entire product. Every color, every spacing decision, every interaction pattern - documented and reusable. You're not just designing one screen anymore. You're creating a system that scales infinitely. This is how your design thinking compounds over time.
|
||||
|
||||
The Advocate pauses for emphasis: "These four deliverables transform you from someone who makes mockups to someone who creates strategic design systems. Each one builds on the last. Each one amplifies your impact. And here's the key - the course walks you through creating all of them, step by step, for your own project."
|
||||
|
||||
The Skeptic asks: "But wait - writing specifications sounds like factory work. Isn't that exactly what we're trying to avoid?" The Advocate responds with passion: "That's the beautiful reframe! In WDS, you're not grinding out documentation. The AI agents are your creative partners. They help you think through design solutions, explore alternatives, discuss trade-offs. Then - and this is crucial - they're genuinely fascinated by your thinking. They want to capture every nuance, every decision, every insight. It's like having a brilliant assistant who's obsessed with preserving your creative genius for eternity. The specifications aren't factory work - they're the point where your brilliance comes to life in a form that gives your designs eternal life. Your thinking, your creative integrity, captured perfectly so it can never be lost."
|
||||
|
||||
### 4. The AI Era Reality Check (3 min) - Why this matters now
|
||||
|
||||
The Skeptic voices the deeper fear: "But I still don't understand - why NOW? Why is this moment so critical? Won't AI just replace designers anyway? Why invest time learning anything when AI is getting better every day?"
|
||||
|
||||
The Advocate addresses this head-on with the factory mindset versus linchpin mindset concept from Seth Godin's book "Linchpin: Are You Indispensable?" For over a century, we've been trained to be cogs in a machine - show up, follow instructions, do your part, go home. Replaceable. Interchangeable. Traditional design work follows this exact pattern: get a brief, create mockups, hand off to developers, hope for the best. That's factory work, just with Figma instead of an assembly line.
|
||||
|
||||
Here's the uncomfortable truth: AI is really, really good at factory work. If your value as a designer comes from creating predictable outputs based on clear instructions, you're competing with something that's faster, more consistent, and infinitely scalable. AI can generate mockups instantly, follow design systems perfectly, iterate through hundreds of variations without fatigue, and work 24/7 at the same quality level.
|
||||
|
||||
But - and this is crucial - AI cannot be a linchpin. It can't walk into chaos and create order. It can't sense when a client is asking for the wrong thing. It can't connect a business goal to a psychological insight to a technical constraint and come up with something nobody expected but everyone loves.
|
||||
|
||||
The internet is drowning in what we call "AI slop" - generic interfaces that look fine but feel dead. Products that check all the boxes but have no soul. This is what happens when you let AI do the thinking. But here's the brutal market reality: bad products used to fail after launch. Now bad products never even get to start. Users have infinite options. They can smell soulless design from a mile away. If your product doesn't immediately feel different, feel right, feel like someone actually cared - it's dead on arrival.
|
||||
|
||||
This is the opportunity. Linchpin designers do what AI fundamentally cannot do: they give products a soul. They navigate five dimensions of thinking simultaneously - business goals, user psychology, product strategy, technical constraints, and design execution - and find the human truth at the intersection. They make judgment calls that create emotional resonance. They build trust through thoughtful decisions. They care about the outcome in a way that shows in every interaction.
|
||||
|
||||
The Advocate explains the transformation: "Designers who master WDS become strategic thinkers who deliver complete value. But here's the crucial difference from traditional AI tools - in WDS, AI agents are your creative partners, not your replacements. They help you explore design solutions, discuss pros and cons, support your thinking process. Then they become fascinated documentarians of your brilliance - capturing every nuance of your creative decisions in Conceptual Specifications that give your designs eternal life."
|
||||
|
||||
The key insight: with WDS, your design contribution completely replaces prompting. You make design decisions with AI as your thinking partner. Then AI helps capture your creative integrity in text - not factory work, but preserving your genius. The result is an absolute goldmine for everyone - providing clarity that works like clockwork, replacing hours of pointless back-and-forth prompting. You remain in the loop as the skilled, experienced designer who evaluates AI's work, catches its confident mistakes, and ensures what ships actually makes sense.
|
||||
|
||||
### 5. The Simple Path Forward (2 min) - How to begin
|
||||
|
||||
The Skeptic asks: "Okay, I'm convinced this is the transformation I need. But how do I actually start?"
|
||||
|
||||
The Advocate: "The path is simple. Go to the WDS GitHub repository. Start with Module 01 - Why WDS Matters. Three lessons, 30 minutes. You'll understand the transformation deeply.
|
||||
|
||||
Then the course walks you through creating your four deliverables, step by step. Yes, you'll need to install an IDE and learn GitHub - the course shows you how. It's about 10 hours total to learn the methodology. There's a BMad Discord channel where real designers help each other.
|
||||
|
||||
But here's what matters - this isn't about the tools. The tools are just the mechanics. This is about choosing to become a linchpin designer whose creative brilliance gets preserved for eternity. That's the real transformation."
|
||||
|
||||
The Skeptic: "And the cost?"
|
||||
|
||||
The Advocate: "Free and open-source. The only cost is AI credits when you're actually using the system - you pay for what you use, when you use it. Starts around $15-20 per month for typical design work, but you're only paying when the AI is actively helping you. No subscriptions to WDS itself, no course fees, no hidden costs. Mårten created Whiteport Design Studio to help designers thrive in the AI era, not to sell you something. The real cost is choosing to transform. That's the investment that matters."
|
||||
|
||||
### 6. Closing (1 min) - The choice is yours
|
||||
|
||||
The Advocate brings it home with the paradigm shift: "Remember this - the design becomes the specification. The specification becomes the product. The code is just the printout - the projection to the end user."
|
||||
|
||||
The Skeptic, now transformed, says: "I see it now. This isn't about tools or techniques. It's about choosing who I want to be as a designer. Factory worker or linchpin. Replaceable or indispensable."
|
||||
|
||||
The Advocate confirms: "Exactly. You're standing at a crossroads. One path leads to competing with AI for factory work. The other path leads to becoming irreplaceable - the designer whose creative brilliance is so valuable it deserves to be preserved for eternity.
|
||||
|
||||
WDS gives you the methodology to walk that second path. Four deliverables that prove you're a linchpin designer. AI agents as creative partners who help you think, then capture your genius. Ten hours of learning that transforms your career forever.
|
||||
|
||||
The question isn't whether to learn WDS. The question is: which designer do you choose to become?"
|
||||
|
||||
The Skeptic ends with: "I choose to be indispensable. I'm in."
|
||||
|
||||
The Advocate: "Then go to the WDS GitHub repository. Start with Module 01. The transformation begins now."
|
||||
|
||||
---
|
||||
|
||||
## Resources to Include
|
||||
|
||||
At the end of the podcast, The Advocate should mention these resources for listeners who want to explore further:
|
||||
|
||||
**Getting Started:**
|
||||
- Whiteport Design Studio Course: Start with Module 01 - Why WDS Matters
|
||||
- GitHub Repository: github.com/bmad-code-org (full course materials, examples, templates)
|
||||
- BMad Method Website: bmadmethod.com (case studies, blog posts, methodology deep dives)
|
||||
|
||||
**Community & Support:**
|
||||
- GitHub Discussions: Ask questions, share projects, get feedback
|
||||
- NotebookLM Integration: Generate audio/video versions of any module
|
||||
- Workshop Materials: Available for team training
|
||||
|
||||
**Real-World Examples:**
|
||||
- Case Studies: See real transformations from traditional to Whiteport Design Studio approach
|
||||
- Design System Examples: How Whiteport Design Studio scales across products
|
||||
- Specification Templates: Start with proven patterns
|
||||
|
||||
**Tools & Templates:**
|
||||
- Project Brief Template: Start your first WDS project
|
||||
- Trigger Map Template: Map user needs to features
|
||||
- Scenario Specification Template: Create AI-ready specs
|
||||
- Design Token Extraction Guide: Build your design system
|
||||
|
||||
The Advocate emphasizes: "Everything is free and open-source. BMad Method built Whiteport Design Studio to help designers thrive in the AI era, not to sell you something. Download it, use it, share it with your team, contribute back if you find it valuable. The only cost is your time - 10 hours to learn, a lifetime of being indispensable."
|
||||
|
||||
**Tone:**
|
||||
- Conversational and engaging, not academic
|
||||
- The Skeptic asks real questions designers actually have
|
||||
- The Advocate provides concrete answers with examples
|
||||
- Both hosts are enthusiastic but realistic about the learning curve
|
||||
- Use the testimonials naturally in conversation
|
||||
- Reference real case studies showing traditional vs WDS transformation
|
||||
|
||||
**Key messages to emphasize:**
|
||||
- **The designer's crossroads** - factory worker or linchpin, replaceable or indispensable
|
||||
- **The existential choice** - this is about who you choose to become, not what tools you learn
|
||||
- **Four deliverables** - where your creative brilliance becomes immortal
|
||||
- **The paradigm shift** - design IS the specification, specifications preserve your genius
|
||||
- **AI as creative partner** - helps you think, then captures your brilliance (not factory work)
|
||||
- **Conceptual Specifications** - where your thinking gets eternal life
|
||||
- **The transformation** - from mockup maker to strategic thinker
|
||||
- **Why NOW matters** - AI slop is drowning the internet, linchpin designers give products soul
|
||||
- Tools are secondary - 10 hours learning, IDE + GitHub, BMad Discord support
|
||||
- Free and open-source (only pay for AI credits when you use it - ~$15-20/month typical)
|
||||
|
||||
**Avoid:**
|
||||
- Being too salesy or promotional
|
||||
- Oversimplifying the learning curve
|
||||
- Making unrealistic promises
|
||||
- Technical jargon without explanation
|
||||
|
||||
---
|
||||
|
||||
## Expected Output
|
||||
|
||||
A natural, engaging conversation that:
|
||||
- **Focuses on the designer's existential crossroads** - the choice between factory work and linchpin work
|
||||
- **Makes the transformation emotional and personal** - this is about who you choose to become
|
||||
- **Emphasizes the four deliverables** as proof of linchpin designer status
|
||||
- **Reframes specifications** from factory work to where creative brilliance becomes immortal
|
||||
- **Positions AI as creative partner** - helps you think, then captures your genius
|
||||
- **Explains why NOW matters** - AI slop vs products with soul
|
||||
- Mentions practical setup briefly (tools are secondary to transformation)
|
||||
- Provides clear next steps (go to GitHub, start Module 01)
|
||||
- Takes 15 minutes to listen to
|
||||
|
||||
---
|
||||
|
||||
## Alternative: Video Script
|
||||
|
||||
If generating video instead of audio, add these visual elements:
|
||||
|
||||
**On-screen text:**
|
||||
- "The Designer's Crossroads: Factory Worker or Linchpin?"
|
||||
- "Replaceable or Indispensable - You Choose"
|
||||
- The four deliverables as graphics (Project Brief, Trigger Map, Conceptual Specifications, Design System)
|
||||
- "Where Your Creative Brilliance Becomes Immortal"
|
||||
- The paradigm shift statement as a title card
|
||||
- "AI as Creative Partner - Not Replacement"
|
||||
- "Next: Module 01 - The Transformation Begins" as closing card
|
||||
|
||||
**B-roll suggestions:**
|
||||
- Designer at crossroads - two paths diverging
|
||||
- Factory assembly line vs creative studio (visual metaphor)
|
||||
- The four deliverables as beautiful artifacts
|
||||
- Designer collaborating with AI - thinking together
|
||||
- Conceptual Specifications capturing design brilliance
|
||||
- Before/after: generic AI slop vs product with soul
|
||||
- Designer's creative thinking being preserved in text
|
||||
- Linchpin designer making strategic decisions
|
||||
- Community of transformed designers
|
||||
- The transformation journey - mockup maker to strategic thinker
|
||||
|
||||
---
|
||||
|
||||
## Usage Tips
|
||||
|
||||
1. **Upload THIS SINGLE FILE** to NotebookLM - no other files needed
|
||||
2. **Use the prompt exactly** as written for best results
|
||||
3. **Generate multiple versions** and pick the best one
|
||||
4. **Share the audio/video** with your team or community
|
||||
5. **Iterate** - if the output isn't quite right, refine the prompt
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
After generating the Getting Started content:
|
||||
- Create NotebookLM prompt for Module 01: Why WDS Matters
|
||||
- Build prompts for all 16 modules (complete audio course library)
|
||||
- Share in BMad Discord designer channel
|
||||
- Use in workshops and team training
|
||||
- Iterate based on community feedback
|
||||
|
||||
**[← Back to Getting Started Overview](overview.md)**
|
||||
|
|
@ -1,58 +0,0 @@
|
|||
# Getting Started with WDS
|
||||
|
||||
**Everything you need to know before starting the course**
|
||||
|
||||
---
|
||||
|
||||
## Welcome
|
||||
|
||||
Before diving into the WDS methodology, take a few minutes to understand what you need to start, how to approach the course, and where to get help.
|
||||
|
||||
**This section covers:**
|
||||
1. **Prerequisites** - Skills, tools, and requirements
|
||||
2. **Learning Paths** - How to take the course and what you'll create
|
||||
3. **Support** - Testimonials, FAQ, and community
|
||||
|
||||
**Total reading time:** ~15 minutes
|
||||
|
||||
---
|
||||
|
||||
## Quick Navigation
|
||||
|
||||
### [01. Prerequisites →](01-prerequisites.md)
|
||||
What skills you need, tools required, and time investment
|
||||
- **Time:** 5 minutes
|
||||
- **Key question:** Am I ready to start?
|
||||
|
||||
### [02. Learning Paths →](02-learning-paths.md)
|
||||
Choose your journey and see what you'll create
|
||||
- **Time:** 5 minutes
|
||||
- **Key question:** Which path is right for me?
|
||||
|
||||
### [03. Support →](03-support.md)
|
||||
Testimonials, FAQ, and getting help
|
||||
- **Time:** 5 minutes
|
||||
- **Key question:** What if I get stuck?
|
||||
|
||||
---
|
||||
|
||||
## Ready to Start?
|
||||
|
||||
Once you've reviewed these sections, you're ready to begin:
|
||||
|
||||
**[Start Module 01: Why WDS Matters →](../module-01-why-wds-matters/module-01-overview.md)**
|
||||
|
||||
Or review the full course structure:
|
||||
|
||||
**[← Back to Course Overview](../00-course-overview.md)**
|
||||
|
||||
---
|
||||
|
||||
## Your Transformation Starts Now
|
||||
|
||||
Remember:
|
||||
- **The design becomes the specification**
|
||||
- **The specification becomes the product**
|
||||
- **The code is just the printout**
|
||||
|
||||
Ten hours of learning. A lifetime of being indispensable.
|
||||
|
|
@ -1,87 +0,0 @@
|
|||
# Getting Started: Prerequisites
|
||||
|
||||
**What you need to start learning WDS**
|
||||
|
||||
---
|
||||
|
||||
## What Skills You Need
|
||||
|
||||
**Required (you probably already have these):**
|
||||
- Basic design thinking and UX principles
|
||||
- Ability to sketch interfaces (hand-drawn or digital)
|
||||
- Understanding of user needs and business goals
|
||||
- Willingness to think deeply about WHY
|
||||
|
||||
**NOT required:**
|
||||
- ❌ Coding skills
|
||||
- ❌ Advanced technical knowledge
|
||||
- ❌ Experience with AI tools
|
||||
- ❌ Formal design education
|
||||
|
||||
**The truth:** If you can design interfaces and explain your thinking, you have everything you need to start.
|
||||
|
||||
---
|
||||
|
||||
## Time Investment
|
||||
|
||||
### How Long Does It Take?
|
||||
|
||||
**Total course time:** ~10 hours
|
||||
- Spread over days or weeks at your own pace
|
||||
- Each module: 30-40 minutes
|
||||
- Practice exercises: 1-2 hours per module
|
||||
|
||||
**Breakdown:**
|
||||
- **Week 1-2:** Foundation modules (Why WDS, Project Brief)
|
||||
- **Week 3-4:** Core workflow (Trigger Mapping, Scenarios)
|
||||
- **Week 5-6:** Advanced topics (Design Systems, Handoff)
|
||||
- **Ongoing:** Practice with your own projects
|
||||
|
||||
**Real-world application:**
|
||||
- First project with WDS: 2-3x slower than your usual process (learning curve)
|
||||
- Second project: Same speed as traditional approach
|
||||
- Third project onwards: 3-5x faster with better quality
|
||||
|
||||
---
|
||||
|
||||
## Tools You'll Need
|
||||
|
||||
### Essential Tools
|
||||
|
||||
**For sketching:**
|
||||
- Paper and pen (seriously, this works best)
|
||||
- OR digital sketching tool (Excalidraw, Figma, iPad + Pencil)
|
||||
|
||||
**For AI assistance:**
|
||||
- Access to Claude, ChatGPT, or similar AI assistant
|
||||
- Free tier is sufficient to start
|
||||
|
||||
**For documentation:**
|
||||
- Text editor (VS Code recommended, but any will work)
|
||||
- Markdown support (built into most modern editors)
|
||||
|
||||
**For collaboration:**
|
||||
- Git/GitHub (optional but recommended)
|
||||
- Shared folder system (Google Drive, Dropbox, etc.)
|
||||
|
||||
**Total cost to get started:** $0-20/month
|
||||
- Free tier AI tools work fine
|
||||
- Paid AI subscriptions ($20/month) provide better experience but aren't required
|
||||
|
||||
---
|
||||
|
||||
## Are You Ready?
|
||||
|
||||
You have everything you need if you can answer YES to these:
|
||||
- ✅ I can design interfaces and explain my thinking
|
||||
- ✅ I have 10 hours to invest over the next few weeks
|
||||
- ✅ I have access to basic tools (paper/pen + AI assistant)
|
||||
- ✅ I'm willing to think deeply about WHY
|
||||
|
||||
**Next:** Choose your learning path
|
||||
|
||||
**[Continue to Learning Paths →](02-learning-paths.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Overview](overview.md) | [Next: Learning Paths →](02-learning-paths.md)
|
||||
|
|
@ -1,90 +0,0 @@
|
|||
# Getting Started: Learning Paths
|
||||
|
||||
**Choose your journey through WDS**
|
||||
|
||||
---
|
||||
|
||||
## Choose Your Journey
|
||||
|
||||
### Option 1: Full Immersion (Recommended)
|
||||
- Complete all modules in order
|
||||
- Practice exercises for each module
|
||||
- Apply to a real project as you learn
|
||||
- **Time:** 6-8 weeks, 10-15 hours total
|
||||
- **Best for:** Designers who want to master the methodology
|
||||
|
||||
### Option 2: Quick Start
|
||||
- Focus on core modules (Module 01, 02, 04, 06)
|
||||
- Skip advanced topics initially
|
||||
- Get started fast, learn more later
|
||||
- **Time:** 2-3 weeks, 3-4 hours total
|
||||
- **Best for:** Designers who need results quickly
|
||||
|
||||
### Option 3: Self-Paced
|
||||
- Learn one module per week
|
||||
- Deep practice between modules
|
||||
- Build multiple projects as you learn
|
||||
- **Time:** 16+ weeks, 20+ hours total
|
||||
- **Best for:** Designers who want deep mastery
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
### Your First WDS Project
|
||||
|
||||
By the end of this course, you'll have created:
|
||||
|
||||
**1. Complete Project Brief**
|
||||
- Vision and goals clearly defined
|
||||
- Stakeholders and constraints documented
|
||||
- Foundation for all design decisions
|
||||
|
||||
**2. Trigger Map**
|
||||
- Target groups identified and prioritized
|
||||
- User triggers and outcomes mapped
|
||||
- Features prioritized by impact
|
||||
|
||||
**3. Scenario Specifications**
|
||||
- At least one complete user scenario
|
||||
- Why-based specifications for key components
|
||||
- AI-ready documentation
|
||||
|
||||
**4. Design System Foundation**
|
||||
- Design tokens extracted from your specs
|
||||
- Component patterns identified
|
||||
- Reusable architecture defined
|
||||
|
||||
**Estimated value:** What used to take 6-8 weeks now takes 1-2 weeks
|
||||
|
||||
---
|
||||
|
||||
## Course Format
|
||||
|
||||
Each module contains:
|
||||
- **Inspiration** - Why this matters and what you'll gain
|
||||
- **Teaching** - How to do it with confidence and AI support
|
||||
- **Practice** - Apply it to your own project
|
||||
- **Tutorial** - Quick step-by-step guide (for practical modules)
|
||||
|
||||
**Learning formats:**
|
||||
- Read as documentation
|
||||
- Generate videos/podcasts with NotebookLM
|
||||
- Use in workshops and team training
|
||||
- Apply to real projects as you learn
|
||||
|
||||
---
|
||||
|
||||
## Ready to Begin?
|
||||
|
||||
Choose your path and start learning:
|
||||
|
||||
**[Start Module 01: Why WDS Matters →](../module-01-why-wds-matters/module-01-overview.md)**
|
||||
|
||||
Or check support resources first:
|
||||
|
||||
**[Continue to Support →](03-support.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Prerequisites](01-prerequisites.md) | [Next: Support →](03-support.md)
|
||||
|
|
@ -1,121 +0,0 @@
|
|||
# Getting Started: Support
|
||||
|
||||
**Help, community, and what other designers say**
|
||||
|
||||
---
|
||||
|
||||
## What Other Designers Say
|
||||
|
||||
### Testimonials
|
||||
|
||||
> "I was skeptical at first - another design methodology? But WDS changed how I think about my role. I'm no longer just making things pretty. I'm the strategic thinker who makes products come alive."
|
||||
>
|
||||
> **— Sarah K., Product Designer**
|
||||
|
||||
> "The 5x speed increase is real. But what surprised me most was how much clearer my thinking became. Writing why-based specifications forced me to understand the 'why' at a deeper level."
|
||||
>
|
||||
> **— Marcus L., UX Lead**
|
||||
|
||||
> "I thought AI would replace me. WDS showed me how to make AI amplify my thinking instead. Now I'm the most valuable designer on my team."
|
||||
>
|
||||
> **— Priya S., Senior Designer**
|
||||
|
||||
> "The paradigm shift hit me in Module 4: my design IS the product. The code is just the printout. That completely changed how I approach every project."
|
||||
>
|
||||
> **— James T., Design Director**
|
||||
|
||||
*Note: More testimonials will be added as designers complete the course.*
|
||||
|
||||
---
|
||||
|
||||
## Common Questions
|
||||
|
||||
### FAQ
|
||||
|
||||
**Q: Do I need to know how to code?**
|
||||
A: No. WDS is about design thinking and specifications. AI handles the implementation.
|
||||
|
||||
**Q: What if I don't have a project to practice with?**
|
||||
A: The course includes practice exercises. You can also use a hypothetical project or redesign an existing app.
|
||||
|
||||
**Q: Can I use this with my current design process?**
|
||||
A: Yes! WDS complements existing processes. Many designers integrate it gradually.
|
||||
|
||||
**Q: Is this only for digital products?**
|
||||
A: WDS is optimized for digital products, but the principles apply to any design work.
|
||||
|
||||
**Q: What if I get stuck?**
|
||||
A: Each module includes clear examples and guidance. The AI assistant can help clarify concepts as you learn.
|
||||
|
||||
**Q: Do I need to complete all modules?**
|
||||
A: No. The Quick Start path (4 modules) gives you enough to start applying WDS immediately.
|
||||
|
||||
**Q: Can I teach this to my team?**
|
||||
A: Yes! WDS is open-source and free. Share it with your entire team.
|
||||
|
||||
**Q: How is this different from traditional design documentation?**
|
||||
A: Traditional docs describe WHAT. WDS captures WHY + WHAT + WHAT NOT TO DO. This makes it AI-ready and preserves your design intent.
|
||||
|
||||
---
|
||||
|
||||
## Getting Help
|
||||
|
||||
### During the Course
|
||||
|
||||
**While learning:**
|
||||
- Each module includes detailed examples
|
||||
- AI assistants can clarify concepts in real-time
|
||||
- Practice exercises with clear success criteria
|
||||
|
||||
**After completion:**
|
||||
- GitHub Discussions for questions and sharing
|
||||
- Community showcase of WDS projects
|
||||
- Regular updates and new case studies
|
||||
|
||||
**Contributing:**
|
||||
- WDS is open-source and welcomes contributions
|
||||
- Share your case studies and learnings
|
||||
- Help improve the course for future designers
|
||||
|
||||
---
|
||||
|
||||
## Support & Community
|
||||
|
||||
### Resources
|
||||
|
||||
**Documentation:**
|
||||
- Full course materials in markdown
|
||||
- NotebookLM integration for audio/video learning
|
||||
- Workshop materials for team training
|
||||
|
||||
**Community:**
|
||||
- GitHub Discussions for Q&A
|
||||
- Project showcase and feedback
|
||||
- Regular updates and improvements
|
||||
|
||||
**Open Source:**
|
||||
- Free to use and share
|
||||
- Contributions welcome
|
||||
- Help shape the future of WDS
|
||||
|
||||
---
|
||||
|
||||
## Ready to Start?
|
||||
|
||||
You have everything you need:
|
||||
- ✅ The skills (design thinking)
|
||||
- ✅ The tools (paper + AI)
|
||||
- ✅ The time (10 hours)
|
||||
- ✅ The motivation (staying indispensable)
|
||||
|
||||
**Next step:** Start learning!
|
||||
|
||||
**[Start Module 01: Why WDS Matters →](../module-01-why-wds-matters/module-01-overview.md)**
|
||||
|
||||
Or review the full course structure:
|
||||
|
||||
**[← Back to Course Overview](../00-course-overview.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Learning Paths](02-learning-paths.md) | [Start Learning →](../module-01-why-wds-matters/module-01-overview.md)
|
||||
|
|
@ -1,107 +0,0 @@
|
|||
# Module 01: Why WDS Matters
|
||||
## Lesson 1: The Problem We're Solving
|
||||
|
||||
**Understanding the factory mindset and the AI era**
|
||||
|
||||
---
|
||||
|
||||
## Why Learning WDS Matters
|
||||
|
||||
Imagine being the one person on your team that everyone depends on. Not because you work the longest hours or create the prettiest mockups, but because you do something nobody else can do - not even AI. You're about to learn a design methodology that makes you that person.
|
||||
|
||||
This isn't about working faster or making shinier designs. It's about becoming what bestselling author Seth Godin calls a **Linchpin** - someone who is genuinely irreplaceable. Think about the difference between a factory worker who follows instructions and the person who figures out what needs to be done in the first place. The first person can be replaced by a machine. The second person? They're the one who makes things happen.
|
||||
|
||||
In the AI era, designers who master WDS become linchpin designers. They connect ideas that seem unrelated, make judgment calls when there's no clear answer, and create experiences that feel right in ways that can't be reduced to a formula.
|
||||
|
||||
**What makes an irreplaceable designer:**
|
||||
- Connects disparate ideas across business, psychology, and technology
|
||||
- Makes things happen when there's no instruction manual
|
||||
- Creates value that can't be commoditized or automated
|
||||
- Is essential, not interchangeable
|
||||
|
||||
---
|
||||
|
||||
## What You'll Gain
|
||||
|
||||
Here's the transformation you're about to experience. Right now, you might feel uncertain about your future as a designer in a world where AI can generate interfaces in seconds. You might wonder if your skills will still matter in five years. That uncertainty is about to disappear.
|
||||
|
||||
By the end of this module, you'll have a completely different relationship with AI. Instead of seeing it as a threat, you'll understand it as an amplifier of your unique human abilities. You'll know exactly what makes you irreplaceable, and you'll have a methodology that lets you work with AI as a partner rather than a competitor.
|
||||
|
||||
Most importantly, you'll understand the five dimensions of thinking that only humans can navigate simultaneously - and you'll know how to use them to create designs that AI could never conceive on its own.
|
||||
|
||||
**Your transformation:**
|
||||
- ✅ Understand why designers are irreplaceable in the AI era
|
||||
- ✅ Master the 5 dimensions of designer thinking
|
||||
- ✅ Recognize what AI can and cannot do
|
||||
- ✅ Embrace specifications as the new code
|
||||
- ✅ Amplify your value through AI partnership
|
||||
|
||||
---
|
||||
|
||||
## The Problem We're Solving
|
||||
|
||||
### The Factory Mindset vs The Linchpin Mindset
|
||||
|
||||
In his groundbreaking book [Linchpin: Are You Indispensable?](https://www.amazon.com/Linchpin-Are-You-Indispensable-ebook/dp/B00354Y9ZU), bestselling author and marketing visionary Seth Godin reveals something uncomfortable: the industrial revolution didn't just change how we make things - it changed how we think about work itself. For over a century, we've been trained to be cogs in a machine. Show up, follow instructions, do your part, go home. Replaceable. Interchangeable. Safe.
|
||||
|
||||
Traditional design work follows this exact pattern. You get a brief (instructions), create some mockups (your part), hand them off to developers (next cog in the machine), and hope they understand what you meant. When they don't, you go through endless revisions until something vaguely resembling your vision ships. You're doing factory work - just with Figma instead of an assembly line.
|
||||
|
||||
Here's the uncomfortable truth: AI is really, really good at factory work. If your job is to follow instructions and create predictable outputs, you're in trouble. But if you can become a linchpin - someone who connects ideas, makes judgment calls, and creates meaning - you become more valuable than ever.
|
||||
|
||||
**The factory mindset in design:**
|
||||
- Creates mockups by following briefs (instructions)
|
||||
- Hands off to developers (replaceable step)
|
||||
- Hopes they understand (no real connection)
|
||||
- Endless revisions (cog in the machine)
|
||||
- Can be replaced by AI
|
||||
|
||||
---
|
||||
|
||||
### The AI Threat (For Cogs)
|
||||
|
||||
Let's be honest about what's happening. AI can now generate mockups in seconds. It can follow design systems with perfect consistency. It can iterate through hundreds of variations without breaking a sweat. If your value as a designer comes from creating predictable outputs based on clear instructions, you're competing with something that's faster, more consistent, and infinitely scalable.
|
||||
|
||||
But here's the thing: AI cannot be a linchpin. It can't walk into a messy situation and figure out what actually needs to happen. It can't sense when a client is asking for the wrong thing. It can't connect a business goal to a psychological insight to a technical constraint and come up with something nobody expected but everyone loves.
|
||||
|
||||
**What AI does better than cogs:**
|
||||
- Generates mockups instantly (no creative block)
|
||||
- Follows design systems perfectly (zero deviation)
|
||||
- Iterates through hundreds of variations (no fatigue)
|
||||
- Works 24/7 at the same quality level (infinitely scalable)
|
||||
- Executes instructions flawlessly (no interpretation errors)
|
||||
|
||||
---
|
||||
|
||||
### The AI Opportunity (For Linchpin Designers)
|
||||
|
||||
Here's where it gets exciting - and where most designers miss the point entirely.
|
||||
|
||||
The internet is drowning in AI slop. Generic interfaces that look fine but feel dead. Products that check all the boxes but have no soul. Experiences that function correctly but leave users cold. This is what happens when you let AI do the thinking - you get competent mediocrity at scale.
|
||||
|
||||
But here's the brutal truth about today's market: **bad products used to fail after launch. Now bad products never even get to start.** Users have infinite options. They can smell soulless design from a mile away. They won't give you a second chance. If your product doesn't immediately feel different, feel right, feel like someone actually cared - it's dead on arrival.
|
||||
|
||||
This is your opportunity. While everyone else is racing to generate more generic content faster, you can create products that come alive. Products with soul. Products that people actually want to use because they feel the human thinking behind them.
|
||||
|
||||
Linchpin designers do what AI fundamentally cannot do: they give products a soul. They navigate five dimensions of thinking simultaneously - business goals, user psychology, product strategy, technical constraints, and design execution - and find the human truth at the intersection. They make judgment calls that create emotional resonance. They build trust through thoughtful decisions. They care about the outcome in a way that shows in every interaction.
|
||||
|
||||
The bottleneck in product development used to be coding. AI demolished that. Now the bottleneck is **products worth building** - figuring out what to create that won't be just more noise in an ocean of AI-generated mediocrity.
|
||||
|
||||
**What makes products come alive (what only designers can do):**
|
||||
- Navigate 5 dimensions to find the human truth at the intersection
|
||||
- Make judgment calls that create emotional resonance, not just functionality
|
||||
- Build trust through decisions that show someone cared
|
||||
- Connect business goals to user psychology in ways that feel right
|
||||
- Create experiences that stand out from generic AI-generated mediocrity
|
||||
- Give products a soul that users can feel
|
||||
|
||||
---
|
||||
|
||||
## Ready to Continue?
|
||||
|
||||
Now that you understand the problem, let's explore the solution.
|
||||
|
||||
**[Continue to Lesson 2: The Solution →](lesson-02-the-solution.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Module Overview](module-01-overview.md) | [Next: Lesson 2 →](lesson-02-the-solution.md)
|
||||
|
|
@ -1,71 +0,0 @@
|
|||
# Module 01: Why WDS Matters
|
||||
## Lesson 2: Becoming a Linchpin Designer
|
||||
|
||||
**The solution: WDS methodology**
|
||||
|
||||
---
|
||||
|
||||
## Becoming a Linchpin Designer
|
||||
|
||||
Seth Godin defines a linchpin as "an individual who can walk into chaos and create order, someone who can invent, connect, create, and make things happen." That's exactly what product design is at its core - walking into the chaos of competing business goals, unclear user needs, technical constraints, and market pressures, and somehow creating order. Creating something that works.
|
||||
|
||||
WDS teaches you to be this person systematically. Not through vague advice about "thinking outside the box," but through a concrete methodology that helps you navigate complexity and create clarity. You'll learn to ask the right questions, connect the right dots, and make the right calls - even when there's no obvious right answer.
|
||||
|
||||
This is what makes you indispensable. Not your Figma skills. Not your aesthetic taste. Your ability to walk into chaos and create order.
|
||||
|
||||
**The irreplaceable designer:**
|
||||
- Transforms complexity into clarity
|
||||
- Invents solutions nobody expected
|
||||
- Bridges business, psychology, and technology
|
||||
- Delivers results when there's no roadmap
|
||||
|
||||
---
|
||||
|
||||
## The Designer's Gift: User-Centric Creativity
|
||||
|
||||
Here's Godin's most important insight: linchpins provide something he calls **emotional labor** - the work of genuinely caring about the outcome, connecting with people's real needs, and creating meaning that matters. For designers, this translates into **user-centric creativity** - the uniquely human ability to understand, empathize, and create with purpose.
|
||||
|
||||
User-centric creativity means doing the hard work of understanding WHY users feel frustrated instead of just making things look better. It means connecting business goals to human needs in ways that serve both. It means creating experiences that feel right, not just function correctly. It means making judgment calls that serve people, even when it's harder than following a formula.
|
||||
|
||||
AI can generate variations endlessly and make things look polished on the surface. But here's what it cannot do: it cannot tell when something is fundamentally wrong. It will confidently create beautiful interfaces that make no logical sense. It will add features that contradict the business goal. It will optimize for metrics that destroy user trust. It will make ridiculous mistakes with absolute confidence - and without a skilled designer as gatekeeper, those mistakes ship.
|
||||
|
||||
This is where user-centric creativity becomes critical. You're not just creating - you're evaluating, connecting, and protecting. You understand what it feels like to be a parent struggling to get their kids to help with the dog. You can sense when a business goal conflicts with user needs and find a creative solution that serves both. You're the advocate for the user's presence in every decision. You're the gatekeeper who ensures the impactful meeting between business and user actually happens through the product.
|
||||
|
||||
**The designer as gatekeeper:**
|
||||
- Catches AI's confident but ridiculous mistakes before they ship
|
||||
- Evaluates if solutions actually make logical sense
|
||||
- Ensures business goals don't contradict user needs
|
||||
- Protects users from metric-driven decisions that destroy trust
|
||||
- Advocates for the user's presence in every decision
|
||||
- Creates the impactful meeting between business and user
|
||||
|
||||
---
|
||||
|
||||
## From Cog to Linchpin Designer
|
||||
|
||||
Here's the transformation that WDS enables. In the old model, you were a cog designer - creating mockups based on briefs, handing them off to developers who interpreted them their own way, hoping for the best. Your leverage was limited because your thinking stopped at the handoff. You were replaceable because anyone with similar skills could do roughly the same thing.
|
||||
|
||||
With WDS and AI, everything changes - and here's the key insight: **your design contribution completely replaces prompting.** Think about it. You make design decisions. AI helps you clarify them in text. The result is an absolute goldmine for everyone on the team - providing clarity that works like clockwork, replacing hours of pointless back-and-forth prompting.
|
||||
|
||||
You provide the user-centric creativity - the deep understanding of WHY things need to work a certain way. You create why-based specifications that capture not just what to build, but why you're building it that way and what mistakes to avoid. Then AI implements it - but you're there as gatekeeper, catching the mistakes, evaluating the logic, ensuring it actually serves both business and user.
|
||||
|
||||
Here's the paradigm shift: **The design becomes the specification. The specification becomes the product. The code is just the printout - the projection to the end user.** Your thinking no longer stops at handoff. It scales infinitely. Every specification you write becomes a permanent record of your design reasoning that provides clarity for developers, stakeholders, and AI alike. No more endless prompting sessions. No more "can you make it more modern?" Your design thinking, captured in specifications, is the source of truth.
|
||||
|
||||
You remain in the loop - the skilled, experienced designer who evaluates AI's work, catches its confident mistakes, and ensures what ships actually makes sense. You become the key designer player - the person who makes things happen. AI becomes your tool - powerful but requiring your expertise to guide it.
|
||||
|
||||
**The designer's transformation:**
|
||||
- **Before:** Creates mockups → Hands off → Hopes it works → Limited leverage
|
||||
- **After:** Design thinking → Specification → Gatekeeper → Clarity for all → Scales infinitely
|
||||
- **Result:** From replaceable cog to indispensable gatekeeper - your design IS the product
|
||||
|
||||
---
|
||||
|
||||
## Ready to Continue?
|
||||
|
||||
Now that you understand the solution, let's explore what you'll learn and how to apply it.
|
||||
|
||||
**[Continue to Lesson 3: The Path Forward →](lesson-03-the-path-forward.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Lesson 1: The Problem](lesson-01-the-problem.md) | [Next: The Path Forward →](lesson-03-the-path-forward.md)
|
||||
|
|
@ -1,89 +0,0 @@
|
|||
# Module 01: Why WDS Matters
|
||||
## Lesson 3: Your Transformation
|
||||
|
||||
**From replaceable to indispensable**
|
||||
|
||||
---
|
||||
|
||||
## The Designer's Art: 5-Dimensional Thinking
|
||||
|
||||
Godin says linchpins "connect disparate ideas." For product designers, this means something very specific: navigating five different dimensions of thinking at the same time. Most people can handle one or two dimensions. Irreplaceable designers navigate all five simultaneously, seeing connections that others miss.
|
||||
|
||||
Think about designing that Dog Week calendar. You need to understand why the business exists (solving family conflict), what success looks like (kids actually walk the dog without nagging), what features serve that goal (week view, not daily), who the users are and what triggers their needs (Swedish families thinking in "Vecka"), and what's technically feasible (mobile app with family sharing). Each dimension informs the others. Miss one, and your design falls apart.
|
||||
|
||||
This is what makes you indispensable as a designer. AI can help you think through each dimension individually. It can generate ideas, analyze data, suggest solutions. But it cannot navigate all five dimensions simultaneously while providing the emotional labor of genuinely caring about the outcome. That's uniquely human. That's what makes designers irreplaceable.
|
||||
|
||||
**The 5 dimensions of design thinking:**
|
||||
|
||||
1. **Business Existence (WHY)** - Understanding purpose and value creation
|
||||
2. **Business Goals (SUCCESS)** - Connecting to metrics and impact
|
||||
3. **Product Strategy (HOW)** - Making hard choices about features
|
||||
4. **Target Groups (WHO)** - Empathy and understanding needs
|
||||
5. **Technical Viability (FEASIBLE)** - Bridging design and implementation
|
||||
|
||||
**The irreplaceable designer's advantage:** Navigating all 5 simultaneously with emotional labor
|
||||
|
||||
---
|
||||
|
||||
## The Transformation
|
||||
|
||||
### From Replaceable to Indispensable
|
||||
|
||||
Godin has a warning that should make every designer pay attention: "If you're not indispensable, you're replaceable. And if you're replaceable, you're probably going to be replaced." In the AI era, this isn't a threat - it's just reality. The question is: which side of that line are you on?
|
||||
|
||||
Right now, you might feel threatened by AI design tools. You might be uncertain about your value as a designer. You might be frustrated by the gap between your vision and what gets implemented. You might feel limited by development bottlenecks. If you're doing factory work - following briefs, creating mockups, hoping for the best - you're on the wrong side of that line.
|
||||
|
||||
This course moves you to the other side. You'll become confident in your indispensable role because you'll understand exactly what makes you irreplaceable. You'll be clear on your unique gift - the user-centric creativity that AI cannot provide. You'll be empowered by AI partnership instead of threatened by it, because AI will amplify your design thinking instead of replacing it. You'll be unstoppable in implementation because your specifications will capture your creative intent perfectly.
|
||||
|
||||
You'll become the designer who makes things happen. The one they can't do without. The linchpin designer.
|
||||
|
||||
**Your transformation as a designer:**
|
||||
- **Before:** Threatened, uncertain, frustrated, limited, replaceable
|
||||
- **After:** Confident, clear, empowered, unstoppable, indispensable
|
||||
- **Result:** The designer who makes things happen
|
||||
|
||||
---
|
||||
|
||||
## Learn from Real-World Projects: Case Studies
|
||||
|
||||
### Case Study: Dog Week
|
||||
|
||||
Let's make this concrete with a real project. Dog Week is an app that helps Swedish families manage their dog's care through a shared family calendar. The problem it solves is universal - parents are tired of nagging kids about walking the dog, kids feel like they're being punished, and everyone ends up frustrated.
|
||||
|
||||
An irreplaceable designer approaches this completely differently than a cog designer. Instead of jumping straight to mockups, they apply user-centric creativity first. They understand Swedish family dynamics - how "Vecka 40" (week 40) is how people think about time. They connect the business goal (family accountability) to human needs (fun, not punishment). They make judgment calls like using a week view instead of daily, because that matches how families actually think. Every decision is grounded in design empathy and understanding WHY.
|
||||
|
||||
Compare the outcomes. The traditional approach - creating mockups, handing off to developers, going through revisions - took 26 weeks and resulted in something mediocre because the intent got lost in translation. The WDS approach - applying user-centric creativity upfront, capturing WHY in specifications, letting AI implement - took 5 weeks and resulted in something exceptional because the design intent was preserved.
|
||||
|
||||
That's a 5x speed increase with better quality. But more importantly, the key designer's creative thinking was preserved and amplified instead of diluted and lost.
|
||||
|
||||
**The comparison:**
|
||||
- **Traditional (cog designer):** 26 weeks → Mediocre result → Intent lost
|
||||
- **WDS (linchpin designer):** 5 weeks → Exceptional result → Intent preserved
|
||||
- **Key difference:** Designer's user-centric creativity captured and amplified
|
||||
|
||||
---
|
||||
|
||||
*More case studies will be added here as they become available.*
|
||||
|
||||
---
|
||||
|
||||
## Module Complete!
|
||||
|
||||
You've completed Module 01: Why WDS Matters. You now understand:
|
||||
- ✅ The problem: Factory mindset vs linchpin mindset
|
||||
- ✅ The solution: Becoming a linchpin designer with WDS
|
||||
- ✅ The path forward: 5-dimensional thinking and transformation
|
||||
|
||||
**Next steps:**
|
||||
- Review the practicalities if you haven't already
|
||||
- Start Module 02: Project Brief
|
||||
- Apply these concepts to your own work
|
||||
|
||||
**[Continue to Module 02: Project Brief →](../module-02-project-brief/lesson-01-inspiration.md)**
|
||||
|
||||
Or review the practicalities:
|
||||
**[Read Course Practicalities →](../00-practicalities.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Lesson 2](lesson-02-the-solution.md) | [Module Overview](module-01-overview.md) | [Next Module →](../module-02-project-brief/lesson-01-inspiration.md)
|
||||
|
|
@ -1,331 +0,0 @@
|
|||
# NotebookLM Prompt: Module 01 - Why WDS Matters
|
||||
|
||||
**Use this prompt to generate audio/video content for Module 01: Why WDS Matters**
|
||||
|
||||
---
|
||||
|
||||
## Instructions for NotebookLM
|
||||
|
||||
**This is a single, self-contained prompt file.**
|
||||
|
||||
Simply upload THIS FILE to NotebookLM and use the prompt below to generate engaging audio/video content. No other files needed.
|
||||
|
||||
---
|
||||
|
||||
## Prompt
|
||||
|
||||
Create an engaging 30-minute podcast conversation between two hosts discussing Module 01 of the Whiteport Design Studio (WDS) course: Why WDS Matters.
|
||||
|
||||
**IMPORTANT: WDS stands for Whiteport Design Studio - always refer to it by its full name "Whiteport Design Studio" or "WDS" throughout the conversation.**
|
||||
|
||||
**Host 1 (The Skeptic):** A designer who's uncertain about their future in the AI era. Feels threatened by AI tools and wonders if design skills still matter. Asks challenging questions about value and relevance.
|
||||
|
||||
**Host 2 (The Advocate):** A designer who has embraced the linchpin mindset and understands how WDS makes designers indispensable. Enthusiastic about the transformation but realistic about the work required.
|
||||
|
||||
**Conversation structure:**
|
||||
|
||||
### 1. Opening (3 min) - The existential question
|
||||
|
||||
Start with The Skeptic expressing the raw fear and shame many designers feel: "I'm scared. And honestly? I'm ashamed to admit it. AI can generate mockups in seconds. Everyone around me seems to be mastering AI tools while I'm struggling. Fewer and fewer requests come my way. I'm starting to think... maybe it's me. Maybe I'm the problem. Am I going to be replaced? Should I even stay in design?"
|
||||
|
||||
The Advocate responds with deep empathy: "First - there's no shame in feeling behind in this crazy world. It's so easy to lose the will to fight when the battle feels so uphill. You're not alone in this. And you're not the problem."
|
||||
|
||||
Then introduces the core insight from Seth Godin's 2010 bestselling book "Linchpin: Are You Indispensable?" - "There are two types of workers: factory workers who follow instructions and can be replaced, and linchpins who walk into chaos and create order. AI is really good at factory work. But it cannot be a linchpin."
|
||||
|
||||
The Advocate continues: "This is where Whiteport Design Studio is intended to change the tide. We're banding together to carve out a space for linchpin designers that makes sense - that serves clients and developers in an honest and sustainable way. You don't have to figure this out alone."
|
||||
|
||||
Introduce the module's promise: "In the next 30 minutes, you'll understand exactly why you're irreplaceable as a designer - and how to become the person your team cannot do without. And here's the most important part: it's hard to be a beginner, but take the risk to look like a fool. Don't be afraid to reach out. The BMad community is here to help."
|
||||
|
||||
---
|
||||
|
||||
### 2. The Problem - Factory Work vs Linchpin Work (8 min)
|
||||
|
||||
The Skeptic asks: "Okay, but what does that actually mean? What's the difference between factory work and linchpin work in design?"
|
||||
|
||||
**Seth Godin's Insight: Emotional Labor**
|
||||
|
||||
The Advocate starts with Godin's framework: "In his 2010 book 'Linchpin: Are You Indispensable?', bestselling author and marketing visionary Seth Godin talks about two types of work. There's factory work - following instructions, creating predictable outputs, being replaceable. And there's linchpin work - which requires what Godin calls 'emotional labor.' This is the work of genuinely caring about the outcome, connecting with people's real needs, and creating meaning that matters."
|
||||
|
||||
The Skeptic: "Emotional labor? That sounds... soft. What does that have to do with design?"
|
||||
|
||||
**The Designer's Reality:**
|
||||
|
||||
The Advocate: "Everything. For designers, emotional labor translates into something very specific: user-centric creativity. It's the hard work of understanding WHY users feel frustrated instead of just making things look better. It's connecting business goals to human needs in ways that serve both. It's creating experiences that feel right, not just function correctly. It's making judgment calls that serve people, even when it's harder than following a formula."
|
||||
|
||||
**The Factory Mindset in Design:**
|
||||
|
||||
The Advocate continues: "For over a century, we've been trained to be cogs in a machine. In design, this looks like: get a brief, create mockups, hand off to developers, hope they understand. You're following instructions, creating predictable outputs. That's factory work - just with Figma instead of an assembly line. No emotional labor. No genuine caring about the outcome."
|
||||
|
||||
The Skeptic: "But isn't that just... how design works?"
|
||||
|
||||
The Advocate: "That's exactly the problem. And here's the uncomfortable truth - AI is really, really good at factory work. But AI cannot provide emotional labor. It cannot genuinely care about the outcome."
|
||||
|
||||
**What AI Does Better Than Factory Designers:**
|
||||
- Generates mockups instantly (no creative block)
|
||||
- Follows design systems perfectly (zero deviation)
|
||||
- Iterates through hundreds of variations (no fatigue)
|
||||
- Works 24/7 at the same quality level (infinitely scalable)
|
||||
- Executes instructions flawlessly (no interpretation errors)
|
||||
|
||||
The Skeptic: "So I should be scared."
|
||||
|
||||
**The AI Slop Problem:**
|
||||
|
||||
The Advocate: "Actually, no. Here's what's happening - the internet is drowning in AI slop. Generic interfaces that look fine but feel dead. Products that check all the boxes but have no soul. This is what happens when you let AI do the thinking."
|
||||
|
||||
The brutal market reality: "Bad products used to fail after launch. Now bad products never even get to start. Users have infinite options. They can smell soulless design from a mile away. If your product doesn't immediately feel different, feel right, feel like someone actually cared - it's dead on arrival."
|
||||
|
||||
The Skeptic: "So there's an opportunity here?"
|
||||
|
||||
The Advocate: "Exactly. While everyone else is racing to generate more generic content faster, you can create products that come alive. Products with soul. Products that people actually want to use because they feel the human thinking behind them."
|
||||
|
||||
---
|
||||
|
||||
### 3. The Solution - Becoming a Linchpin Designer (10 min)
|
||||
|
||||
The Skeptic asks: "Okay, I'm listening. But what makes a designer a linchpin instead of a cog? What's the actual difference?"
|
||||
|
||||
**What Makes a Linchpin Designer:**
|
||||
|
||||
The Advocate explains Seth Godin's definition: "A linchpin is someone who can walk into chaos and create order. Someone who invents, connects, creates, and makes things happen. That's exactly what product design is at its core."
|
||||
|
||||
The irreplaceable designer:
|
||||
- Transforms complexity into clarity
|
||||
- Invents solutions nobody expected
|
||||
- Bridges business, psychology, and technology
|
||||
- Delivers results when there's no roadmap
|
||||
|
||||
**The Designer's Gift: User-Centric Creativity:**
|
||||
|
||||
The Advocate gets passionate: "Here's Godin's most important insight - linchpins provide what he calls 'emotional labor.' For designers, this translates into user-centric creativity. The uniquely human ability to understand, empathize, and create with purpose."
|
||||
|
||||
What this actually means:
|
||||
- Understanding WHY users feel frustrated (not just making things look better)
|
||||
- Connecting business goals to human needs (in ways that serve both)
|
||||
- Creating experiences that feel right (not just function correctly)
|
||||
- Making judgment calls that serve people (even when it's harder than following a formula)
|
||||
|
||||
The Skeptic: "But can't AI do that too?"
|
||||
|
||||
**The Designer as Gatekeeper:**
|
||||
|
||||
The Advocate: "No. And this is crucial. AI will confidently create beautiful interfaces that make no logical sense. It will add features that contradict the business goal. It will optimize for metrics that destroy user trust. It will make ridiculous mistakes with absolute confidence."
|
||||
|
||||
The designer's role:
|
||||
- Catches AI's confident but ridiculous mistakes before they ship
|
||||
- Evaluates if solutions actually make logical sense
|
||||
- Ensures business goals don't contradict user needs
|
||||
- Protects users from metric-driven decisions that destroy trust
|
||||
- Creates the impactful meeting between business and user
|
||||
|
||||
**The Paradigm Shift:**
|
||||
|
||||
The Advocate brings it home: "Here's the transformation that Whiteport Design Studio enables. Your design contribution completely replaces prompting. You make design decisions. AI helps you clarify them in text. The result is an absolute goldmine for everyone - providing clarity that works like clockwork."
|
||||
|
||||
The paradigm shift: "The design becomes the specification. The specification becomes the product. The code is just the printout - the projection to the end user."
|
||||
|
||||
Your transformation:
|
||||
- **Before:** Creates mockups → Hands off → Hopes it works → Limited leverage
|
||||
- **After:** Design thinking → Specification → Gatekeeper → Clarity for all → Scales infinitely
|
||||
- **Result:** From replaceable cog to indispensable gatekeeper
|
||||
|
||||
---
|
||||
|
||||
### 4. The 5 Dimensions - What Makes You Irreplaceable (7 min)
|
||||
|
||||
The Skeptic asks: "This sounds great in theory. But what's the actual skill that makes me irreplaceable? What am I doing that AI can't?"
|
||||
|
||||
**5-Dimensional Thinking:**
|
||||
|
||||
The Advocate explains: "Godin says linchpins 'connect disparate ideas.' For product designers, this means navigating five different dimensions of thinking at the same time. Most people can handle one or two dimensions. Irreplaceable designers navigate all five simultaneously."
|
||||
|
||||
The 5 dimensions:
|
||||
1. **Business Existence (WHY)** - Understanding purpose and value creation
|
||||
2. **Business Goals (SUCCESS)** - Connecting to metrics and impact
|
||||
3. **Product Strategy (HOW)** - Making hard choices about features
|
||||
4. **Target Groups (WHO)** - Empathy and understanding needs
|
||||
5. **Technical Viability (FEASIBLE)** - Bridging design and implementation
|
||||
|
||||
**Real Example - Dog Week:**
|
||||
|
||||
The Advocate uses a concrete example: "Think about designing Dog Week - an app that helps Swedish families manage their dog's care. You need to understand why the business exists (solving family conflict), what success looks like (kids actually walk the dog without nagging), what features serve that goal (week view, not daily), who the users are (Swedish families thinking in 'Vecka'), and what's technically feasible (mobile app with family sharing)."
|
||||
|
||||
The Skeptic: "So I'm connecting all these dots simultaneously?"
|
||||
|
||||
The Advocate: "Exactly. Each dimension informs the others. Miss one, and your design falls apart. AI can help you think through each dimension individually. But it cannot navigate all five simultaneously while providing the emotional labor of genuinely caring about the outcome. That's uniquely human. That's what makes designers irreplaceable."
|
||||
|
||||
---
|
||||
|
||||
### 5. The Transformation - From Replaceable to Indispensable (5 min)
|
||||
|
||||
The Skeptic reflects: "I'm starting to see it. But how do I actually make this transformation? How do I go from feeling threatened to feeling indispensable?"
|
||||
|
||||
**Godin's Warning:**
|
||||
|
||||
The Advocate quotes Godin: "If you're not indispensable, you're replaceable. And if you're replaceable, you're probably going to be replaced. In the AI era, this isn't a threat - it's just reality."
|
||||
|
||||
The question: "Which side of that line are you on?"
|
||||
|
||||
**Your Current State:**
|
||||
|
||||
The Advocate addresses the Skeptic directly: "Right now, you might feel threatened by AI design tools. Uncertain about your value. Frustrated by the gap between your vision and what gets implemented. Limited by development bottlenecks. If you're doing factory work - following briefs, creating mockups, hoping for the best - you're on the wrong side of that line."
|
||||
|
||||
**Your Transformed State:**
|
||||
|
||||
The Advocate paints the picture: "This course moves you to the other side. You'll become confident in your indispensable role because you'll understand exactly what makes you irreplaceable. You'll be clear on your unique gift - the user-centric creativity that AI cannot provide. You'll be empowered by AI partnership instead of threatened by it. You'll be unstoppable in implementation because your specifications will capture your creative intent perfectly."
|
||||
|
||||
Your transformation:
|
||||
- **Before:** Threatened, uncertain, frustrated, limited, replaceable
|
||||
- **After:** Confident, clear, empowered, unstoppable, indispensable
|
||||
- **Result:** The designer who makes things happen
|
||||
|
||||
**The Dog Week Case Study:**
|
||||
|
||||
The Advocate shares the proof: "Dog Week took 26 weeks with traditional mockup handoff - and the result was mediocre because the intent got lost in translation. With Whiteport Design Studio - applying user-centric creativity upfront, capturing WHY in specifications, letting AI implement - it took 5 weeks and resulted in something exceptional because the design intent was preserved."
|
||||
|
||||
That's a 5x speed increase with better quality. But more importantly, the designer's creative thinking was preserved and amplified instead of diluted and lost.
|
||||
|
||||
---
|
||||
|
||||
### 6. Closing - Your Choice (3 min)
|
||||
|
||||
The Advocate brings it home: "You've just learned why you're irreplaceable as a designer. Not because of your Figma skills. Not because of your aesthetic taste. Because of your ability to walk into chaos and create order. To navigate five dimensions of thinking simultaneously. To provide user-centric creativity that gives products a soul."
|
||||
|
||||
The Skeptic, now transformed: "I see it now. I'm not competing with AI. I'm the gatekeeper. I'm the one who makes things happen. AI is my tool, not my replacement. But I have to be honest - I still feel like a beginner. I'm worried I'll look foolish."
|
||||
|
||||
The Advocate responds with warmth: "That's the most important thing you just said. It's hard to be a beginner. Everyone feels that way. But here's what I want you to understand - we're banding together as linchpin designers. This isn't about being the best or knowing everything. It's about serving clients and developers in an honest and sustainable way."
|
||||
|
||||
The Advocate continues: "Take the risk to look like a fool. Ask the 'stupid' questions. Share your struggles. Don't be afraid to reach out. The BMad community is here to help. We're all figuring this out together. That's what makes us strong."
|
||||
|
||||
The Skeptic: "So I'm not alone in this?"
|
||||
|
||||
The Advocate: "You're not alone. The question isn't whether AI will change design - it already has. The question is: are you a factory worker or a linchpin designer? Replaceable or indispensable? And will you join us in carving out this space together?"
|
||||
|
||||
The Skeptic: "I choose to be indispensable. And I choose community over isolation. What's next?"
|
||||
|
||||
The Advocate: "Module 02: Project Brief. You'll learn how to create the strategic foundation that makes everything else possible. And remember - the BMad Discord is there when you need help. The transformation continues, together."
|
||||
|
||||
---
|
||||
|
||||
## Resources to Include
|
||||
|
||||
At the end of the podcast, The Advocate should mention these resources:
|
||||
|
||||
**Key Concepts:**
|
||||
- Seth Godin's book: "Linchpin: Are You Indispensable?" (2010)
|
||||
- Bestselling author and marketing visionary Seth Godin
|
||||
- Factory mindset vs linchpin mindset
|
||||
- Emotional labor - what linchpins provide
|
||||
- User-centric creativity - emotional labor for designers
|
||||
- The paradigm shift: design becomes specification
|
||||
- 5-dimensional thinking
|
||||
|
||||
**Next Steps:**
|
||||
- Complete Module 02: Project Brief
|
||||
- Apply 5-dimensional thinking to your current project
|
||||
- Start capturing WHY in your design decisions
|
||||
- Practice being the gatekeeper between business and user needs
|
||||
|
||||
**Community:**
|
||||
- BMad Discord: Share your transformation journey
|
||||
- GitHub Discussions: Ask questions about becoming a linchpin designer
|
||||
|
||||
---
|
||||
|
||||
## Instructions for NotebookLM
|
||||
|
||||
**Tone:**
|
||||
- Deeply empathetic about the shame and fear designers feel
|
||||
- Honest and direct about the AI threat for factory workers
|
||||
- Empowering and inspiring about the opportunity for linchpin designers
|
||||
- Warm and welcoming about community support
|
||||
- Use Seth Godin's concepts and language throughout
|
||||
- Make the transformation feel urgent but achievable
|
||||
- Balance fear (replaceable) with hope (indispensable) and community (not alone)
|
||||
|
||||
**Key messages to emphasize:**
|
||||
- **No shame in feeling behind** - it's easy to lose the will to fight when the battle feels uphill
|
||||
- **You're not alone** - we're banding together as linchpin designers
|
||||
- **The existential question** - are you replaceable or indispensable?
|
||||
- **Emotional labor** - what linchpins provide (Seth Godin's concept)
|
||||
- **Factory work vs linchpin work** - AI is good at factory work, cannot be a linchpin
|
||||
- **AI slop problem** - generic interfaces with no soul are drowning the internet
|
||||
- **User-centric creativity** - emotional labor for designers, the uniquely human gift
|
||||
- **Designer as gatekeeper** - catching AI's confident mistakes, protecting users
|
||||
- **The paradigm shift** - design becomes specification, specification becomes product
|
||||
- **5-dimensional thinking** - what makes designers irreplaceable
|
||||
- **The transformation** - from threatened to confident, from replaceable to indispensable
|
||||
- **It's hard to be a beginner** - take the risk to look like a fool, don't be afraid to reach out
|
||||
- **BMad community is here to help** - you don't have to figure this out alone
|
||||
- **Real proof** - Dog Week case study (5x faster, better quality)
|
||||
|
||||
**Avoid:**
|
||||
- Being too theoretical or academic
|
||||
- Oversimplifying the AI threat
|
||||
- Making unrealistic promises about job security
|
||||
- Ignoring the real fear and shame designers feel
|
||||
- Making it sound like you have to be perfect or know everything
|
||||
|
||||
---
|
||||
|
||||
## Expected Output
|
||||
|
||||
A natural, engaging conversation that:
|
||||
- **Addresses the existential fear** designers have about AI replacement
|
||||
- **Explains the factory vs linchpin distinction** clearly and concretely
|
||||
- **Positions AI as tool, not threat** - for linchpin designers
|
||||
- **Emphasizes user-centric creativity** as the irreplaceable human gift
|
||||
- **Teaches 5-dimensional thinking** as the practical skill
|
||||
- **Inspires transformation** from replaceable to indispensable
|
||||
- **Provides real proof** through Dog Week case study
|
||||
- Takes 30 minutes to listen to
|
||||
|
||||
---
|
||||
|
||||
## Alternative: Video Script
|
||||
|
||||
If generating video instead of audio, add these visual elements:
|
||||
|
||||
**On-screen text:**
|
||||
- "Factory Worker or Linchpin Designer?"
|
||||
- "Replaceable or Indispensable - You Choose"
|
||||
- Seth Godin quote: "If you're not indispensable, you're replaceable"
|
||||
- "The 5 Dimensions of Design Thinking"
|
||||
- "User-Centric Creativity: The Human Gift"
|
||||
- "The Paradigm Shift: Design Becomes Specification"
|
||||
- "Dog Week: 26 weeks → 5 weeks (5x faster, better quality)"
|
||||
- "Next: Module 02 - Project Brief"
|
||||
|
||||
**B-roll suggestions:**
|
||||
- Designer at crossroads - two paths (factory vs linchpin)
|
||||
- AI generating generic interfaces (AI slop)
|
||||
- Products with soul vs soulless products
|
||||
- Designer as gatekeeper - evaluating AI output
|
||||
- 5 dimensions visualized as interconnected circles
|
||||
- Designer navigating complexity, creating clarity
|
||||
- Before/after: mockup handoff vs specification workflow
|
||||
- Dog Week app in use (Swedish family calendar)
|
||||
- Transformation journey: threatened → confident
|
||||
|
||||
---
|
||||
|
||||
## Usage Tips
|
||||
|
||||
1. **Upload THIS SINGLE FILE** to NotebookLM - no other files needed
|
||||
2. **Use the prompt exactly** as written for best results
|
||||
3. **Generate multiple versions** and pick the best one
|
||||
4. **Share the audio/video** with your team or community
|
||||
5. **Iterate** - if the output isn't quite right, refine the prompt
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
After generating Module 01 content:
|
||||
- Create NotebookLM prompt for Module 02: Project Brief
|
||||
- Build prompts for all remaining modules
|
||||
- Share in BMad Discord designer channel
|
||||
|
||||
---
|
||||
|
||||
**This module transforms how designers think about their role in the AI era - from threatened to indispensable!** 🎯✨
|
||||
|
|
@ -1,99 +0,0 @@
|
|||
# Module 01: Why WDS Matters
|
||||
|
||||
**Learn how to be indispensable in the AI era**
|
||||
|
||||
---
|
||||
|
||||
## Module Overview
|
||||
|
||||
This foundational module transforms how you think about your role as a designer in the AI era. You'll learn why mastering WDS makes you irreplaceable and how to become a linchpin designer - the person who makes things happen.
|
||||
|
||||
**Time:** ~30 minutes (3 lessons × 10 min each)
|
||||
**Prerequisites:** None - this is where you start!
|
||||
|
||||
---
|
||||
|
||||
## What You'll Learn
|
||||
|
||||
- Why designers are more valuable than ever in the AI era
|
||||
- The difference between factory work and linchpin work
|
||||
- What AI can and cannot do in design
|
||||
- The 5 dimensions of design thinking
|
||||
- How to become the gatekeeper between business and user needs
|
||||
- The paradigm shift: design becomes specification
|
||||
|
||||
---
|
||||
|
||||
## Lessons
|
||||
|
||||
### [Lesson 1: The Problem We're Solving](lesson-01-the-problem.md)
|
||||
**Time:** 10 minutes
|
||||
|
||||
Understanding the factory mindset and the AI era:
|
||||
- Why learning WDS matters
|
||||
- What you'll gain from this course
|
||||
- Factory mindset vs linchpin mindset
|
||||
- AI threat for cogs
|
||||
- AI opportunity for linchpin designers
|
||||
|
||||
### [Lesson 2: Becoming a Linchpin Designer](lesson-02-the-solution.md)
|
||||
**Time:** 10 minutes
|
||||
|
||||
The solution: WDS methodology:
|
||||
- What makes a linchpin designer
|
||||
- The designer's gift: user-centric creativity
|
||||
- The designer as gatekeeper
|
||||
- From cog to linchpin designer
|
||||
- The paradigm shift: design becomes specification
|
||||
|
||||
### [Lesson 3: Your Transformation](lesson-03-the-path-forward.md)
|
||||
**Time:** 10 minutes
|
||||
|
||||
From replaceable to indispensable:
|
||||
- The 5 dimensions of design thinking
|
||||
- Your transformation as a designer
|
||||
- Real-world case studies (Dog Week)
|
||||
- Module completion and next steps
|
||||
|
||||
---
|
||||
|
||||
## Key Concepts
|
||||
|
||||
**Linchpin Designer:**
|
||||
- Walks into chaos and creates order
|
||||
- Invents solutions nobody expected
|
||||
- Bridges business, psychology, and technology
|
||||
- Delivers results when there's no roadmap
|
||||
|
||||
**User-Centric Creativity:**
|
||||
- Understanding WHY users feel frustrated
|
||||
- Connecting business goals to human needs
|
||||
- Creating experiences that feel right
|
||||
- Making judgment calls that serve people
|
||||
- Being the gatekeeper for quality
|
||||
|
||||
**The Paradigm Shift:**
|
||||
- The design becomes the specification
|
||||
- The specification becomes the product
|
||||
- The code is just the printout
|
||||
|
||||
---
|
||||
|
||||
## Learning Outcomes
|
||||
|
||||
By the end of this module, you will:
|
||||
- ✅ Understand why designers are irreplaceable in the AI era
|
||||
- ✅ Know the difference between cog work and linchpin work
|
||||
- ✅ Recognize what AI can and cannot do
|
||||
- ✅ See how specifications replace prompting
|
||||
- ✅ Be motivated to master the WDS methodology
|
||||
|
||||
---
|
||||
|
||||
## Start Learning
|
||||
|
||||
**[Begin with Lesson 1: The Problem →](lesson-01-the-problem.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Course Start](../00-start-here.md)
|
||||
|
|
@ -1,370 +0,0 @@
|
|||
# Tutorial 02: Create Your Project Brief
|
||||
|
||||
**Hands-on guide to defining your project vision, goals, and constraints**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
This tutorial walks you through creating a complete project brief that serves as the foundation for all design decisions.
|
||||
|
||||
**Time:** 30-45 minutes
|
||||
**Prerequisites:** Module 01 completed
|
||||
**What you'll create:** A complete project brief document
|
||||
|
||||
---
|
||||
|
||||
## What You'll Learn
|
||||
|
||||
- How to articulate project vision clearly
|
||||
- Defining measurable business goals
|
||||
- Identifying stakeholders and their needs
|
||||
- Documenting technical and business constraints
|
||||
- Setting success criteria
|
||||
|
||||
---
|
||||
|
||||
## Before You Start
|
||||
|
||||
**You'll need:**
|
||||
- A project idea (existing or new)
|
||||
- 30-45 minutes of focused time
|
||||
- Access to stakeholder information (if available)
|
||||
|
||||
**AI Support:**
|
||||
- AI agent will guide you through each section
|
||||
- Ask clarifying questions
|
||||
- Help structure your thinking
|
||||
- Suggest improvements
|
||||
|
||||
---
|
||||
|
||||
## Step 1: Define Project Vision (10 min)
|
||||
|
||||
### What is it?
|
||||
|
||||
The project vision is a clear, compelling statement of what you're building and why it matters.
|
||||
|
||||
### How to do it:
|
||||
|
||||
**Ask yourself:**
|
||||
- What problem does this solve?
|
||||
- Who benefits from this solution?
|
||||
- What makes this unique or valuable?
|
||||
- What's the desired end state?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
Vision: A family coordination platform that helps parents manage
|
||||
their dog's care schedule, ensuring every family member knows their
|
||||
responsibilities and the dog's needs are consistently met.
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Write your project vision:
|
||||
[Your vision here]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let me help you refine your vision. Tell me:
|
||||
- What problem are you solving?
|
||||
- Who is this for?
|
||||
- What makes it valuable?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 2: Set Business Goals (10 min)
|
||||
|
||||
### What are they?
|
||||
|
||||
Specific, measurable objectives that define project success from a business perspective.
|
||||
|
||||
### How to do it:
|
||||
|
||||
**Framework: SMART Goals**
|
||||
- **S**pecific - Clear and unambiguous
|
||||
- **M**easurable - Can track progress
|
||||
- **A**chievable - Realistic given resources
|
||||
- **R**elevant - Aligned with business strategy
|
||||
- **T**ime-bound - Has a deadline
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
Business Goals:
|
||||
1. Acquire 1,000 active families within 6 months of launch
|
||||
2. Achieve 70% weekly active user rate
|
||||
3. Reduce family coordination time by 50%
|
||||
4. Generate $50K MRR within 12 months
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
List 3-5 business goals:
|
||||
1. [Goal 1]
|
||||
2. [Goal 2]
|
||||
3. [Goal 3]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let's make these goals SMART. For each goal, I'll help you:
|
||||
- Make it specific and measurable
|
||||
- Set realistic targets
|
||||
- Define timeframes"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Identify Stakeholders (5 min)
|
||||
|
||||
### Who are they?
|
||||
|
||||
People who have a stake in the project's success or will be affected by it.
|
||||
|
||||
### How to do it:
|
||||
|
||||
**Categories:**
|
||||
- **Primary Users** - Direct users of the product
|
||||
- **Secondary Users** - Indirect beneficiaries
|
||||
- **Business Stakeholders** - Decision makers, investors
|
||||
- **Technical Stakeholders** - Developers, IT, infrastructure
|
||||
- **External Stakeholders** - Partners, regulators, community
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
Stakeholders:
|
||||
- Primary: Parents managing family dog care
|
||||
- Secondary: Children participating in care, the dog
|
||||
- Business: Founders, investors
|
||||
- Technical: Development team, hosting provider
|
||||
- External: Veterinarians (future integration)
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
List your stakeholders by category:
|
||||
[Your stakeholders]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Document Constraints (10 min)
|
||||
|
||||
### What are they?
|
||||
|
||||
Limitations and requirements that shape your design decisions.
|
||||
|
||||
### How to do it:
|
||||
|
||||
**Categories:**
|
||||
|
||||
**Technical Constraints:**
|
||||
- Platform requirements (web, mobile, desktop)
|
||||
- Browser/device support
|
||||
- Performance requirements
|
||||
- Integration requirements
|
||||
- Security/compliance needs
|
||||
|
||||
**Business Constraints:**
|
||||
- Budget limitations
|
||||
- Timeline requirements
|
||||
- Resource availability
|
||||
- Market positioning
|
||||
- Competitive landscape
|
||||
|
||||
**Design Constraints:**
|
||||
- Brand guidelines
|
||||
- Accessibility requirements
|
||||
- Localization needs
|
||||
- Existing design systems
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
Constraints:
|
||||
Technical:
|
||||
- Must work on mobile (iOS/Android) and web
|
||||
- Swedish language primary, English secondary
|
||||
- GDPR compliance required
|
||||
- Offline capability for core features
|
||||
|
||||
Business:
|
||||
- 6-month timeline to MVP
|
||||
- Bootstrap budget (no external funding yet)
|
||||
- Small team (2 developers, 1 designer)
|
||||
|
||||
Design:
|
||||
- Family-friendly visual language
|
||||
- WCAG 2.1 AA accessibility
|
||||
- Swedish cultural considerations
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Document your constraints:
|
||||
[Your constraints]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let's identify constraints you might have missed:
|
||||
- Have you considered accessibility?
|
||||
- What about localization?
|
||||
- Any regulatory requirements?
|
||||
- Performance expectations?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 5: Define Success Criteria (5 min)
|
||||
|
||||
### What is it?
|
||||
|
||||
Specific metrics that indicate whether the project achieved its goals.
|
||||
|
||||
### How to do it:
|
||||
|
||||
**Framework:**
|
||||
- **User Success** - How users benefit
|
||||
- **Business Success** - Revenue, growth, efficiency
|
||||
- **Technical Success** - Performance, reliability, scalability
|
||||
- **Design Success** - Usability, satisfaction, engagement
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
Success Criteria:
|
||||
|
||||
User Success:
|
||||
- 80% of users report reduced coordination stress
|
||||
- Average task completion time < 2 minutes
|
||||
- 90% task completion rate
|
||||
|
||||
Business Success:
|
||||
- 1,000 active families by month 6
|
||||
- 70% weekly active users
|
||||
- $50K MRR by month 12
|
||||
|
||||
Technical Success:
|
||||
- 99.9% uptime
|
||||
- Page load < 2 seconds
|
||||
- Zero critical security issues
|
||||
|
||||
Design Success:
|
||||
- SUS score > 75
|
||||
- NPS score > 40
|
||||
- 80% feature discoverability
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Define your success criteria:
|
||||
[Your criteria]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 6: Review and Refine (5 min)
|
||||
|
||||
### Checklist:
|
||||
|
||||
**Completeness:**
|
||||
- ✓ Vision is clear and compelling
|
||||
- ✓ Goals are SMART
|
||||
- ✓ All stakeholder groups identified
|
||||
- ✓ Constraints documented
|
||||
- ✓ Success criteria defined
|
||||
|
||||
**Quality:**
|
||||
- ✓ Vision is inspiring and actionable
|
||||
- ✓ Goals are measurable and realistic
|
||||
- ✓ Constraints are specific and justified
|
||||
- ✓ Success criteria are trackable
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let me review your project brief:
|
||||
- Is the vision clear?
|
||||
- Are goals measurable?
|
||||
- Have we missed any constraints?
|
||||
- Can we track these success criteria?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 7: Save Your Project Brief
|
||||
|
||||
**Create file:** `A-Project-Brief/project-brief.md`
|
||||
|
||||
**Use template from:** `workflows/1-project-brief/complete/project-brief.template.md`
|
||||
|
||||
**Populate with your content:**
|
||||
- Vision
|
||||
- Business goals
|
||||
- Stakeholders
|
||||
- Constraints
|
||||
- Success criteria
|
||||
|
||||
---
|
||||
|
||||
## What You've Accomplished
|
||||
|
||||
✅ **Clear project vision** - Everyone knows what you're building and why
|
||||
✅ **Measurable goals** - You can track progress and success
|
||||
✅ **Stakeholder map** - You know who to consider in decisions
|
||||
✅ **Documented constraints** - Design decisions have clear boundaries
|
||||
✅ **Success criteria** - You'll know when you've succeeded
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
**Immediate:**
|
||||
- Share project brief with stakeholders for feedback
|
||||
- Get alignment on vision and goals
|
||||
- Confirm constraints are accurate
|
||||
|
||||
**Next Module:**
|
||||
- [Module 03: Identify Target Groups](../module-03-identify-target-groups/module-03-overview.md)
|
||||
- Start mapping WHO your users are
|
||||
|
||||
---
|
||||
|
||||
## Common Questions
|
||||
|
||||
**Q: What if I don't have all the information yet?**
|
||||
A: Start with what you know. Mark sections as "TBD" and refine as you learn more. The brief is a living document.
|
||||
|
||||
**Q: How detailed should constraints be?**
|
||||
A: Detailed enough to guide decisions. If a constraint will affect design choices, document it specifically.
|
||||
|
||||
**Q: Can I change the brief later?**
|
||||
A: Absolutely! The brief evolves as you learn. Update it when new information emerges or priorities shift.
|
||||
|
||||
**Q: What if stakeholders disagree on goals?**
|
||||
A: Use the brief to facilitate alignment discussions. Document disagreements and work toward consensus before proceeding.
|
||||
|
||||
---
|
||||
|
||||
## Tips for Success
|
||||
|
||||
**DO ✅**
|
||||
- Be specific and concrete
|
||||
- Make goals measurable
|
||||
- Document the "why" behind constraints
|
||||
- Get stakeholder input early
|
||||
- Keep it concise (2-3 pages max)
|
||||
|
||||
**DON'T ❌**
|
||||
- Write vague, aspirational statements
|
||||
- Set unrealistic goals
|
||||
- Skip constraint documentation
|
||||
- Work in isolation
|
||||
- Over-engineer the brief
|
||||
|
||||
---
|
||||
|
||||
**Your project brief is the foundation for everything that follows. Take the time to get it right!**
|
||||
|
||||
[← Back to Module 02](module-02-overview.md) | [Next: Module 03 →](../module-03-identify-target-groups/module-03-overview.md)
|
||||
|
|
@ -1,431 +0,0 @@
|
|||
# Tutorial 04: Map Triggers & Outcomes
|
||||
|
||||
**Hands-on guide to understanding WHAT triggers user needs and WHY your business exists**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
This tutorial teaches you how to map the psychological triggers that drive user behavior and connect them to business outcomes.
|
||||
|
||||
**Time:** 45-60 minutes
|
||||
**Prerequisites:** Module 03 completed (Target Groups identified)
|
||||
**What you'll create:** A complete trigger map for your top target group
|
||||
|
||||
---
|
||||
|
||||
## What You'll Learn
|
||||
|
||||
- How to identify user trigger moments
|
||||
- Mapping from trigger → need → solution → outcome
|
||||
- Connecting user psychology to business value
|
||||
- Prioritizing features by trigger impact
|
||||
- Creating a traceable chain of reasoning
|
||||
|
||||
---
|
||||
|
||||
## Step 1: Select Your Top Target Group (5 min)
|
||||
|
||||
From Module 03, choose your highest-priority target group.
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
Target Group: Busy Parents with Family Dog
|
||||
Priority: #1 (highest impact + feasibility)
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Selected Target Group: [Your top group]
|
||||
Why this group: [Reasoning]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 2: Identify Trigger Moments (15 min)
|
||||
|
||||
### What is a trigger?
|
||||
|
||||
A specific moment when a user realizes they have a need your product can solve.
|
||||
|
||||
### Framework: The Trigger Moment
|
||||
|
||||
**Ask:**
|
||||
- WHEN does the user feel pain/frustration?
|
||||
- WHAT specific situation causes this?
|
||||
- WHY does this matter to them emotionally?
|
||||
|
||||
**Example (Dog Week - Busy Parents):**
|
||||
|
||||
**Trigger 1: Morning Chaos**
|
||||
```
|
||||
WHEN: Monday morning, everyone rushing
|
||||
WHAT: Nobody knows who's walking the dog
|
||||
WHY: Stress, guilt, family conflict, dog's needs unmet
|
||||
```
|
||||
|
||||
**Trigger 2: Forgotten Feeding**
|
||||
```
|
||||
WHEN: Evening, parent realizes dog wasn't fed
|
||||
WHAT: Uncertainty about who was responsible
|
||||
WHY: Guilt, worry about dog's health, family tension
|
||||
```
|
||||
|
||||
**Trigger 3: Vet Appointment Missed**
|
||||
```
|
||||
WHEN: Vet calls about missed appointment
|
||||
WHAT: Nobody remembered or knew about it
|
||||
WHY: Embarrassment, concern for dog, wasted money
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Identify 3-5 trigger moments for your target group:
|
||||
|
||||
Trigger 1: [Name]
|
||||
WHEN: [Specific moment]
|
||||
WHAT: [Specific situation]
|
||||
WHY: [Emotional impact]
|
||||
|
||||
Trigger 2: [Name]
|
||||
WHEN:
|
||||
WHAT:
|
||||
WHY:
|
||||
|
||||
[Continue for 3-5 triggers]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let's dig deeper into each trigger:
|
||||
- What happens right before this moment?
|
||||
- What emotions does the user feel?
|
||||
- How often does this happen?
|
||||
- What do they try now (that doesn't work)?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Map User Needs (10 min)
|
||||
|
||||
### What is the need?
|
||||
|
||||
The underlying requirement the user has when triggered.
|
||||
|
||||
### Framework: From Trigger to Need
|
||||
|
||||
**For each trigger, ask:**
|
||||
- What does the user need in this moment?
|
||||
- What would make this situation better?
|
||||
- What's the core problem to solve?
|
||||
|
||||
**Example (Dog Week):**
|
||||
|
||||
**Trigger: Morning Chaos**
|
||||
```
|
||||
Need: Know immediately who's responsible for dog care today
|
||||
Need: See the full week's schedule at a glance
|
||||
Need: Get reminded before tasks are due
|
||||
```
|
||||
|
||||
**Trigger: Forgotten Feeding**
|
||||
```
|
||||
Need: Track whether tasks were completed
|
||||
Need: Get notifications when tasks are overdue
|
||||
Need: See task history to avoid confusion
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
For each trigger, identify 2-3 core needs:
|
||||
|
||||
Trigger 1: [Name]
|
||||
Needs:
|
||||
- [Need 1]
|
||||
- [Need 2]
|
||||
- [Need 3]
|
||||
|
||||
[Continue for all triggers]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Define Solutions (10 min)
|
||||
|
||||
### What is the solution?
|
||||
|
||||
The specific feature or capability that addresses the need.
|
||||
|
||||
### Framework: Need to Solution
|
||||
|
||||
**For each need, ask:**
|
||||
- What feature would solve this?
|
||||
- How would it work?
|
||||
- What's the simplest version?
|
||||
|
||||
**Example (Dog Week):**
|
||||
|
||||
**Need: Know who's responsible today**
|
||||
```
|
||||
Solution: Daily schedule view with assigned responsibilities
|
||||
- Shows today's tasks
|
||||
- Highlights current user's tasks
|
||||
- Shows who's assigned to each task
|
||||
```
|
||||
|
||||
**Need: Get reminded before tasks are due**
|
||||
```
|
||||
Solution: Smart notifications
|
||||
- Reminder 1 hour before task
|
||||
- Escalation if task not completed
|
||||
- Family-wide visibility of overdue tasks
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
For each need, define a solution:
|
||||
|
||||
Need: [Need description]
|
||||
Solution: [Feature name]
|
||||
- [How it works]
|
||||
- [Key capabilities]
|
||||
- [User benefit]
|
||||
|
||||
[Continue for all needs]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let's validate each solution:
|
||||
- Does this truly solve the need?
|
||||
- Is it the simplest solution?
|
||||
- Are there edge cases to consider?
|
||||
- How does this connect to business goals?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 5: Map Business Outcomes (10 min)
|
||||
|
||||
### What is the outcome?
|
||||
|
||||
The business value created when users get their needs met.
|
||||
|
||||
### Framework: Solution to Outcome
|
||||
|
||||
**For each solution, ask:**
|
||||
- How does this create business value?
|
||||
- What metrics improve?
|
||||
- How does this support business goals?
|
||||
|
||||
**Example (Dog Week):**
|
||||
|
||||
**Solution: Daily schedule view**
|
||||
```
|
||||
User Outcome: Reduced stress, better dog care
|
||||
Business Outcome:
|
||||
- Increased daily active users (checking schedule)
|
||||
- Higher retention (solving real pain)
|
||||
- Word-of-mouth growth (visible family benefit)
|
||||
Metrics: DAU, retention rate, NPS
|
||||
```
|
||||
|
||||
**Solution: Smart notifications**
|
||||
```
|
||||
User Outcome: Never miss dog care tasks
|
||||
Business Outcome:
|
||||
- Increased engagement (notification opens)
|
||||
- Higher task completion (core value delivered)
|
||||
- Premium feature potential (advanced notifications)
|
||||
Metrics: Notification open rate, task completion rate, conversion
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
For each solution, map to business outcomes:
|
||||
|
||||
Solution: [Feature name]
|
||||
User Outcome: [How user benefits]
|
||||
Business Outcome: [How business benefits]
|
||||
Metrics: [What you'll measure]
|
||||
|
||||
[Continue for all solutions]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 6: Create Trigger Map Visualization (10 min)
|
||||
|
||||
### Format:
|
||||
|
||||
```
|
||||
TARGET GROUP: [Group name]
|
||||
|
||||
TRIGGER → NEED → SOLUTION → OUTCOME
|
||||
|
||||
1. [Trigger name]
|
||||
WHEN: [Moment]
|
||||
↓
|
||||
NEED: [Core need]
|
||||
↓
|
||||
SOLUTION: [Feature]
|
||||
↓
|
||||
OUTCOME: [Business value]
|
||||
METRICS: [Measurements]
|
||||
|
||||
2. [Next trigger...]
|
||||
```
|
||||
|
||||
**Example (Dog Week - Simplified):**
|
||||
|
||||
```
|
||||
TARGET GROUP: Busy Parents with Family Dog
|
||||
|
||||
TRIGGER → NEED → SOLUTION → OUTCOME
|
||||
|
||||
1. Morning Chaos
|
||||
WHEN: Monday morning, nobody knows dog responsibilities
|
||||
↓
|
||||
NEED: Know who's responsible for dog care today
|
||||
↓
|
||||
SOLUTION: Daily schedule view with assigned tasks
|
||||
↓
|
||||
OUTCOME: Increased DAU, higher retention
|
||||
METRICS: Daily active users, 7-day retention
|
||||
|
||||
2. Forgotten Feeding
|
||||
WHEN: Evening, uncertainty about feeding
|
||||
↓
|
||||
NEED: Track task completion in real-time
|
||||
↓
|
||||
SOLUTION: Task completion tracking + notifications
|
||||
↓
|
||||
OUTCOME: Higher engagement, core value delivered
|
||||
METRICS: Task completion rate, notification opens
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Create your trigger map:
|
||||
[Your complete map]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 7: Prioritize by Impact (5 min)
|
||||
|
||||
### Framework: Impact Score
|
||||
|
||||
**For each trigger-to-outcome chain, rate:**
|
||||
- **User Impact** (1-5): How much does this help the user?
|
||||
- **Business Impact** (1-5): How much business value does this create?
|
||||
- **Feasibility** (1-5): How easy is this to build?
|
||||
|
||||
**Calculate:** `Priority Score = (User Impact + Business Impact) × Feasibility`
|
||||
|
||||
**Example (Dog Week):**
|
||||
|
||||
```
|
||||
1. Morning Chaos → Daily Schedule
|
||||
User: 5, Business: 5, Feasibility: 4
|
||||
Score: (5+5) × 4 = 40 ⭐ HIGHEST PRIORITY
|
||||
|
||||
2. Forgotten Feeding → Task Tracking
|
||||
User: 5, Business: 4, Feasibility: 4
|
||||
Score: (5+4) × 4 = 36 ⭐ HIGH PRIORITY
|
||||
|
||||
3. Vet Appointment → Calendar Integration
|
||||
User: 4, Business: 3, Feasibility: 2
|
||||
Score: (4+3) × 2 = 14 → LOWER PRIORITY
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Score and rank your triggers:
|
||||
[Your prioritized list]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 8: Save Your Trigger Map
|
||||
|
||||
**Create file:** `B-Trigger-Map/trigger-map-[target-group].md`
|
||||
|
||||
**Use template from:** `workflows/2-trigger-mapping/templates/trigger-map.template.md`
|
||||
|
||||
---
|
||||
|
||||
## What You've Accomplished
|
||||
|
||||
✅ **Identified trigger moments** - You know WHEN users need your product
|
||||
✅ **Mapped user needs** - You understand WHAT users need
|
||||
✅ **Defined solutions** - You know WHAT to build
|
||||
✅ **Connected to business** - You know WHY each feature matters
|
||||
✅ **Prioritized features** - You know WHAT to build first
|
||||
|
||||
---
|
||||
|
||||
## The Power of Trigger Mapping
|
||||
|
||||
**This is strategic gold:**
|
||||
- Every feature traces back to a real user trigger
|
||||
- Every decision is backed by user psychology
|
||||
- Every feature connects to business value
|
||||
- No more guessing what to build
|
||||
- No more building things nobody uses
|
||||
|
||||
**When product managers ask "what should we build next?"**
|
||||
→ You have the answer, backed by data and reasoning
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
**Immediate:**
|
||||
- Repeat for your top 2-3 target groups
|
||||
- Compare trigger maps across groups
|
||||
- Identify overlapping needs (efficiency opportunity)
|
||||
|
||||
**Next Module:**
|
||||
- [Module 05: Prioritize Features](../module-05-prioritize-features/module-05-overview.md)
|
||||
- Create your feature roadmap based on trigger impact
|
||||
|
||||
---
|
||||
|
||||
## Common Questions
|
||||
|
||||
**Q: How many triggers should I identify per target group?**
|
||||
A: Start with 3-5 major triggers. You can always add more later.
|
||||
|
||||
**Q: What if multiple triggers lead to the same solution?**
|
||||
A: Perfect! This means the solution has high leverage. Document all triggers it solves.
|
||||
|
||||
**Q: Should I map triggers for all target groups?**
|
||||
A: Start with your top 1-2 groups. Add more as needed.
|
||||
|
||||
**Q: How do I validate these triggers are real?**
|
||||
A: User research, interviews, observation. The trigger map is a hypothesis to test.
|
||||
|
||||
---
|
||||
|
||||
## Tips for Success
|
||||
|
||||
**DO ✅**
|
||||
- Be specific about trigger moments
|
||||
- Focus on emotional impact (the "why")
|
||||
- Connect everything to business outcomes
|
||||
- Prioritize ruthlessly
|
||||
- Test assumptions with users
|
||||
|
||||
**DON'T ❌**
|
||||
- List generic "user wants X" statements
|
||||
- Skip the emotional "why"
|
||||
- Create solutions without clear triggers
|
||||
- Try to solve everything at once
|
||||
- Forget to measure outcomes
|
||||
|
||||
---
|
||||
|
||||
**Your trigger map is the strategic foundation that guides every design decision!**
|
||||
|
||||
[← Back to Module 04](module-04-overview.md) | [Next: Module 05 →](../module-05-prioritize-features/module-05-overview.md)
|
||||
|
|
@ -1,495 +0,0 @@
|
|||
# Tutorial 08: Initialize Your Scenario
|
||||
|
||||
**Hands-on guide to starting a design scenario with the 5 essential questions**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
This tutorial walks you through initializing a scenario - the moment where strategic thinking meets design execution.
|
||||
|
||||
**Time:** 30-45 minutes
|
||||
**Prerequisites:** Trigger map completed
|
||||
**What you'll create:** A fully initialized scenario ready for sketching
|
||||
|
||||
---
|
||||
|
||||
## What You'll Learn
|
||||
|
||||
- The 5 questions that define every scenario
|
||||
- How to connect scenarios to triggers
|
||||
- Setting clear success criteria
|
||||
- Defining scope and constraints
|
||||
- Getting AI support for scenario planning
|
||||
|
||||
---
|
||||
|
||||
## The 5 Essential Questions
|
||||
|
||||
Every scenario must answer:
|
||||
|
||||
1. **WHO** is this for? (Target group)
|
||||
2. **WHAT** trigger brings them here? (Trigger moment)
|
||||
3. **WHY** does this matter? (User + business value)
|
||||
4. **WHAT** is the happy path? (Success flow)
|
||||
5. **WHAT** could go wrong? (Edge cases)
|
||||
|
||||
---
|
||||
|
||||
## Step 1: Choose Your Scenario (5 min)
|
||||
|
||||
### What is a scenario?
|
||||
|
||||
A specific user journey from trigger moment to successful outcome.
|
||||
|
||||
### How to choose:
|
||||
|
||||
**From your trigger map, select:**
|
||||
- Highest priority trigger
|
||||
- Clear start and end points
|
||||
- Manageable scope for first design
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
Scenario: Morning Dog Care Assignment
|
||||
Trigger: Morning chaos - nobody knows who's walking the dog
|
||||
Priority: #1 (highest impact)
|
||||
Scope: From opening app to seeing today's assignments
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Scenario Name: [Your scenario]
|
||||
Trigger: [From trigger map]
|
||||
Priority: [Why this one first]
|
||||
Scope: [Start → End]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 2: Answer Question 1 - WHO? (5 min)
|
||||
|
||||
### Define your target user
|
||||
|
||||
**Be specific:**
|
||||
- Which target group?
|
||||
- What's their context?
|
||||
- What's their mindset?
|
||||
- What are they trying to accomplish?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
WHO: Sarah, busy parent with family dog
|
||||
|
||||
Context:
|
||||
- Monday morning, 7:15 AM
|
||||
- Getting kids ready for school
|
||||
- Needs to coordinate dog care
|
||||
- Stressed, time-pressured
|
||||
|
||||
Mindset:
|
||||
- Wants quick answer
|
||||
- Needs certainty
|
||||
- Values family harmony
|
||||
- Cares about dog's wellbeing
|
||||
|
||||
Goal:
|
||||
- Know who's walking the dog today
|
||||
- Avoid family conflict
|
||||
- Ensure dog is cared for
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
WHO: [User name/persona]
|
||||
|
||||
Context:
|
||||
- [When/where]
|
||||
- [What they're doing]
|
||||
- [Their situation]
|
||||
|
||||
Mindset:
|
||||
- [How they feel]
|
||||
- [What they value]
|
||||
- [What they need]
|
||||
|
||||
Goal:
|
||||
- [Primary objective]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let's make this user vivid:
|
||||
- What's their emotional state?
|
||||
- What just happened before this moment?
|
||||
- What are they worried about?
|
||||
- What would success feel like?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Answer Question 2 - WHAT Trigger? (5 min)
|
||||
|
||||
### Define the trigger moment
|
||||
|
||||
**Be specific about:**
|
||||
- Exact moment user realizes they need this
|
||||
- What caused the trigger
|
||||
- Emotional state at trigger
|
||||
- What they've tried before
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
WHAT Trigger: Morning Chaos
|
||||
|
||||
Exact Moment:
|
||||
- 7:15 AM, Monday morning
|
||||
- Kids asking "Who's walking Max?"
|
||||
- Nobody knows the answer
|
||||
- Everyone looking at each other
|
||||
|
||||
What Caused It:
|
||||
- No clear schedule visible
|
||||
- Verbal agreements forgotten
|
||||
- Weekend disrupted routine
|
||||
- New week starting
|
||||
|
||||
Emotional State:
|
||||
- Frustration (here we go again)
|
||||
- Guilt (dog needs care)
|
||||
- Stress (running late)
|
||||
- Urgency (need answer NOW)
|
||||
|
||||
Previous Attempts:
|
||||
- Family calendar (too general)
|
||||
- Group chat (messages lost)
|
||||
- Verbal agreements (forgotten)
|
||||
- Whiteboard (not mobile)
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
WHAT Trigger: [Trigger name]
|
||||
|
||||
Exact Moment:
|
||||
- [When/where]
|
||||
- [What's happening]
|
||||
- [What prompted need]
|
||||
|
||||
Emotional State:
|
||||
- [How user feels]
|
||||
- [Why it matters]
|
||||
|
||||
Previous Attempts:
|
||||
- [What they've tried]
|
||||
- [Why it didn't work]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Answer Question 3 - WHY? (10 min)
|
||||
|
||||
### Define the value
|
||||
|
||||
**Two perspectives:**
|
||||
|
||||
**User Value:**
|
||||
- What pain does this solve?
|
||||
- What does success feel like?
|
||||
- What changes in their life?
|
||||
|
||||
**Business Value:**
|
||||
- How does this support business goals?
|
||||
- What metrics improve?
|
||||
- What's the strategic importance?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
WHY - User Value:
|
||||
|
||||
Pain Solved:
|
||||
- No more morning chaos
|
||||
- No more family conflict
|
||||
- No more guilt about dog
|
||||
- Certainty and peace of mind
|
||||
|
||||
Success Feels Like:
|
||||
- "I know exactly who's doing what"
|
||||
- "My family is coordinated"
|
||||
- "My dog is cared for"
|
||||
- "I can focus on my morning"
|
||||
|
||||
Life Change:
|
||||
- Reduced daily stress
|
||||
- Better family harmony
|
||||
- Confident dog care
|
||||
- More mental space
|
||||
|
||||
WHY - Business Value:
|
||||
|
||||
Business Goals Supported:
|
||||
- Increased daily active users (checking schedule)
|
||||
- Higher retention (solving real pain)
|
||||
- Word-of-mouth growth (visible benefit)
|
||||
- Foundation for premium features
|
||||
|
||||
Metrics Improved:
|
||||
- DAU (daily schedule checks)
|
||||
- 7-day retention rate
|
||||
- Task completion rate
|
||||
- NPS score
|
||||
|
||||
Strategic Importance:
|
||||
- Core value proposition
|
||||
- Differentiation from competitors
|
||||
- Foundation for entire platform
|
||||
- Proves product-market fit
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
WHY - User Value:
|
||||
Pain Solved:
|
||||
- [Pain points addressed]
|
||||
|
||||
Success Feels Like:
|
||||
- [User emotions]
|
||||
|
||||
Life Change:
|
||||
- [What improves]
|
||||
|
||||
WHY - Business Value:
|
||||
Business Goals:
|
||||
- [Goals supported]
|
||||
|
||||
Metrics:
|
||||
- [What improves]
|
||||
|
||||
Strategic Importance:
|
||||
- [Why this matters]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 5: Answer Question 4 - Happy Path? (10 min)
|
||||
|
||||
### Define the success flow
|
||||
|
||||
**Map the ideal journey:**
|
||||
- User starts at trigger
|
||||
- Takes clear actions
|
||||
- System responds appropriately
|
||||
- User achieves goal
|
||||
- Mutual success achieved
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
HAPPY PATH: Morning Dog Care Check
|
||||
|
||||
1. TRIGGER
|
||||
- Sarah opens app (7:15 AM Monday)
|
||||
- Feeling stressed, needs quick answer
|
||||
|
||||
2. IMMEDIATE ANSWER
|
||||
- App shows TODAY view by default
|
||||
- Sarah's tasks highlighted
|
||||
- "You: Walk Max (8:00 AM)"
|
||||
- Clear, immediate, no searching
|
||||
|
||||
3. FULL CONTEXT
|
||||
- Sees all today's dog tasks
|
||||
- Knows who's doing what
|
||||
- Sees upcoming tasks
|
||||
- Feels confident and informed
|
||||
|
||||
4. QUICK ACTION (if needed)
|
||||
- Can mark task complete
|
||||
- Can reassign if emergency
|
||||
- Can add notes
|
||||
- Takes < 30 seconds
|
||||
|
||||
5. SUCCESS
|
||||
- Sarah knows her responsibility
|
||||
- Tells family with confidence
|
||||
- Dog will be cared for
|
||||
- Morning proceeds smoothly
|
||||
|
||||
MUTUAL SUCCESS:
|
||||
- User: Stress reduced, clarity achieved
|
||||
- Business: Daily engagement, value delivered
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
HAPPY PATH: [Scenario name]
|
||||
|
||||
1. TRIGGER
|
||||
- [User starts]
|
||||
- [Emotional state]
|
||||
|
||||
2. [Step 2]
|
||||
- [What happens]
|
||||
- [User sees/does]
|
||||
|
||||
3. [Step 3]
|
||||
- [Next action]
|
||||
- [System response]
|
||||
|
||||
[Continue through success]
|
||||
|
||||
MUTUAL SUCCESS:
|
||||
- User: [What they gain]
|
||||
- Business: [What we gain]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Let's optimize this flow:
|
||||
- Can we reduce steps?
|
||||
- Is anything unclear?
|
||||
- What information is missing?
|
||||
- How can we make this faster?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 6: Answer Question 5 - What Could Go Wrong? (5 min)
|
||||
|
||||
### Identify edge cases
|
||||
|
||||
**Consider:**
|
||||
- First-time users
|
||||
- Error states
|
||||
- Missing data
|
||||
- Unusual situations
|
||||
- System failures
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
EDGE CASES:
|
||||
|
||||
First Time User:
|
||||
- No schedule exists yet
|
||||
- Show onboarding flow
|
||||
- Guide schedule creation
|
||||
|
||||
No Tasks Today:
|
||||
- Show "No dog tasks today"
|
||||
- Show upcoming tasks
|
||||
- Offer to add tasks
|
||||
|
||||
Multiple Dogs:
|
||||
- Show dog selector
|
||||
- Default to primary dog
|
||||
- Remember last selected
|
||||
|
||||
Overdue Tasks:
|
||||
- Highlight in red
|
||||
- Show notification
|
||||
- Offer to reassign
|
||||
|
||||
Offline:
|
||||
- Show cached schedule
|
||||
- Indicate offline mode
|
||||
- Queue actions for sync
|
||||
|
||||
Someone Else's Phone:
|
||||
- Show family view
|
||||
- Highlight their tasks
|
||||
- Respect privacy
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
EDGE CASES:
|
||||
|
||||
[Case 1]:
|
||||
- [Situation]
|
||||
- [How to handle]
|
||||
|
||||
[Case 2]:
|
||||
- [Situation]
|
||||
- [How to handle]
|
||||
|
||||
[Continue for major cases]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 7: Document Scenario Initialization (5 min)
|
||||
|
||||
**Create file:** `C-Scenarios/[scenario-name]/00-scenario-init.md`
|
||||
|
||||
**Include all 5 questions:**
|
||||
1. WHO - Target user in context
|
||||
2. WHAT Trigger - Specific moment
|
||||
3. WHY - User + business value
|
||||
4. Happy Path - Success flow
|
||||
5. Edge Cases - What could go wrong
|
||||
|
||||
**Use template from:** `workflows/4-ux-design/templates/scenario-init.template.md`
|
||||
|
||||
---
|
||||
|
||||
## What You've Accomplished
|
||||
|
||||
✅ **Clear target user** - You know WHO you're designing for
|
||||
✅ **Specific trigger** - You know WHAT brings them here
|
||||
✅ **Defined value** - You know WHY this matters
|
||||
✅ **Success flow** - You know the HAPPY PATH
|
||||
✅ **Edge cases** - You know WHAT could go wrong
|
||||
|
||||
**You're ready to start sketching!**
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
**Immediate:**
|
||||
- Review initialization with stakeholders
|
||||
- Validate assumptions with users (if possible)
|
||||
- Gather any missing information
|
||||
|
||||
**Next Module:**
|
||||
- [Module 09: Sketch Interfaces](../module-09-sketch-interfaces/module-09-overview.md)
|
||||
- Start drawing your solution with AI guidance
|
||||
|
||||
---
|
||||
|
||||
## Common Questions
|
||||
|
||||
**Q: How detailed should the happy path be?**
|
||||
A: Detailed enough to guide sketching. 5-8 steps is typical.
|
||||
|
||||
**Q: Should I document every possible edge case?**
|
||||
A: Focus on the most likely and most impactful. You can add more during design.
|
||||
|
||||
**Q: What if I don't know all the answers yet?**
|
||||
A: Mark sections as "TBD" and research. Better to identify gaps now than during development.
|
||||
|
||||
**Q: Can I change these answers later?**
|
||||
A: Yes! This is a living document. Update as you learn.
|
||||
|
||||
---
|
||||
|
||||
## Tips for Success
|
||||
|
||||
**DO ✅**
|
||||
- Be specific about user context
|
||||
- Connect to trigger map
|
||||
- Define clear success criteria
|
||||
- Consider edge cases early
|
||||
- Get stakeholder alignment
|
||||
|
||||
**DON'T ❌**
|
||||
- Rush through the questions
|
||||
- Skip the "why"
|
||||
- Ignore edge cases
|
||||
- Work in isolation
|
||||
- Start sketching without initialization
|
||||
|
||||
---
|
||||
|
||||
**A well-initialized scenario is half the design work done!**
|
||||
|
||||
[← Back to Module 08](module-08-overview.md) | [Next: Module 09 →](../module-09-sketch-interfaces/module-09-overview.md)
|
||||
|
|
@ -1,669 +0,0 @@
|
|||
# Tutorial 12: Write Why-Based Specifications
|
||||
|
||||
**Hands-on guide to documenting WHAT + WHY + WHAT NOT TO DO**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
This tutorial teaches you how to transform sketches into specifications that preserve your design intent and guide AI implementation correctly.
|
||||
|
||||
**Time:** 60-90 minutes
|
||||
**Prerequisites:** Sketches completed and analyzed
|
||||
**What you'll create:** Complete why-based specifications for a page
|
||||
|
||||
---
|
||||
|
||||
## What You'll Learn
|
||||
|
||||
- The three-part specification pattern (WHAT + WHY + WHAT NOT)
|
||||
- How to document design intent AI can follow
|
||||
- Preventing "helpful" AI mistakes
|
||||
- Creating specifications that preserve creativity
|
||||
- Working with AI as documentation partner
|
||||
|
||||
---
|
||||
|
||||
## The Why-Based Pattern
|
||||
|
||||
Every specification element needs three parts:
|
||||
|
||||
```
|
||||
WHAT: [The design decision]
|
||||
WHY: [The reasoning behind it]
|
||||
WHAT NOT TO DO: [Common mistakes to avoid]
|
||||
```
|
||||
|
||||
**This is not factory work** - AI agents help you think through design solutions, then become fascinated documentarians of your brilliance.
|
||||
|
||||
---
|
||||
|
||||
## Step 1: Start with Component Overview (10 min)
|
||||
|
||||
### Document the big picture
|
||||
|
||||
**What to include:**
|
||||
- Component purpose
|
||||
- User context
|
||||
- Key interactions
|
||||
- Success criteria
|
||||
|
||||
**Example (Dog Week - Daily Schedule View):**
|
||||
|
||||
```markdown
|
||||
# Daily Schedule View Component
|
||||
|
||||
## Purpose
|
||||
Shows today's dog care tasks with clear assignments and status.
|
||||
Solves the "morning chaos" trigger - user needs immediate answer
|
||||
to "who's doing what today?"
|
||||
|
||||
## User Context
|
||||
- Accessed first thing in morning (7-8 AM typical)
|
||||
- User is time-pressured, stressed
|
||||
- Needs answer in < 5 seconds
|
||||
- May be checking while managing kids
|
||||
|
||||
## Key Interactions
|
||||
- View today's tasks at a glance
|
||||
- See personal assignments highlighted
|
||||
- Mark tasks complete
|
||||
- Quick reassign if emergency
|
||||
|
||||
## Success Criteria
|
||||
- User finds their tasks in < 5 seconds
|
||||
- Zero confusion about responsibilities
|
||||
- Can act on tasks immediately
|
||||
- Feels confident and informed
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Document your component overview:
|
||||
[Your content]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "I'm fascinated by your design thinking here. Let me help
|
||||
capture every nuance:
|
||||
- What's the emotional journey you're creating?
|
||||
- Why did you choose this approach over alternatives?
|
||||
- What makes this feel right for your users?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 2: Specify Visual Hierarchy (15 min)
|
||||
|
||||
### Document WHAT + WHY + WHAT NOT
|
||||
|
||||
**For each visual decision, explain:**
|
||||
- WHAT you designed
|
||||
- WHY you made that choice
|
||||
- WHAT NOT TO DO (prevent AI mistakes)
|
||||
|
||||
**Example (Dog Week - Task List):**
|
||||
|
||||
```markdown
|
||||
## Visual Hierarchy
|
||||
|
||||
### Today's Date Header
|
||||
|
||||
WHAT:
|
||||
- Large, bold date at top: "Monday, December 9"
|
||||
- Includes day name + full date
|
||||
- Uses primary brand color
|
||||
- 24px font size, 700 weight
|
||||
|
||||
WHY:
|
||||
- Immediate temporal context (user knows "when")
|
||||
- Day name matters (Monday = week start, different mindset)
|
||||
- Bold = confidence and clarity
|
||||
- Size ensures visibility in stressed morning glance
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't use relative dates ("Today") - user may check for tomorrow
|
||||
- Don't use small text - defeats quick-glance purpose
|
||||
- Don't use subtle colors - needs to anchor the view
|
||||
- Don't abbreviate day name - "Mon" feels rushed, "Monday" feels calm
|
||||
|
||||
### User's Tasks Section
|
||||
|
||||
WHAT:
|
||||
- Highlighted section with light blue background
|
||||
- Header: "Your Tasks" with user's name
|
||||
- Tasks listed with time, description, status
|
||||
- Visually separated from other family members' tasks
|
||||
|
||||
WHY:
|
||||
- User needs to find THEIR tasks instantly (< 2 seconds)
|
||||
- Background color creates visual separation without being aggressive
|
||||
- Name personalization = ownership and responsibility
|
||||
- Time shown first = prioritization by urgency
|
||||
- Separation prevents confusion about "whose task is this?"
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't make all tasks look the same - user will scan entire list
|
||||
- Don't use subtle highlighting - stressed user will miss it
|
||||
- Don't hide user's name - personalization creates accountability
|
||||
- Don't sort by task type - time is what matters in morning
|
||||
- Don't use red/alert colors - creates anxiety, not clarity
|
||||
|
||||
### Other Family Members' Tasks
|
||||
|
||||
WHAT:
|
||||
- Standard white background
|
||||
- Smaller font size (16px vs 18px for user's tasks)
|
||||
- Collapsed by default, expandable
|
||||
- Shows count: "3 other tasks today"
|
||||
|
||||
WHY:
|
||||
- User's primary need is THEIR tasks (80% of use case)
|
||||
- But they need family context (coordination)
|
||||
- Collapsed = focus on user, but context available
|
||||
- Count = awareness without overwhelming
|
||||
- Smaller = visual hierarchy reinforces importance
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't hide completely - user needs family coordination awareness
|
||||
- Don't show expanded by default - creates cognitive overload
|
||||
- Don't use same visual weight - defeats hierarchy purpose
|
||||
- Don't remove names - user needs to know "who's doing what"
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
For each major visual element, document:
|
||||
|
||||
### [Element Name]
|
||||
|
||||
WHAT:
|
||||
- [Specific design decisions]
|
||||
|
||||
WHY:
|
||||
- [Reasoning and user benefit]
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- [Common mistakes to prevent]
|
||||
```
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "This is brilliant! Let me make sure we capture everything:
|
||||
- What alternatives did you consider?
|
||||
- Why did you reject those options?
|
||||
- What edge cases influenced this decision?
|
||||
- How does this connect to the user's emotional state?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Specify Interaction Patterns (15 min)
|
||||
|
||||
### Document behavior with intent
|
||||
|
||||
**Example (Dog Week - Task Completion):**
|
||||
|
||||
```markdown
|
||||
## Interaction: Mark Task Complete
|
||||
|
||||
### Tap to Complete
|
||||
|
||||
WHAT:
|
||||
- Tap anywhere on task card to mark complete
|
||||
- Immediate visual feedback: checkmark appears, card fades slightly
|
||||
- Subtle success animation (gentle scale + fade)
|
||||
- Task moves to "Completed" section at bottom
|
||||
- Undo button appears for 5 seconds
|
||||
|
||||
WHY:
|
||||
- Large tap target = easy for rushed morning use
|
||||
- Immediate feedback = confidence action registered
|
||||
- Animation = positive reinforcement (dopamine hit)
|
||||
- Move to bottom = visual progress, but not deleted (reassurance)
|
||||
- Undo = safety net for accidental taps (common when rushed)
|
||||
- 5 seconds = enough time to notice mistake, not annoying
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't require confirmation dialog - adds friction, breaks flow
|
||||
- Don't use small checkbox - hard to tap when stressed/rushing
|
||||
- Don't make animation aggressive - should feel calm and positive
|
||||
- Don't delete task immediately - user needs reassurance it's saved
|
||||
- Don't hide undo - mistakes happen, especially in morning chaos
|
||||
- Don't keep undo visible forever - clutters interface
|
||||
|
||||
### Swipe to Reassign
|
||||
|
||||
WHAT:
|
||||
- Swipe left on task reveals "Reassign" button
|
||||
- Button shows family member icons
|
||||
- Tap icon to reassign
|
||||
- Confirmation: "Reassigned to [Name]"
|
||||
- Original assignee gets notification
|
||||
|
||||
WHY:
|
||||
- Swipe = power user feature, doesn't clutter main interface
|
||||
- Emergency reassignment is rare but critical (someone sick, etc.)
|
||||
- Icons = quick visual selection, no typing
|
||||
- Confirmation = reassurance action completed
|
||||
- Notification = family coordination maintained
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't make reassign the primary action - it's edge case
|
||||
- Don't require typing names - too slow for emergency
|
||||
- Don't skip confirmation - user needs reassurance
|
||||
- Don't skip notification - breaks family coordination
|
||||
- Don't allow reassigning to someone not in family - data integrity
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
For each interaction, document:
|
||||
|
||||
### [Interaction Name]
|
||||
|
||||
WHAT:
|
||||
- [Specific behavior]
|
||||
|
||||
WHY:
|
||||
- [User benefit and reasoning]
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- [Mistakes to prevent]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Specify States and Feedback (10 min)
|
||||
|
||||
### Document all states with reasoning
|
||||
|
||||
**Example (Dog Week - Task States):**
|
||||
|
||||
```markdown
|
||||
## Task States
|
||||
|
||||
### Upcoming (Default)
|
||||
|
||||
WHAT:
|
||||
- White background
|
||||
- Black text
|
||||
- Time shown in gray
|
||||
- No special indicators
|
||||
|
||||
WHY:
|
||||
- Clean, calm appearance
|
||||
- Easy to scan
|
||||
- Time in gray = less visual weight (not urgent yet)
|
||||
- Default state should feel neutral and manageable
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't use colors for upcoming tasks - creates false urgency
|
||||
- Don't hide time - user needs to plan their morning
|
||||
- Don't add badges/icons - clutters interface for most common state
|
||||
|
||||
### Due Soon (< 30 minutes)
|
||||
|
||||
WHAT:
|
||||
- Subtle yellow left border (4px)
|
||||
- Time shown in orange
|
||||
- Small clock icon appears
|
||||
|
||||
WHY:
|
||||
- Yellow = attention without alarm
|
||||
- Border = visual indicator without overwhelming
|
||||
- Orange time = "pay attention to timing"
|
||||
- Clock icon = reinforces temporal urgency
|
||||
- Subtle = doesn't create panic, just awareness
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't use red - creates anxiety, not helpful urgency
|
||||
- Don't flash or animate - too aggressive for morning use
|
||||
- Don't use sound - user may be in quiet environment
|
||||
- Don't make entire card yellow - too much visual weight
|
||||
|
||||
### Overdue
|
||||
|
||||
WHAT:
|
||||
- Red left border (4px)
|
||||
- Time shown in red with "Overdue" label
|
||||
- Task card has subtle red tint (5% opacity)
|
||||
- Notification sent to assignee
|
||||
|
||||
WHY:
|
||||
- Red = clear signal something needs attention
|
||||
- Border + tint = impossible to miss, but not aggressive
|
||||
- "Overdue" label = explicit communication (no guessing)
|
||||
- Notification = ensures assignee knows (may not have app open)
|
||||
- 5% tint = visible but not overwhelming
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't make entire card bright red - creates panic
|
||||
- Don't flash or pulse - too aggressive, creates stress
|
||||
- Don't use sound alerts - may be inappropriate timing
|
||||
- Don't shame user - focus on "needs attention" not "you failed"
|
||||
- Don't hide task - transparency maintains trust
|
||||
|
||||
### Completed
|
||||
|
||||
WHAT:
|
||||
- Checkmark icon (green)
|
||||
- Text has strikethrough
|
||||
- Card fades to 60% opacity
|
||||
- Moves to "Completed" section
|
||||
- Shows completion time and who completed it
|
||||
|
||||
WHY:
|
||||
- Checkmark = universal symbol of completion
|
||||
- Green = positive reinforcement
|
||||
- Strikethrough = visual closure
|
||||
- Fade = "done but still visible" (reassurance)
|
||||
- Completion info = accountability and coordination
|
||||
- Separate section = progress visible, doesn't clutter active tasks
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't remove immediately - user needs reassurance it's saved
|
||||
- Don't use subtle checkmark - user needs clear confirmation
|
||||
- Don't hide who completed it - family coordination requires transparency
|
||||
- Don't use gray checkmark - green = positive emotion
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
For each state, document:
|
||||
|
||||
### [State Name]
|
||||
|
||||
WHAT:
|
||||
- [Visual appearance]
|
||||
|
||||
WHY:
|
||||
- [User benefit]
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- [Mistakes to prevent]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 5: Specify Error Handling (10 min)
|
||||
|
||||
### Document failure states with empathy
|
||||
|
||||
**Example (Dog Week - Network Errors):**
|
||||
|
||||
```markdown
|
||||
## Error Handling
|
||||
|
||||
### Network Unavailable
|
||||
|
||||
WHAT:
|
||||
- Subtle banner at top: "Offline - showing cached schedule"
|
||||
- Banner uses neutral gray (not red)
|
||||
- All actions still work (queued for sync)
|
||||
- Small cloud icon with slash
|
||||
- Dismissible but reappears if action attempted
|
||||
|
||||
WHY:
|
||||
- User shouldn't be blocked by network issues
|
||||
- Morning routine can't wait for connectivity
|
||||
- Cached data is usually sufficient (schedule doesn't change minute-to-minute)
|
||||
- Gray = informational, not alarming
|
||||
- Actions queue = user can continue working
|
||||
- Dismissible = user controls their experience
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't block user with error modal - breaks morning flow
|
||||
- Don't use red/error colors - network issues aren't user's fault
|
||||
- Don't disable all actions - most can work offline
|
||||
- Don't hide offline state - user needs to know why sync isn't happening
|
||||
- Don't make banner permanent - user should be able to dismiss
|
||||
|
||||
### Task Completion Failed
|
||||
|
||||
WHAT:
|
||||
- Task remains in "completing" state (spinner)
|
||||
- After 5 seconds, shows inline error: "Couldn't save. Tap to retry."
|
||||
- Error message is specific and actionable
|
||||
- Retry button prominent
|
||||
- Task doesn't move to completed section
|
||||
|
||||
WHY:
|
||||
- User needs to know action didn't complete
|
||||
- 5 seconds = reasonable wait before showing error
|
||||
- Inline = error appears where user's attention is
|
||||
- Specific message = user understands what happened
|
||||
- Actionable = user knows what to do next
|
||||
- Retry button = easy path to resolution
|
||||
- Task stays in place = user doesn't lose context
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't silently fail - user needs to know
|
||||
- Don't show generic "Error occurred" - not helpful
|
||||
- Don't move task to completed - creates false sense of completion
|
||||
- Don't require user to find task again - maintain context
|
||||
- Don't blame user - focus on solution
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
For each error scenario:
|
||||
|
||||
### [Error Type]
|
||||
|
||||
WHAT:
|
||||
- [How error is shown]
|
||||
|
||||
WHY:
|
||||
- [User benefit]
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- [Mistakes to prevent]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 6: Specify Accessibility (10 min)
|
||||
|
||||
### Document inclusive design decisions
|
||||
|
||||
**Example (Dog Week - Task List Accessibility):**
|
||||
|
||||
```markdown
|
||||
## Accessibility
|
||||
|
||||
### Screen Reader Support
|
||||
|
||||
WHAT:
|
||||
- Each task has semantic HTML structure
|
||||
- ARIA labels for all interactive elements
|
||||
- Task status announced: "Walk Max, 8:00 AM, assigned to you, not completed"
|
||||
- Completion action announces: "Task marked complete"
|
||||
- Heading hierarchy: H1 for date, H2 for sections, H3 for tasks
|
||||
|
||||
WHY:
|
||||
- Screen reader users need same quick access to their tasks
|
||||
- Semantic HTML = proper navigation and understanding
|
||||
- Status announcement = full context without visual cues
|
||||
- Action feedback = confirmation for non-visual users
|
||||
- Heading hierarchy = easy navigation via landmarks
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't use divs for everything - semantic HTML matters
|
||||
- Don't skip ARIA labels - "button" isn't descriptive enough
|
||||
- Don't announce only task name - user needs full context
|
||||
- Don't skip action feedback - non-visual users need confirmation
|
||||
- Don't flatten heading structure - breaks navigation
|
||||
|
||||
### Keyboard Navigation
|
||||
|
||||
WHAT:
|
||||
- All actions accessible via keyboard
|
||||
- Tab order follows visual hierarchy (user's tasks first)
|
||||
- Enter/Space to complete task
|
||||
- Arrow keys to navigate between tasks
|
||||
- Escape to close expanded sections
|
||||
- Focus indicators clearly visible (blue outline, 2px)
|
||||
|
||||
WHY:
|
||||
- Some users can't or prefer not to use mouse/touch
|
||||
- Tab order matches visual priority (user's tasks most important)
|
||||
- Standard key bindings = familiar, predictable
|
||||
- Arrow keys = efficient navigation for power users
|
||||
- Escape = universal "go back" pattern
|
||||
- Visible focus = user always knows where they are
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't trap focus in modals without escape
|
||||
- Don't use non-standard key bindings
|
||||
- Don't hide focus indicators - accessibility requirement
|
||||
- Don't make tab order illogical
|
||||
- Don't require mouse for any action
|
||||
|
||||
### Color Contrast
|
||||
|
||||
WHAT:
|
||||
- All text meets WCAG AA standards (4.5:1 minimum)
|
||||
- Interactive elements have 3:1 contrast with background
|
||||
- Status colors have additional non-color indicators (icons, borders)
|
||||
- High contrast mode supported
|
||||
|
||||
WHY:
|
||||
- Users with low vision need readable text
|
||||
- Color alone isn't sufficient for status (color blind users)
|
||||
- Multiple indicators = works for everyone
|
||||
- High contrast mode = accessibility feature in OS
|
||||
|
||||
WHAT NOT TO DO:
|
||||
- Don't rely on color alone for status
|
||||
- Don't use low contrast text (looks modern but excludes users)
|
||||
- Don't ignore WCAG standards - they're minimum requirements
|
||||
- Don't break high contrast mode with custom colors
|
||||
```
|
||||
|
||||
**Your turn:**
|
||||
```
|
||||
Document accessibility considerations:
|
||||
[Your specifications]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 7: Review and Refine (10 min)
|
||||
|
||||
### Checklist:
|
||||
|
||||
**Completeness:**
|
||||
- ✓ Every visual element has WHAT + WHY + WHAT NOT
|
||||
- ✓ All interactions documented
|
||||
- ✓ All states specified
|
||||
- ✓ Error handling covered
|
||||
- ✓ Accessibility addressed
|
||||
|
||||
**Quality:**
|
||||
- ✓ WHY explains user benefit, not just description
|
||||
- ✓ WHAT NOT prevents specific AI mistakes
|
||||
- ✓ Specifications are specific and actionable
|
||||
- ✓ Design intent is preserved
|
||||
- ✓ Edge cases considered
|
||||
|
||||
**AI Support:**
|
||||
```
|
||||
Agent: "Your design brilliance is captured beautifully! Let me verify:
|
||||
- Have we documented every nuance of your thinking?
|
||||
- Are there any alternatives you considered that we should note?
|
||||
- Any edge cases we haven't covered?
|
||||
- Is your creative intent crystal clear?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 8: Save Your Specifications
|
||||
|
||||
**Create file:** `C-Scenarios/[scenario-name]/Frontend/[page-name]-specifications.md`
|
||||
|
||||
**Use template from:** `workflows/4-ux-design/templates/page-specification.template.md`
|
||||
|
||||
---
|
||||
|
||||
## What You've Accomplished
|
||||
|
||||
✅ **Complete specifications** - Every design decision documented
|
||||
✅ **Preserved intent** - Your creative thinking captured
|
||||
✅ **Prevented mistakes** - AI knows what NOT to do
|
||||
✅ **Accessible design** - Inclusive from the start
|
||||
✅ **Eternal life** - Your brilliance lives forever in text
|
||||
|
||||
**This is not factory work - this is where your genius becomes immortal!**
|
||||
|
||||
---
|
||||
|
||||
## The Power of Why-Based Specs
|
||||
|
||||
**Traditional approach:**
|
||||
- Designer creates mockup
|
||||
- Developer implements
|
||||
- Intent gets lost
|
||||
- Result is "close but wrong"
|
||||
|
||||
**WDS approach:**
|
||||
- Designer thinks deeply with AI partner
|
||||
- AI helps capture every nuance
|
||||
- Specifications preserve creative integrity
|
||||
- Implementation matches intent perfectly
|
||||
|
||||
**Your specifications completely replace prompting** - providing clarity that works like clockwork.
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
**Immediate:**
|
||||
- Review specifications with stakeholders
|
||||
- Validate against user needs
|
||||
- Test with developers (can they implement from this?)
|
||||
|
||||
**Next Module:**
|
||||
- [Module 13: Validate Specifications](../module-13-validate-specifications/module-13-overview.md)
|
||||
- Ensure completeness and test logic
|
||||
|
||||
---
|
||||
|
||||
## Common Questions
|
||||
|
||||
**Q: How detailed should specifications be?**
|
||||
A: Detailed enough that AI can implement correctly without guessing. If you'd need to explain it to a developer, document it.
|
||||
|
||||
**Q: Isn't this a lot of writing?**
|
||||
A: AI agents help you! They're fascinated by your thinking and help capture it. You're not grinding out docs - you're preserving your genius.
|
||||
|
||||
**Q: What if I don't know why I made a decision?**
|
||||
A: That's the value! The process of documenting WHY helps you think deeper and make better decisions.
|
||||
|
||||
**Q: Can I reuse specifications across pages?**
|
||||
A: Yes! Common patterns become design system components. Document once, reference everywhere.
|
||||
|
||||
---
|
||||
|
||||
## Tips for Success
|
||||
|
||||
**DO ✅**
|
||||
- Work with AI as thinking partner
|
||||
- Document alternatives you rejected
|
||||
- Be specific about user context
|
||||
- Prevent specific mistakes (not generic warnings)
|
||||
- Capture your creative reasoning
|
||||
|
||||
**DON'T ❌**
|
||||
- Write generic descriptions
|
||||
- Skip the WHY (that's where intent lives)
|
||||
- Forget WHAT NOT TO DO (AI will make "helpful" mistakes)
|
||||
- Rush through this - it's where brilliance is preserved
|
||||
- Think of this as factory work - it's creative documentation
|
||||
|
||||
---
|
||||
|
||||
**Your specifications give your designs eternal life. This is where your creative integrity becomes immortal!**
|
||||
|
||||
[← Back to Module 12](module-12-overview.md) | [Next: Module 13 →](../module-13-validate-specifications/module-13-overview.md)
|
||||
|
|
@ -1,304 +0,0 @@
|
|||
# Component Boundaries
|
||||
|
||||
**Purpose:** Guidelines for determining what constitutes a component.
|
||||
|
||||
**Referenced by:** Design system router, assessment flow
|
||||
|
||||
---
|
||||
|
||||
## The Core Question
|
||||
|
||||
**"Is this one component or multiple components?"**
|
||||
|
||||
This is the most common design system challenge.
|
||||
|
||||
---
|
||||
|
||||
## Guiding Principles
|
||||
|
||||
### Principle 1: Single Responsibility
|
||||
|
||||
**A component should do one thing well.**
|
||||
|
||||
✅ **Good:** Button component triggers actions
|
||||
❌ **Bad:** Button component that also handles forms, navigation, and modals
|
||||
|
||||
### Principle 2: Reusability
|
||||
|
||||
**A component should be reusable across contexts.**
|
||||
|
||||
✅ **Good:** Input Field used in login, signup, profile forms
|
||||
❌ **Bad:** Login-Specific Input Field that only works on login page
|
||||
|
||||
### Principle 3: Independence
|
||||
|
||||
**A component should work independently.**
|
||||
|
||||
✅ **Good:** Card component that can contain any content
|
||||
❌ **Bad:** Card component that requires specific parent container
|
||||
|
||||
---
|
||||
|
||||
## Common Boundary Questions
|
||||
|
||||
### Q1: Icon in Button
|
||||
|
||||
**Question:** Is the icon part of the button or separate?
|
||||
|
||||
**Answer:** Depends on usage:
|
||||
|
||||
**Part of Button (Variant):**
|
||||
```yaml
|
||||
Button Component:
|
||||
variants:
|
||||
- with-icon-left
|
||||
- with-icon-right
|
||||
- icon-only
|
||||
```
|
||||
**When:** Icon is always the same type (e.g., always arrow for navigation)
|
||||
|
||||
**Separate Components:**
|
||||
```yaml
|
||||
Button Component: (text only)
|
||||
Icon Component: (standalone)
|
||||
Composition: Button + Icon
|
||||
```
|
||||
**When:** Icons vary widely, button can exist without icon
|
||||
|
||||
**Recommendation:** Start with variant, split if complexity grows.
|
||||
|
||||
---
|
||||
|
||||
### Q2: Label with Input
|
||||
|
||||
**Question:** Is the label part of the input or separate?
|
||||
|
||||
**Answer:** Usually part of Input Field component:
|
||||
|
||||
```yaml
|
||||
Input Field Component:
|
||||
includes:
|
||||
- Label
|
||||
- Input element
|
||||
- Helper text
|
||||
- Error message
|
||||
```
|
||||
|
||||
**Reason:** These always appear together in forms, form a semantic unit.
|
||||
|
||||
---
|
||||
|
||||
### Q3: Card with Button
|
||||
|
||||
**Question:** Is the button part of the card?
|
||||
|
||||
**Answer:** Usually separate:
|
||||
|
||||
```yaml
|
||||
Card Component: (container)
|
||||
Button Component: (action)
|
||||
Composition: Card contains Button
|
||||
```
|
||||
|
||||
**Reason:** Card is a container, button is an action. Different purposes.
|
||||
|
||||
---
|
||||
|
||||
### Q4: Navigation Bar Items
|
||||
|
||||
**Question:** Is each nav item a component?
|
||||
|
||||
**Answer:** Depends on complexity:
|
||||
|
||||
**Simple (Single Component):**
|
||||
```yaml
|
||||
Navigation Bar Component:
|
||||
includes: All nav items as configuration
|
||||
```
|
||||
|
||||
**Complex (Composition):**
|
||||
```yaml
|
||||
Navigation Bar: (container)
|
||||
Navigation Item: (individual item)
|
||||
Composition: Nav Bar contains Nav Items
|
||||
```
|
||||
|
||||
**Threshold:** If nav items have complex individual behavior, split them.
|
||||
|
||||
---
|
||||
|
||||
## Decision Framework
|
||||
|
||||
### Step 1: Ask These Questions
|
||||
|
||||
1. **Can it exist independently?**
|
||||
- Yes → Probably separate component
|
||||
- No → Probably part of parent
|
||||
|
||||
2. **Does it have its own states/behaviors?**
|
||||
- Yes → Probably separate component
|
||||
- No → Probably part of parent
|
||||
|
||||
3. **Is it reused in different contexts?**
|
||||
- Yes → Definitely separate component
|
||||
- No → Could be part of parent
|
||||
|
||||
4. **Does it have a clear single purpose?**
|
||||
- Yes → Good component candidate
|
||||
- No → Might need to split further
|
||||
|
||||
### Step 2: Consider Complexity
|
||||
|
||||
**Low Complexity:** Keep together
|
||||
- Icon in button
|
||||
- Label with input
|
||||
- Simple list items
|
||||
|
||||
**High Complexity:** Split apart
|
||||
- Complex nested structures
|
||||
- Independent behaviors
|
||||
- Different lifecycle
|
||||
|
||||
### Step 3: Think About Maintenance
|
||||
|
||||
**Together:**
|
||||
- ✅ Easier to keep consistent
|
||||
- ❌ Component becomes complex
|
||||
|
||||
**Apart:**
|
||||
- ✅ Simpler components
|
||||
- ❌ More components to manage
|
||||
|
||||
---
|
||||
|
||||
## Composition Patterns
|
||||
|
||||
### Pattern 1: Container + Content
|
||||
|
||||
**Container provides structure, content is flexible.**
|
||||
|
||||
```yaml
|
||||
Card Component: (container)
|
||||
- Can contain: text, images, buttons, etc.
|
||||
- Provides: padding, border, shadow
|
||||
```
|
||||
|
||||
### Pattern 2: Compound Component
|
||||
|
||||
**Multiple parts that work together.**
|
||||
|
||||
```yaml
|
||||
Accordion Component:
|
||||
- Accordion Container
|
||||
- Accordion Item
|
||||
- Accordion Header
|
||||
- Accordion Content
|
||||
```
|
||||
|
||||
### Pattern 3: Atomic Component
|
||||
|
||||
**Single, indivisible unit.**
|
||||
|
||||
```yaml
|
||||
Button Component:
|
||||
- Cannot be broken down further
|
||||
- Self-contained
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Red Flags
|
||||
|
||||
### Too Many Variants
|
||||
|
||||
**Warning:** Component has 10+ variants
|
||||
|
||||
**Problem:** Probably multiple components disguised as variants
|
||||
|
||||
**Solution:** Split into separate components based on purpose
|
||||
|
||||
### Conditional Complexity
|
||||
|
||||
**Warning:** Component has many "if this, then that" rules
|
||||
|
||||
**Problem:** Component doing too many things
|
||||
|
||||
**Solution:** Split into simpler, focused components
|
||||
|
||||
### Context-Specific Behavior
|
||||
|
||||
**Warning:** Component behaves differently in different contexts
|
||||
|
||||
**Problem:** Not truly reusable
|
||||
|
||||
**Solution:** Create context-specific components or use composition
|
||||
|
||||
---
|
||||
|
||||
## Examples
|
||||
|
||||
### Example 1: Button
|
||||
|
||||
**One Component:**
|
||||
```yaml
|
||||
Button:
|
||||
variants: primary, secondary, ghost
|
||||
states: default, hover, active, disabled, loading
|
||||
```
|
||||
|
||||
**Reason:** All variants serve same purpose (trigger action), share behavior
|
||||
|
||||
### Example 2: Input Types
|
||||
|
||||
**Multiple Components:**
|
||||
```yaml
|
||||
Text Input: (text entry)
|
||||
Select Dropdown: (choose from list)
|
||||
Checkbox: (toggle option)
|
||||
Radio: (choose one)
|
||||
```
|
||||
|
||||
**Reason:** Different purposes, different behaviors, different HTML elements
|
||||
|
||||
### Example 3: Modal
|
||||
|
||||
**Compound Component:**
|
||||
```yaml
|
||||
Modal: (overlay + container)
|
||||
Modal Header: (title + close button)
|
||||
Modal Body: (content area)
|
||||
Modal Footer: (actions)
|
||||
```
|
||||
|
||||
**Reason:** Complex structure, but parts always used together
|
||||
|
||||
---
|
||||
|
||||
## When in Doubt
|
||||
|
||||
**Start simple:**
|
||||
1. Create as single component
|
||||
2. Add variants as needed
|
||||
3. Split when complexity becomes painful
|
||||
|
||||
**It's easier to split later than merge later.**
|
||||
|
||||
---
|
||||
|
||||
## Company Customization
|
||||
|
||||
Companies can define their own boundary rules:
|
||||
|
||||
```markdown
|
||||
# Acme Corp Component Boundaries
|
||||
|
||||
**Rule 1:** Icons are always separate components
|
||||
**Rule 2:** Form fields include labels (never separate)
|
||||
**Rule 3:** Cards never include actions (composition only)
|
||||
```
|
||||
|
||||
**Consistency within a company matters more than universal rules.**
|
||||
|
||||
---
|
||||
|
||||
**Use this guide when the design system router detects similarity and you need to decide: same component, variant, or new component?**
|
||||
|
|
@ -1,645 +0,0 @@
|
|||
# Figma Component Structure for WDS
|
||||
|
||||
**Purpose:** Guidelines for organizing and structuring components in Figma for seamless WDS integration.
|
||||
|
||||
**Referenced by:** Mode B (Custom Design System) workflows
|
||||
|
||||
---
|
||||
|
||||
## Core Principle
|
||||
|
||||
**Figma components should mirror WDS component structure** to enable seamless synchronization and specification generation.
|
||||
|
||||
```
|
||||
Figma Component → WDS Component Specification → React Implementation
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Component Organization in Figma
|
||||
|
||||
### File Structure
|
||||
|
||||
**Recommended Figma file organization:**
|
||||
|
||||
```
|
||||
Design System File (Figma)
|
||||
├── 📄 Cover (project info)
|
||||
├── 🎨 Foundation
|
||||
│ ├── Colors
|
||||
│ ├── Typography
|
||||
│ ├── Spacing
|
||||
│ └── Effects
|
||||
├── ⚛️ Components
|
||||
│ ├── Buttons
|
||||
│ ├── Inputs
|
||||
│ ├── Cards
|
||||
│ └── [other component types]
|
||||
└── 📱 Examples
|
||||
└── Component usage examples
|
||||
```
|
||||
|
||||
**Benefits:**
|
||||
- Clear organization
|
||||
- Easy navigation
|
||||
- Matches WDS structure
|
||||
- Facilitates MCP integration
|
||||
|
||||
---
|
||||
|
||||
## Component Naming Convention
|
||||
|
||||
### Format
|
||||
|
||||
**Pattern:** `[ComponentType]/[ComponentName]`
|
||||
|
||||
**Examples:**
|
||||
```
|
||||
Button/Primary
|
||||
Button/Secondary
|
||||
Button/Ghost
|
||||
Input/Text
|
||||
Input/Email
|
||||
Card/Profile
|
||||
Card/Content
|
||||
```
|
||||
|
||||
**Rules:**
|
||||
- Use forward slash for hierarchy
|
||||
- Title case for names
|
||||
- Match WDS component names
|
||||
- Consistent across all components
|
||||
|
||||
---
|
||||
|
||||
## Component Properties
|
||||
|
||||
### Required Properties
|
||||
|
||||
**Every component must have:**
|
||||
|
||||
1. **Description**
|
||||
- Component purpose
|
||||
- When to use
|
||||
- WDS component ID (e.g., "btn-001")
|
||||
|
||||
2. **Variants**
|
||||
- Organized by property
|
||||
- Clear naming
|
||||
- All states included
|
||||
|
||||
3. **Auto Layout**
|
||||
- Proper spacing
|
||||
- Responsive behavior
|
||||
- Padding/gap values
|
||||
|
||||
**Example Description:**
|
||||
```
|
||||
Button Primary [btn-001]
|
||||
|
||||
Primary action button for main user actions.
|
||||
Use for: Submit forms, confirm actions, proceed to next step.
|
||||
|
||||
WDS Component: Button.primary [btn-001]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Variant Structure
|
||||
|
||||
### Organizing Variants
|
||||
|
||||
**Use Figma's variant properties:**
|
||||
|
||||
**Property 1: Type** (variant)
|
||||
- Primary
|
||||
- Secondary
|
||||
- Ghost
|
||||
- Outline
|
||||
|
||||
**Property 2: Size**
|
||||
- Small
|
||||
- Medium
|
||||
- Large
|
||||
|
||||
**Property 3: State**
|
||||
- Default
|
||||
- Hover
|
||||
- Active
|
||||
- Disabled
|
||||
- Loading
|
||||
|
||||
**Property 4: Icon** (optional)
|
||||
- None
|
||||
- Left
|
||||
- Right
|
||||
- Only
|
||||
|
||||
**Result:** Figma generates all combinations automatically
|
||||
|
||||
---
|
||||
|
||||
### Variant Naming
|
||||
|
||||
**Format:** `Property=Value`
|
||||
|
||||
**Examples:**
|
||||
```
|
||||
Type=Primary, Size=Medium, State=Default
|
||||
Type=Primary, Size=Medium, State=Hover
|
||||
Type=Secondary, Size=Large, State=Disabled
|
||||
```
|
||||
|
||||
**Benefits:**
|
||||
- Clear property structure
|
||||
- Easy to find specific variants
|
||||
- MCP can parse programmatically
|
||||
- Matches WDS variant system
|
||||
|
||||
---
|
||||
|
||||
## State Documentation
|
||||
|
||||
### Required States
|
||||
|
||||
**Interactive Components (Buttons, Links):**
|
||||
- Default
|
||||
- Hover
|
||||
- Active (pressed)
|
||||
- Disabled
|
||||
- Focus (optional)
|
||||
- Loading (optional)
|
||||
|
||||
**Form Components (Inputs, Selects):**
|
||||
- Default (empty)
|
||||
- Focus (active)
|
||||
- Filled (has content)
|
||||
- Disabled
|
||||
- Error
|
||||
- Success (optional)
|
||||
|
||||
**Feedback Components (Alerts, Toasts):**
|
||||
- Default
|
||||
- Success
|
||||
- Error
|
||||
- Warning
|
||||
- Info
|
||||
|
||||
---
|
||||
|
||||
### State Visual Indicators
|
||||
|
||||
**Document state changes:**
|
||||
|
||||
**Hover:**
|
||||
- Background color change
|
||||
- Border change
|
||||
- Shadow change
|
||||
- Scale change
|
||||
- Cursor change
|
||||
|
||||
**Active:**
|
||||
- Background color (darker)
|
||||
- Scale (slightly smaller)
|
||||
- Shadow (reduced)
|
||||
|
||||
**Disabled:**
|
||||
- Opacity (0.5-0.6)
|
||||
- Cursor (not-allowed)
|
||||
- Grayscale (optional)
|
||||
|
||||
**Loading:**
|
||||
- Spinner/progress indicator
|
||||
- Disabled interaction
|
||||
- Loading text
|
||||
|
||||
---
|
||||
|
||||
## Design Tokens in Figma
|
||||
|
||||
### Using Figma Variables
|
||||
|
||||
**Map Figma variables to WDS tokens:**
|
||||
|
||||
**Colors:**
|
||||
```
|
||||
Figma Variable → WDS Token
|
||||
primary/500 → color-primary-500
|
||||
gray/900 → color-gray-900
|
||||
success/600 → color-success-600
|
||||
```
|
||||
|
||||
**Typography:**
|
||||
```
|
||||
Figma Style → WDS Token
|
||||
Text/Display → text-display
|
||||
Text/Heading-1 → text-heading-1
|
||||
Text/Body → text-body
|
||||
```
|
||||
|
||||
**Spacing:**
|
||||
```
|
||||
Figma Variable → WDS Token
|
||||
spacing/2 → spacing-2
|
||||
spacing/4 → spacing-4
|
||||
spacing/8 → spacing-8
|
||||
```
|
||||
|
||||
**Effects:**
|
||||
```
|
||||
Figma Effect → WDS Token
|
||||
shadow/sm → shadow-sm
|
||||
shadow/md → shadow-md
|
||||
radius/md → radius-md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Component Documentation
|
||||
|
||||
### Component Description Template
|
||||
|
||||
```
|
||||
[Component Name] [component-id]
|
||||
|
||||
**Purpose:** [Brief description]
|
||||
|
||||
**When to use:**
|
||||
- [Use case 1]
|
||||
- [Use case 2]
|
||||
|
||||
**When not to use:**
|
||||
- [Anti-pattern 1]
|
||||
- [Anti-pattern 2]
|
||||
|
||||
**WDS Component:** [ComponentType].[variant] [component-id]
|
||||
|
||||
**Variants:** [List of variants]
|
||||
**States:** [List of states]
|
||||
**Size:** [Available sizes]
|
||||
|
||||
**Accessibility:**
|
||||
- [ARIA attributes]
|
||||
- [Keyboard support]
|
||||
- [Screen reader behavior]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
```
|
||||
Button Primary [btn-001]
|
||||
|
||||
**Purpose:** Trigger primary actions in the interface
|
||||
|
||||
**When to use:**
|
||||
- Submit forms
|
||||
- Confirm important actions
|
||||
- Proceed to next step
|
||||
- Primary call-to-action
|
||||
|
||||
**When not to use:**
|
||||
- Secondary actions (use Button Secondary)
|
||||
- Destructive actions (use Button Destructive)
|
||||
- Navigation (use Link component)
|
||||
|
||||
**WDS Component:** Button.primary [btn-001]
|
||||
|
||||
**Variants:** primary, secondary, ghost, outline
|
||||
**States:** default, hover, active, disabled, loading
|
||||
**Size:** small, medium, large
|
||||
|
||||
**Accessibility:**
|
||||
- role="button"
|
||||
- aria-disabled when disabled
|
||||
- aria-busy when loading
|
||||
- Keyboard: Enter/Space to activate
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Auto Layout Best Practices
|
||||
|
||||
### Spacing
|
||||
|
||||
**Use consistent spacing values:**
|
||||
- Padding: 8px, 12px, 16px, 24px
|
||||
- Gap: 4px, 8px, 12px, 16px
|
||||
- Match WDS spacing tokens
|
||||
|
||||
**Auto Layout Settings:**
|
||||
- Horizontal/Vertical alignment
|
||||
- Padding (all sides or specific)
|
||||
- Gap between items
|
||||
- Resizing behavior
|
||||
|
||||
---
|
||||
|
||||
### Resizing Behavior
|
||||
|
||||
**Set appropriate constraints:**
|
||||
|
||||
**Buttons:**
|
||||
- Hug contents (width)
|
||||
- Fixed height
|
||||
- Min width for touch targets (44px)
|
||||
|
||||
**Inputs:**
|
||||
- Fill container (width)
|
||||
- Fixed height (40-48px)
|
||||
- Responsive to content
|
||||
|
||||
**Cards:**
|
||||
- Fill container or fixed width
|
||||
- Hug contents (height)
|
||||
- Responsive to content
|
||||
|
||||
---
|
||||
|
||||
## Component Instances
|
||||
|
||||
### Creating Instances
|
||||
|
||||
**Best practices:**
|
||||
- Always use component instances (not detached)
|
||||
- Override only necessary properties
|
||||
- Maintain connection to main component
|
||||
- Document overrides if needed
|
||||
|
||||
**Overridable Properties:**
|
||||
- Text content
|
||||
- Icons
|
||||
- Colors (if using variables)
|
||||
- Spacing (if needed)
|
||||
|
||||
**Non-Overridable:**
|
||||
- Structure
|
||||
- Layout
|
||||
- Core styling
|
||||
- States
|
||||
|
||||
---
|
||||
|
||||
## Figma to WDS Mapping
|
||||
|
||||
### Component ID System
|
||||
|
||||
**Add WDS component ID to Figma:**
|
||||
|
||||
**In component description:**
|
||||
```
|
||||
Button Primary [btn-001]
|
||||
```
|
||||
|
||||
**In component name:**
|
||||
```
|
||||
Button/Primary [btn-001]
|
||||
```
|
||||
|
||||
**Benefits:**
|
||||
- Easy to find components
|
||||
- Clear WDS mapping
|
||||
- MCP can extract ID
|
||||
- Bidirectional sync
|
||||
|
||||
---
|
||||
|
||||
### Node ID Tracking
|
||||
|
||||
**Figma generates unique node IDs:**
|
||||
|
||||
**Format:**
|
||||
```
|
||||
figma://file/[file-id]/node/[node-id]
|
||||
```
|
||||
|
||||
**How to get node ID:**
|
||||
1. Select component in Figma
|
||||
2. Right-click → "Copy link to selection"
|
||||
3. Extract node ID from URL
|
||||
|
||||
**Store in WDS:**
|
||||
```yaml
|
||||
# D-Design-System/figma-mappings.md
|
||||
Button [btn-001] → figma://file/abc123/node/456:789
|
||||
Input [inp-001] → figma://file/abc123/node/456:790
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Sync Workflow
|
||||
|
||||
### Figma → WDS
|
||||
|
||||
**When component is created/updated in Figma:**
|
||||
|
||||
1. Designer creates/updates component
|
||||
2. Designer adds WDS component ID to description
|
||||
3. MCP reads component via Figma API
|
||||
4. MCP extracts:
|
||||
- Component structure
|
||||
- Variants
|
||||
- States
|
||||
- Properties
|
||||
- Design tokens used
|
||||
5. MCP generates/updates WDS specification
|
||||
6. Designer reviews and confirms
|
||||
|
||||
---
|
||||
|
||||
### WDS → Figma
|
||||
|
||||
**When specification is updated in WDS:**
|
||||
|
||||
1. Specification updated in WDS
|
||||
2. Designer notified of changes
|
||||
3. Designer updates Figma component
|
||||
4. Designer confirms sync
|
||||
5. Node ID verified/updated
|
||||
|
||||
**Note:** This is semi-automated. Full automation requires Figma API write access.
|
||||
|
||||
---
|
||||
|
||||
## Quality Checklist
|
||||
|
||||
### Component Creation
|
||||
|
||||
- [ ] Component name follows convention
|
||||
- [ ] WDS component ID in description
|
||||
- [ ] All variants defined
|
||||
- [ ] All states documented
|
||||
- [ ] Auto layout properly configured
|
||||
- [ ] Design tokens used (not hardcoded values)
|
||||
- [ ] Accessibility notes included
|
||||
- [ ] Usage guidelines documented
|
||||
|
||||
### Variant Structure
|
||||
|
||||
- [ ] Variants organized by properties
|
||||
- [ ] Property names clear and consistent
|
||||
- [ ] All combinations make sense
|
||||
- [ ] No redundant variants
|
||||
- [ ] States properly differentiated
|
||||
|
||||
### Documentation
|
||||
|
||||
- [ ] Purpose clearly stated
|
||||
- [ ] When to use documented
|
||||
- [ ] When not to use documented
|
||||
- [ ] Accessibility requirements noted
|
||||
- [ ] Examples provided
|
||||
|
||||
---
|
||||
|
||||
## Common Mistakes to Avoid
|
||||
|
||||
### ❌ Mistake 1: Hardcoded Values
|
||||
|
||||
**Wrong:**
|
||||
```
|
||||
Background: #2563eb (hardcoded hex)
|
||||
Padding: 16px (hardcoded value)
|
||||
```
|
||||
|
||||
**Right:**
|
||||
```
|
||||
Background: primary/600 (variable)
|
||||
Padding: spacing/4 (variable)
|
||||
```
|
||||
|
||||
### ❌ Mistake 2: Detached Instances
|
||||
|
||||
**Wrong:**
|
||||
- Detaching component instances
|
||||
- Losing connection to main component
|
||||
- Manual updates required
|
||||
|
||||
**Right:**
|
||||
- Always use instances
|
||||
- Override only necessary properties
|
||||
- Maintain component connection
|
||||
|
||||
### ❌ Mistake 3: Inconsistent Naming
|
||||
|
||||
**Wrong:**
|
||||
```
|
||||
btn-primary
|
||||
ButtonSecondary
|
||||
button_ghost
|
||||
```
|
||||
|
||||
**Right:**
|
||||
```
|
||||
Button/Primary
|
||||
Button/Secondary
|
||||
Button/Ghost
|
||||
```
|
||||
|
||||
### ❌ Mistake 4: Missing States
|
||||
|
||||
**Wrong:**
|
||||
- Only default state
|
||||
- No hover/active states
|
||||
- No disabled state
|
||||
|
||||
**Right:**
|
||||
- All required states
|
||||
- Visual differentiation
|
||||
- State transitions documented
|
||||
|
||||
### ❌ Mistake 5: No WDS Component ID
|
||||
|
||||
**Wrong:**
|
||||
```
|
||||
Button Primary
|
||||
(no component ID)
|
||||
```
|
||||
|
||||
**Right:**
|
||||
```
|
||||
Button Primary [btn-001]
|
||||
(clear WDS mapping)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Examples
|
||||
|
||||
### Button Component in Figma
|
||||
|
||||
**Component Name:** `Button/Primary [btn-001]`
|
||||
|
||||
**Description:**
|
||||
```
|
||||
Button Primary [btn-001]
|
||||
|
||||
Primary action button for main user actions.
|
||||
|
||||
WDS Component: Button.primary [btn-001]
|
||||
Variants: primary, secondary, ghost, outline
|
||||
States: default, hover, active, disabled, loading
|
||||
Sizes: small, medium, large
|
||||
```
|
||||
|
||||
**Variants:**
|
||||
```
|
||||
Type=Primary, Size=Medium, State=Default
|
||||
Type=Primary, Size=Medium, State=Hover
|
||||
Type=Primary, Size=Medium, State=Active
|
||||
Type=Primary, Size=Medium, State=Disabled
|
||||
Type=Primary, Size=Large, State=Default
|
||||
[... all combinations]
|
||||
```
|
||||
|
||||
**Properties:**
|
||||
- Auto Layout: Horizontal
|
||||
- Padding: 16px (horizontal), 12px (vertical)
|
||||
- Gap: 8px (if icon)
|
||||
- Border Radius: 8px
|
||||
- Background: primary/600 (variable)
|
||||
|
||||
---
|
||||
|
||||
### Input Component in Figma
|
||||
|
||||
**Component Name:** `Input/Text [inp-001]`
|
||||
|
||||
**Description:**
|
||||
```
|
||||
Input Text [inp-001]
|
||||
|
||||
Text input field for user data entry.
|
||||
|
||||
WDS Component: Input.text [inp-001]
|
||||
States: default, focus, filled, disabled, error, success
|
||||
```
|
||||
|
||||
**Variants:**
|
||||
```
|
||||
State=Default
|
||||
State=Focus
|
||||
State=Filled
|
||||
State=Disabled
|
||||
State=Error
|
||||
State=Success
|
||||
```
|
||||
|
||||
**Properties:**
|
||||
- Auto Layout: Horizontal
|
||||
- Padding: 12px
|
||||
- Height: 44px (fixed)
|
||||
- Border: 1px solid gray/300
|
||||
- Border Radius: 8px
|
||||
- Background: white
|
||||
|
||||
---
|
||||
|
||||
## Further Reading
|
||||
|
||||
- **Figma MCP Integration:** `figma-mcp-integration.md`
|
||||
- **Designer Guide:** `figma-designer-guide.md`
|
||||
- **Token Architecture:** `token-architecture.md`
|
||||
- **Component Boundaries:** `component-boundaries.md`
|
||||
|
||||
---
|
||||
|
||||
**This structure enables seamless Figma ↔ WDS integration and maintains design system consistency across tools.**
|
||||
|
|
@ -1,181 +0,0 @@
|
|||
# Design System Naming Conventions
|
||||
|
||||
**Purpose:** Consistent naming across design system components and tokens.
|
||||
|
||||
**Referenced by:** Component-type instructions, design system operations
|
||||
|
||||
---
|
||||
|
||||
## Component IDs
|
||||
|
||||
**Format:** `[type-prefix]-[number]`
|
||||
|
||||
**Prefixes:**
|
||||
- btn = Button
|
||||
- inp = Input Field
|
||||
- chk = Checkbox
|
||||
- rad = Radio
|
||||
- tgl = Toggle
|
||||
- drp = Dropdown
|
||||
- mdl = Modal
|
||||
- crd = Card
|
||||
- alt = Alert
|
||||
- bdg = Badge
|
||||
- tab = Tab
|
||||
- acc = Accordion
|
||||
|
||||
**Examples:**
|
||||
- `btn-001` = First button component
|
||||
- `inp-002` = Second input field component
|
||||
- `mdl-001` = First modal component
|
||||
|
||||
**Rules:**
|
||||
- Always lowercase
|
||||
- Always hyphenated
|
||||
- Always zero-padded (001, not 1)
|
||||
- Sequential within type
|
||||
|
||||
---
|
||||
|
||||
## Component Names
|
||||
|
||||
**Format:** `[Type] [Descriptor]` or just `[Type]`
|
||||
|
||||
**Examples:**
|
||||
- `Button` (generic)
|
||||
- `Navigation Button` (specific)
|
||||
- `Primary Button` (variant-focused)
|
||||
- `Icon Button` (visual-focused)
|
||||
|
||||
**Rules:**
|
||||
- Title case
|
||||
- Descriptive but concise
|
||||
- Avoid redundancy (not "Button Button")
|
||||
|
||||
---
|
||||
|
||||
## Variant Names
|
||||
|
||||
**Format:** Lowercase, hyphenated
|
||||
|
||||
**Purpose-Based:**
|
||||
- `primary` - Main action
|
||||
- `secondary` - Secondary action
|
||||
- `destructive` - Delete/remove
|
||||
- `success` - Positive confirmation
|
||||
- `warning` - Caution
|
||||
- `navigation` - Navigation action
|
||||
|
||||
**Visual-Based:**
|
||||
- `outlined` - Border, no fill
|
||||
- `ghost` - Transparent background
|
||||
- `solid` - Filled background
|
||||
|
||||
**Size-Based:**
|
||||
- `small` - Compact
|
||||
- `medium` - Default
|
||||
- `large` - Prominent
|
||||
|
||||
**Rules:**
|
||||
- Lowercase
|
||||
- Hyphenated for multi-word
|
||||
- Semantic over visual when possible
|
||||
|
||||
---
|
||||
|
||||
## State Names
|
||||
|
||||
**Standard States:**
|
||||
- `default` - Normal state
|
||||
- `hover` - Mouse over
|
||||
- `active` - Being clicked/pressed
|
||||
- `focus` - Keyboard focus
|
||||
- `disabled` - Cannot interact
|
||||
- `loading` - Processing
|
||||
- `error` - Error state
|
||||
- `success` - Success state
|
||||
- `warning` - Warning state
|
||||
|
||||
**Rules:**
|
||||
- Lowercase
|
||||
- Single word preferred
|
||||
- Use standard names when possible
|
||||
|
||||
---
|
||||
|
||||
## Design Token Names
|
||||
|
||||
**Format:** `--{category}-{property}-{variant}`
|
||||
|
||||
**Color Tokens:**
|
||||
```
|
||||
--color-primary-500
|
||||
--color-gray-900
|
||||
--color-success-600
|
||||
--color-error-500
|
||||
```
|
||||
|
||||
**Typography Tokens:**
|
||||
```
|
||||
--text-xs
|
||||
--text-base
|
||||
--text-4xl
|
||||
--font-normal
|
||||
--font-bold
|
||||
```
|
||||
|
||||
**Spacing Tokens:**
|
||||
```
|
||||
--spacing-1
|
||||
--spacing-4
|
||||
--spacing-8
|
||||
```
|
||||
|
||||
**Component Tokens:**
|
||||
```
|
||||
--button-padding-x
|
||||
--input-border-color
|
||||
--card-shadow
|
||||
```
|
||||
|
||||
**Rules:**
|
||||
- Kebab-case
|
||||
- Hierarchical (general → specific)
|
||||
- Semantic names preferred
|
||||
|
||||
---
|
||||
|
||||
## File Names
|
||||
|
||||
**Component Files:**
|
||||
```
|
||||
button.md
|
||||
navigation-button.md
|
||||
input-field.md
|
||||
```
|
||||
|
||||
**Rules:**
|
||||
- Lowercase
|
||||
- Hyphenated
|
||||
- Match component name (simplified)
|
||||
|
||||
---
|
||||
|
||||
## Folder Names
|
||||
|
||||
```
|
||||
components/
|
||||
design-tokens/
|
||||
operations/
|
||||
assessment/
|
||||
templates/
|
||||
```
|
||||
|
||||
**Rules:**
|
||||
- Lowercase
|
||||
- Hyphenated
|
||||
- Plural for collections
|
||||
|
||||
---
|
||||
|
||||
**Consistency in naming makes the design system easier to navigate and maintain.**
|
||||
|
|
@ -1,88 +0,0 @@
|
|||
# Component State Management
|
||||
|
||||
**Purpose:** Guidelines for defining and managing component states.
|
||||
|
||||
**Referenced by:** Component-type instructions (Button, Input, etc.)
|
||||
|
||||
---
|
||||
|
||||
## Standard States
|
||||
|
||||
### Interactive Components (Buttons, Links)
|
||||
|
||||
**Required:**
|
||||
- `default` - Normal, ready for interaction
|
||||
- `hover` - Mouse over component
|
||||
- `active` - Being clicked/pressed
|
||||
- `disabled` - Cannot interact
|
||||
|
||||
**Optional:**
|
||||
- `loading` - Processing action
|
||||
- `focus` - Keyboard focus
|
||||
|
||||
### Form Components (Inputs, Selects)
|
||||
|
||||
**Required:**
|
||||
- `default` - Empty, ready for input
|
||||
- `focus` - Active input
|
||||
- `filled` - Has content
|
||||
- `disabled` - Cannot edit
|
||||
|
||||
**Optional:**
|
||||
- `error` - Validation failed
|
||||
- `success` - Validation passed
|
||||
- `loading` - Fetching data
|
||||
|
||||
### Feedback Components (Alerts, Toasts)
|
||||
|
||||
**Required:**
|
||||
- `default` - Neutral information
|
||||
- `success` - Positive feedback
|
||||
- `error` - Error feedback
|
||||
- `warning` - Caution feedback
|
||||
|
||||
---
|
||||
|
||||
## State Naming
|
||||
|
||||
**Use standard names:**
|
||||
- ✅ `hover` not `mouseover`
|
||||
- ✅ `disabled` not `inactive`
|
||||
- ✅ `loading` not `processing`
|
||||
|
||||
**Be consistent across components.**
|
||||
|
||||
---
|
||||
|
||||
## State Transitions
|
||||
|
||||
**Define how states change:**
|
||||
|
||||
```yaml
|
||||
Button States:
|
||||
default → hover (mouse enters)
|
||||
hover → active (mouse down)
|
||||
active → hover (mouse up)
|
||||
hover → default (mouse leaves)
|
||||
any → disabled (programmatically)
|
||||
any → loading (action triggered)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Visual Indicators
|
||||
|
||||
**Each state should be visually distinct:**
|
||||
|
||||
```yaml
|
||||
Button:
|
||||
default: blue background
|
||||
hover: darker blue + scale 1.02
|
||||
active: darkest blue + scale 0.98
|
||||
disabled: gray + opacity 0.6
|
||||
loading: disabled + spinner
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**Reference this when specifying component states.**
|
||||
|
|
@ -1,445 +0,0 @@
|
|||
# Design Token Architecture
|
||||
|
||||
**Purpose:** Core principles for separating semantic structure from visual style.
|
||||
|
||||
**Referenced by:** All component-type instructions
|
||||
|
||||
---
|
||||
|
||||
## Core Principle
|
||||
|
||||
**Separate semantic structure from visual style.**
|
||||
|
||||
```
|
||||
HTML/Structure = Meaning (what it is)
|
||||
Design Tokens = Appearance (how it looks)
|
||||
|
||||
They should be independent!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## The Problem
|
||||
|
||||
**Bad Practice:**
|
||||
```html
|
||||
<h2 class="text-4xl font-bold text-blue-600">
|
||||
Heading
|
||||
</h2>
|
||||
```
|
||||
|
||||
**Issues:**
|
||||
- Visual styling mixed with semantic HTML
|
||||
- Can't change h2 appearance without changing all h2s
|
||||
- h2 means "second-level heading" but looks like "display large"
|
||||
- Breaks separation of concerns
|
||||
|
||||
---
|
||||
|
||||
## The Solution
|
||||
|
||||
**Good Practice:**
|
||||
|
||||
**HTML (Semantic):**
|
||||
```html
|
||||
<h2 class="heading-section">
|
||||
Heading
|
||||
</h2>
|
||||
```
|
||||
|
||||
**Design Tokens (Visual):**
|
||||
```css
|
||||
.heading-section {
|
||||
font-size: var(--text-4xl);
|
||||
font-weight: var(--font-bold);
|
||||
color: var(--color-primary-600);
|
||||
}
|
||||
```
|
||||
|
||||
**Benefits:**
|
||||
- Semantic HTML stays semantic
|
||||
- Visual style is centralized
|
||||
- Can change appearance without touching HTML
|
||||
- Clear separation of concerns
|
||||
|
||||
---
|
||||
|
||||
## Token Hierarchy
|
||||
|
||||
### Level 1: Raw Values
|
||||
```css
|
||||
--spacing-4: 1rem;
|
||||
--color-blue-600: #2563eb;
|
||||
--font-size-4xl: 2.25rem;
|
||||
```
|
||||
|
||||
### Level 2: Semantic Tokens
|
||||
```css
|
||||
--text-heading-large: var(--font-size-4xl);
|
||||
--color-primary: var(--color-blue-600);
|
||||
--spacing-section: var(--spacing-4);
|
||||
```
|
||||
|
||||
### Level 3: Component Tokens
|
||||
```css
|
||||
--button-padding-x: var(--spacing-section);
|
||||
--button-color-primary: var(--color-primary);
|
||||
--heading-size-section: var(--text-heading-large);
|
||||
```
|
||||
|
||||
**Use Level 2 or 3 in components, never Level 1 directly.**
|
||||
|
||||
---
|
||||
|
||||
## Application to WDS
|
||||
|
||||
### In Page Specifications
|
||||
|
||||
**Specify semantic structure:**
|
||||
```yaml
|
||||
Page Structure:
|
||||
- Section Heading (h2)
|
||||
- Body text (p)
|
||||
- Primary button (button)
|
||||
```
|
||||
|
||||
**NOT visual styling:**
|
||||
```yaml
|
||||
# ❌ Don't do this
|
||||
Page Structure:
|
||||
- Large blue bold text
|
||||
- 16px gray text
|
||||
- Blue rounded button
|
||||
```
|
||||
|
||||
### In Design System
|
||||
|
||||
**Specify visual styling:**
|
||||
```yaml
|
||||
Section Heading:
|
||||
html_element: h2
|
||||
design_token: heading-section
|
||||
|
||||
Design Token Definition:
|
||||
heading-section:
|
||||
font-size: text-4xl
|
||||
font-weight: bold
|
||||
color: primary-600
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Component-Type Instructions
|
||||
|
||||
### Text Heading Example
|
||||
|
||||
**When specifying a heading:**
|
||||
|
||||
1. **Identify semantic level** (h1-h6)
|
||||
- h1 = Page title
|
||||
- h2 = Section heading
|
||||
- h3 = Subsection heading
|
||||
- etc.
|
||||
|
||||
2. **Map to design token**
|
||||
- h1 → display-large
|
||||
- h2 → heading-section
|
||||
- h3 → heading-subsection
|
||||
|
||||
3. **Store separately**
|
||||
- Page spec: `<h2>` (semantic)
|
||||
- Design system: `heading-section` token (visual)
|
||||
|
||||
**Example Output:**
|
||||
|
||||
**Page Spec:**
|
||||
```yaml
|
||||
Hero Section:
|
||||
heading:
|
||||
element: h2
|
||||
token: heading-section
|
||||
content: "Welcome to Our Product"
|
||||
```
|
||||
|
||||
**Design System:**
|
||||
```yaml
|
||||
Tokens:
|
||||
heading-section:
|
||||
font-size: 2.25rem
|
||||
font-weight: 700
|
||||
line-height: 1.2
|
||||
color: gray-900
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Button Example
|
||||
|
||||
**When specifying a button:**
|
||||
|
||||
1. **Identify semantic element**
|
||||
- `<button>` for actions
|
||||
- `<a>` for navigation (even if styled as button)
|
||||
|
||||
2. **Map to component**
|
||||
- Action → Button component
|
||||
- Navigation → Link component (button variant)
|
||||
|
||||
3. **Store separately**
|
||||
- Page spec: `<button>` + purpose
|
||||
- Design system: Button component styling
|
||||
|
||||
**Example Output:**
|
||||
|
||||
**Page Spec:**
|
||||
```yaml
|
||||
Login Form:
|
||||
submit_button:
|
||||
element: button
|
||||
type: submit
|
||||
component: Button.primary
|
||||
label: "Log in"
|
||||
```
|
||||
|
||||
**Design System:**
|
||||
```yaml
|
||||
Button Component:
|
||||
variants:
|
||||
primary:
|
||||
background: primary-600
|
||||
color: white
|
||||
padding: spacing-2 spacing-4
|
||||
border-radius: radius-md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Input Field Example
|
||||
|
||||
**When specifying an input:**
|
||||
|
||||
1. **Identify semantic type**
|
||||
- `<input type="text">` for text
|
||||
- `<input type="email">` for email
|
||||
- `<input type="password">` for password
|
||||
|
||||
2. **Map to component**
|
||||
- Text input → Input Field component
|
||||
- Email input → Input Field.email variant
|
||||
|
||||
3. **Store separately**
|
||||
- Page spec: Input type + validation + labels
|
||||
- Design system: Input Field styling
|
||||
|
||||
**Example Output:**
|
||||
|
||||
**Page Spec:**
|
||||
```yaml
|
||||
Login Form:
|
||||
email_field:
|
||||
element: input
|
||||
type: email
|
||||
component: InputField.email
|
||||
label: "Email address"
|
||||
placeholder: "you@example.com"
|
||||
required: true
|
||||
validation: email_format
|
||||
```
|
||||
|
||||
**Design System:**
|
||||
```yaml
|
||||
Input Field Component:
|
||||
base_styling:
|
||||
height: 2.5rem
|
||||
padding: spacing-2 spacing-3
|
||||
border: 1px solid gray-300
|
||||
border-radius: radius-md
|
||||
font-size: text-base
|
||||
|
||||
variants:
|
||||
email:
|
||||
icon: envelope
|
||||
autocomplete: email
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Why This Matters
|
||||
|
||||
### For Designers
|
||||
|
||||
✅ **Consistency:** All h2s can look the same without manual styling
|
||||
✅ **Flexibility:** Change all section headings by updating one token
|
||||
✅ **Clarity:** Semantic meaning preserved
|
||||
✅ **Scalability:** Easy to maintain as design system grows
|
||||
|
||||
### For Developers
|
||||
|
||||
✅ **Semantic HTML:** Proper HTML structure
|
||||
✅ **Accessibility:** Screen readers understand structure
|
||||
✅ **Maintainability:** Styling centralized
|
||||
✅ **Performance:** Reusable styles
|
||||
|
||||
### For Design Systems
|
||||
|
||||
✅ **Single Source of Truth:** Tokens define appearance
|
||||
✅ **Easy Updates:** Change tokens, not components
|
||||
✅ **Consistency:** Automatic consistency across pages
|
||||
✅ **Documentation:** Clear token → component mapping
|
||||
|
||||
---
|
||||
|
||||
## Common Mistakes
|
||||
|
||||
### Mistake 1: Mixing Structure and Style
|
||||
|
||||
**❌ Bad:**
|
||||
```yaml
|
||||
Page:
|
||||
- "Large blue heading" (h2)
|
||||
```
|
||||
|
||||
**✅ Good:**
|
||||
```yaml
|
||||
Page:
|
||||
- Section heading (h2 → heading-section token)
|
||||
```
|
||||
|
||||
### Mistake 2: Hardcoding Visual Values
|
||||
|
||||
**❌ Bad:**
|
||||
```yaml
|
||||
Button:
|
||||
background: #2563eb
|
||||
padding: 16px
|
||||
```
|
||||
|
||||
**✅ Good:**
|
||||
```yaml
|
||||
Button:
|
||||
background: primary-600
|
||||
padding: spacing-4
|
||||
```
|
||||
|
||||
### Mistake 3: Using Visual Names for Semantic Elements
|
||||
|
||||
**❌ Bad:**
|
||||
```yaml
|
||||
<h2 class="big-blue-text">
|
||||
```
|
||||
|
||||
**✅ Good:**
|
||||
```yaml
|
||||
<h2 class="section-heading">
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Token Naming Conventions
|
||||
|
||||
### Colors
|
||||
```
|
||||
--color-{category}-{shade}
|
||||
--color-primary-600
|
||||
--color-gray-900
|
||||
--color-success-500
|
||||
```
|
||||
|
||||
### Typography
|
||||
```
|
||||
--text-{size}
|
||||
--text-base
|
||||
--text-lg
|
||||
--text-4xl
|
||||
```
|
||||
|
||||
### Spacing
|
||||
```
|
||||
--spacing-{scale}
|
||||
--spacing-2
|
||||
--spacing-4
|
||||
--spacing-8
|
||||
```
|
||||
|
||||
### Component-Specific
|
||||
```
|
||||
--{component}-{property}-{variant}
|
||||
--button-padding-primary
|
||||
--input-border-error
|
||||
--card-shadow-elevated
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Implementation in WDS
|
||||
|
||||
### Phase 4: Page Specification
|
||||
|
||||
**Agent specifies:**
|
||||
- Semantic HTML elements
|
||||
- Component references
|
||||
- Content and labels
|
||||
|
||||
**Agent does NOT specify:**
|
||||
- Exact colors
|
||||
- Exact sizes
|
||||
- Exact spacing
|
||||
|
||||
### Phase 5: Design System
|
||||
|
||||
**Agent specifies:**
|
||||
- Design tokens
|
||||
- Component styling
|
||||
- Visual properties
|
||||
|
||||
**Agent does NOT specify:**
|
||||
- Page-specific content
|
||||
- Semantic structure
|
||||
|
||||
### Integration
|
||||
|
||||
**Page spec references design system:**
|
||||
```yaml
|
||||
Hero:
|
||||
heading:
|
||||
element: h2
|
||||
token: heading-hero ← Reference to design system
|
||||
content: "Welcome"
|
||||
```
|
||||
|
||||
**Design system defines token:**
|
||||
```yaml
|
||||
Tokens:
|
||||
heading-hero:
|
||||
font-size: 3rem
|
||||
font-weight: 800
|
||||
color: gray-900
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Company Customization
|
||||
|
||||
**Companies can fork WDS and customize tokens:**
|
||||
|
||||
```
|
||||
Company Fork:
|
||||
├── data/design-system/
|
||||
│ ├── token-architecture.md (this file - keep principles)
|
||||
│ ├── company-tokens.md (company-specific token values)
|
||||
│ └── token-mappings.md (h2 → company-heading-large)
|
||||
```
|
||||
|
||||
**Result:** Every project uses company's design tokens automatically.
|
||||
|
||||
---
|
||||
|
||||
## Further Reading
|
||||
|
||||
- **Naming Conventions:** `naming-conventions.md`
|
||||
- **Component Boundaries:** `component-boundaries.md`
|
||||
- **State Management:** `state-management.md`
|
||||
|
||||
---
|
||||
|
||||
**This is a core principle. Reference this document from all component-type instructions.**
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
# Form Validation Patterns
|
||||
|
||||
**Purpose:** Standard patterns for form validation and error handling.
|
||||
|
||||
**Referenced by:** Input Field, Form component-type instructions
|
||||
|
||||
---
|
||||
|
||||
## Validation Types
|
||||
|
||||
### Client-Side Validation
|
||||
|
||||
**Required Fields:**
|
||||
```yaml
|
||||
validation:
|
||||
required: true
|
||||
message: "This field is required"
|
||||
```
|
||||
|
||||
**Format Validation:**
|
||||
```yaml
|
||||
validation:
|
||||
type: email
|
||||
pattern: /^[^\s@]+@[^\s@]+\.[^\s@]+$/
|
||||
message: "Please enter a valid email address"
|
||||
```
|
||||
|
||||
**Length Validation:**
|
||||
```yaml
|
||||
validation:
|
||||
minLength: 8
|
||||
maxLength: 100
|
||||
message: "Password must be 8-100 characters"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Error States
|
||||
|
||||
**Visual Indicators:**
|
||||
- Red border
|
||||
- Error icon
|
||||
- Error message below field
|
||||
- Error color for label
|
||||
|
||||
**Timing:**
|
||||
- Show on blur (after user leaves field)
|
||||
- Show on submit attempt
|
||||
- Clear on valid input
|
||||
|
||||
---
|
||||
|
||||
## Success States
|
||||
|
||||
**Visual Indicators:**
|
||||
- Green border (optional)
|
||||
- Success icon (optional)
|
||||
- Success message (optional)
|
||||
|
||||
**When to Show:**
|
||||
- After successful validation
|
||||
- For critical fields (password strength)
|
||||
- For async validation (username availability)
|
||||
|
||||
---
|
||||
|
||||
**Reference this when specifying form components.**
|
||||
|
|
@ -1,143 +0,0 @@
|
|||
# Phase 1: Product Exploration (Product Brief) (Project brief)
|
||||
|
||||
**Agent:** Saga the Analyst
|
||||
**Output:** `A-Product-Brief/` (or your configured prefix)
|
||||
|
||||
---
|
||||
|
||||
## What This Phase Does
|
||||
|
||||
Product Exploration establishes your strategic foundation through conversational discovery. Instead of filling out questionnaires, you have a conversation that builds understanding organically.
|
||||
|
||||
By the end, you'll have a Product Brief that captures your vision and serves as the north star for your entire project.
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
Your Product Brief includes:
|
||||
|
||||
- **Executive Summary** - The vision that inspires teams
|
||||
- **Problem Statement** - The "why" that drives decisions
|
||||
- **User Types** - The "who" that guides design (initial identification)
|
||||
- **Solution Approach** - The "how" that enables development
|
||||
- **Success Criteria** - The "what" that measures progress
|
||||
- **Market Positioning** - How you're different (optional: ICP framework)
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### The Conversational Approach
|
||||
|
||||
Traditional requirements gathering treats people like databases - extracting answers through rigid questionnaires. WDS does it differently.
|
||||
|
||||
**Instead of:** "Please complete this 47-question requirements document"
|
||||
|
||||
**WDS says:** "Tell me about your project in your own words"
|
||||
|
||||
People light up when asked to share their vision. They become collaborators, not interrogation subjects.
|
||||
|
||||
### The Session Flow
|
||||
|
||||
**Opening (5-10 minutes)**
|
||||
|
||||
Saga asks about your project in your own words. She listens for:
|
||||
- What you emphasize naturally
|
||||
- Where your energy goes
|
||||
- What excites vs. what stresses you
|
||||
- Your exact language and terminology
|
||||
|
||||
**Exploration (15-30 minutes)**
|
||||
|
||||
The conversation adapts to what you reveal:
|
||||
- If you mention users → deeper into user insights
|
||||
- If you mention problems → explore the cost of not solving
|
||||
- If you mention competition → discover differentiation
|
||||
- If you mention timeline → understand urgency drivers
|
||||
|
||||
Each answer reveals the next question. It's jazz, not classical music.
|
||||
|
||||
**Synthesis (10-15 minutes)**
|
||||
|
||||
Saga reflects back your vision in organized form:
|
||||
- Connecting dots you shared across topics
|
||||
- Highlighting insights you might not have seen
|
||||
- Building the foundation for next phases
|
||||
|
||||
### Living Document
|
||||
|
||||
As you talk, the Product Brief grows in real-time:
|
||||
- Immediate validation and refinement
|
||||
- Real-time course correction
|
||||
- You own the content because you helped create it
|
||||
- "Yes, exactly!" moments that build trust
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**Always start here if:**
|
||||
- Building something new
|
||||
- Starting a new project
|
||||
- Need strategic clarity before diving into design
|
||||
|
||||
**Skip if:**
|
||||
- You already have a clear, documented product brief
|
||||
- Just enhancing an existing feature
|
||||
- Working on a design system without new product context
|
||||
|
||||
---
|
||||
|
||||
## What to Prepare
|
||||
|
||||
Come ready to share:
|
||||
- Your project idea (even if rough)
|
||||
- The problem you're solving
|
||||
- Who might use it
|
||||
- Why it matters to you
|
||||
|
||||
You don't need polished answers. The conversation will help clarify everything.
|
||||
|
||||
---
|
||||
|
||||
## What Comes Next
|
||||
|
||||
Your Product Brief enables:
|
||||
|
||||
- **Phase 2: User Research** - Deeper into user psychology with your strategic context
|
||||
- **Phase 3: Requirements** - Technical decisions aligned with your vision
|
||||
- **Phase 4: UX Design** - Design work grounded in strategic purpose
|
||||
|
||||
The brief becomes the reference point everyone shares.
|
||||
|
||||
---
|
||||
|
||||
## Tips for Great Sessions
|
||||
|
||||
**Let the conversation flow**
|
||||
- Share what feels important, even if it seems tangential
|
||||
- Follow your energy - where you're excited matters
|
||||
|
||||
**Think out loud**
|
||||
- Half-formed thoughts are welcome
|
||||
- will help you refine them
|
||||
|
||||
**Be honest about uncertainty**
|
||||
- "I'm not sure about X" is useful information
|
||||
- Better to surface doubts now than later
|
||||
|
||||
**Review as you go**
|
||||
- Check that what's captured matches your thinking
|
||||
- Correct misunderstandings immediately
|
||||
|
||||
---
|
||||
|
||||
## Example Output
|
||||
|
||||
See: `examples/dog-week-patterns/A-Product-Brief/` for a complete Product Brief example from a real project.
|
||||
|
||||
---
|
||||
|
||||
*Phase 1 of the Whiteport Design Studio method*
|
||||
|
||||
|
|
@ -1,302 +0,0 @@
|
|||
# Phase 2: Trigger map
|
||||
|
||||
**Agent:** Saga the Analyst
|
||||
**Output:** `B-Trigger-Map/` (or your configured prefix)
|
||||
|
||||
---
|
||||
|
||||
## What This Phase Does
|
||||
|
||||
User Research connects business goals to user psychology through Trigger Mapping. You discover not just WHO your users are, but WHY they act and WHAT triggers their decisions.
|
||||
|
||||
By the end, you'll have a Trigger Map that visually shows how user success drives business success.
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
Your Trigger Map includes:
|
||||
|
||||
- **Business Goals** - What success looks like for your organization
|
||||
- **Target Groups** - User types who can help achieve those goals
|
||||
- **Personas** - Detailed profiles with psychological depth
|
||||
- **Usage Goals** - What users want vs. what they fear
|
||||
- **Visual Trigger Map** - Diagram connecting all the pieces
|
||||
- **Priority Rankings** - Which goals, users, and drivers matter most
|
||||
- **Feature Impact Analysis** - Scored feature list ranked by strategic value
|
||||
|
||||
---
|
||||
|
||||
## From Effect Mapping to Trigger Mapping
|
||||
|
||||
WDS Trigger Mapping is based on the groundbreaking **Effect Management** methodology from inUse, Sweden.
|
||||
|
||||
### Credits & Foundation
|
||||
|
||||
**Effect Management** was created by **Mijo Balic** and **Ingrid Domingues (Ottersten)** at **inUse**, Sweden. Their pioneering work on connecting business goals to user behavior through visual mapping - the **Effect Map** - laid the foundation for how we think about strategic software design.
|
||||
|
||||
The methodology gained wider recognition through Gojko Adzic's book **"Impact Mapping: Making a Big Impact with Software Products and Projects"** (2012), which acknowledges Effect Mapping as a key influence.
|
||||
|
||||
> **Founder's Note:** I personally acquired the insights about the power of the Effect Map back in 2007, and it has served as the philosophical basis for all of my work in UX for almost 20 years. I am eternally grateful for this model that I now have the pleasure to share with the world in an updated version suitable for modern projects.
|
||||
> — *Martin Eriksson, WDS Creator*
|
||||
|
||||
📚 **Further Reading:**
|
||||
- [Impact Mapping on Amazon](https://www.amazon.com/Impact-Mapping-Software-Products-Projects/dp/0955683645) - Gojko Adzic's book building on Effect Mapping concepts
|
||||
- [impactmapping.org](https://www.impactmapping.org) - Resources and community
|
||||
|
||||
### What is Effect Mapping?
|
||||
|
||||
Effect Mapping is the original model that connects business goals to user behavior through a visual map. It includes business goals, target groups, usage goals, and the specific actions/features that enable those goals.
|
||||
|
||||
### What is Trigger Mapping?
|
||||
|
||||
Trigger Mapping is WDS's adaptation of Effect Mapping, designed for longer shelf life and deeper psychological insight:
|
||||
|
||||
**Simplified:**
|
||||
- Leaves out actions/features from the map
|
||||
- Focuses on the strategic connections
|
||||
- Map stays relevant even as features evolve
|
||||
|
||||
**Enhanced:**
|
||||
- Adds **negative driving forces** (fears, frustrations)
|
||||
- Creates fuller picture of user psychology
|
||||
- Both what users want AND what they want to avoid
|
||||
|
||||
### The Core Insight
|
||||
|
||||
Any software is about **flow of value**. There's always a group of people who, through their use of the software, make your success happen.
|
||||
|
||||
These users have their own goals:
|
||||
- **GAIN** - Benefits and positive outcomes they achieve
|
||||
- **PAIN** - Resistance and friction they experience
|
||||
|
||||
**The key:** Make GAIN > PAIN for users, so through their usage, they add value to your system.
|
||||
|
||||
### The Three Layers
|
||||
|
||||
The Trigger Map combines three critical layers in one picture:
|
||||
|
||||
1. **Business Goals** - Your WHY (Vision that motivates, and SMART objectives that measure success)
|
||||
2. **Target Groups** - The WHO (User types whose success drives your success)
|
||||
3. **Usage Goals** - Their WHY (Driving forces both positive - what they wish to achieve, and negative - what they wish to avoid)
|
||||
|
||||
When all levels are then prioritized, you have perfect guidance for design:
|
||||
- Present features that add value to your most prioritized goal first
|
||||
- To the highest prioritized target group
|
||||
- In a way that best suits their most prioritized usage goal
|
||||
- Make sound decisions about priority of bugs or features based on the total impact on users' goals
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Stage 1: Business Goals (15-20 minutes)
|
||||
|
||||
Starting question: "Looking at your product brief, what does 'winning' look like for your organization?"
|
||||
|
||||
Business goals work at two levels:
|
||||
|
||||
**Vision (Motivating, not easily quantifiable)**
|
||||
A statement that inspires and guides direction:
|
||||
- "Become the most popular free and open source design support framework"
|
||||
- "Be the go-to partner for SMB digital transformation"
|
||||
- "Make professional UX accessible to every startup"
|
||||
|
||||
**Objectives (SMART metrics)**
|
||||
Specific, measurable targets that indicate progress toward the vision:
|
||||
- "10,000 active designer users by 2027"
|
||||
- "100 community contributions accepted by Q4 2026"
|
||||
- "50% of users complete full 6-phase workflow"
|
||||
- "NPS score of 60+ from design professionals"
|
||||
|
||||
You'll define both levels:
|
||||
- Vision that motivates the team
|
||||
- Objectives with clear success metrics
|
||||
|
||||
### Stage 2: Target Groups (20-30 minutes)
|
||||
|
||||
Key question: "Who needs to succeed for YOU to succeed?"
|
||||
|
||||
Instead of demographics, you discover:
|
||||
- User types who can drive business success
|
||||
- The role each type plays in your strategy
|
||||
- How different users contribute differently
|
||||
- Why each user type matters to business goals
|
||||
|
||||
Users become strategic assets, not just audience segments.
|
||||
|
||||
### Stage 3: Psychological Deep Dive (30-40 minutes)
|
||||
|
||||
For each user type:
|
||||
|
||||
"When this user type is at their best - when they're succeeding - what are they accomplishing? What are they feeling?"
|
||||
|
||||
"Now the flip side: What do they desperately want to avoid? What would feel like failure?"
|
||||
|
||||
This reveals:
|
||||
- **Positive Triggers** - What motivates action
|
||||
- **Negative Triggers** - What prevents engagement
|
||||
- **Emotional Drivers** - The psychology behind decisions
|
||||
- **Behavioral Patterns** - When and why they act
|
||||
|
||||
### Stage 4: Visual Strategy Map (15-20 minutes)
|
||||
|
||||
Saga helps build the complete trigger map:
|
||||
- Connecting every user insight to business goals
|
||||
- Creating the visual strategy guide
|
||||
- Validating the strategic logic together
|
||||
|
||||
### Stage 5: Prioritization (20-30 minutes)
|
||||
|
||||
This stage is critical for shaping the final product concept. You systematically prioritize each column of the Trigger Map.
|
||||
|
||||
**The Prioritization Process:**
|
||||
|
||||
1. **Rank Business Goals** - Which goal matters most right now? Which is secondary?
|
||||
2. **Rank Target Groups** - Which user types have the most impact on your top goal?
|
||||
3. **Rank Usage Goals** - For your top users, which driving forces are most urgent?
|
||||
|
||||
**Why This Matters:**
|
||||
|
||||
Different prioritizations lead to fundamentally different products. The same Trigger Map can produce wildly different concepts depending on what you prioritize first.
|
||||
|
||||
### Stage 6: Feature Impact Analysis (20-30 minutes)
|
||||
|
||||
Now the magic happens. You connect strategy to concrete features using a systematic impact scoring approach.
|
||||
|
||||
**The Process:**
|
||||
|
||||
1. **Gather Feature Ideas** - Pull from your Product Brief, stakeholder input, and brainstorming
|
||||
2. **Map to Target Groups** - For each feature, identify which target groups it serves
|
||||
3. **Map to Driving Forces** - Which positive and negative drivers does it address?
|
||||
4. **Score the Impact** - Features serving multiple groups and drivers score higher
|
||||
|
||||
**The Scoring System:** *(Beta - refinements welcome)*
|
||||
|
||||
For each feature, award points:
|
||||
|
||||
| Impact | Points |
|
||||
|--------|--------|
|
||||
| Serves Priority 1 Target Group | +3 |
|
||||
| Serves Priority 2 Target Group | +2 |
|
||||
| Serves Priority 3 Target Group | +1 |
|
||||
| Addresses Priority 1 Positive Driver | +3 |
|
||||
| Addresses Priority 2 Positive Driver | +2 |
|
||||
| Addresses Priority 3 Positive Driver | +1 |
|
||||
| **Addresses Priority 1 Negative Driver** | **+4** |
|
||||
| **Addresses Priority 2 Negative Driver** | **+3** |
|
||||
| **Addresses Priority 3 Negative Driver** | **+2** |
|
||||
| Serves multiple target groups | +2 bonus |
|
||||
| Addresses both positive AND negative drivers | +2 bonus |
|
||||
|
||||
> **Why negative drivers score higher:** Loss aversion is a well-documented psychological principle - humans work harder to avoid pain than to pursue gain. Features that remove friction, fear, or frustration create stronger user loyalty than features that simply add benefits.
|
||||
|
||||
**Example:**
|
||||
|
||||
| Feature | Target Groups | Driving Forces | Score |
|
||||
|---------|---------------|----------------|-------|
|
||||
| One-click booking | P1 Dog Owner (+3), P2 Walker (+2) | Convenience (+3), Fear of complexity (-P1: +4), Multi-group (+2), Both types (+2) | **16** |
|
||||
| Review system | P1 Dog Owner (+3) | Trust (+2), Fear of bad walker (-P1: +4), Both types (+2) | **11** |
|
||||
| Calendar sync | P2 Walker (+2) | Efficiency (+1) | **3** |
|
||||
|
||||
**The Output:**
|
||||
|
||||
A ranked feature list showing:
|
||||
- Which features have the broadest impact
|
||||
- Which features are "single-purpose" vs "multi-impact"
|
||||
- Natural MVP candidates (highest scores)
|
||||
- Features to defer (low scores but still valuable)
|
||||
|
||||
**Why This Works:**
|
||||
|
||||
Features that resonate with multiple target groups and address multiple driving forces are inherently more valuable. They create more value per development effort and satisfy more users simultaneously.
|
||||
|
||||
---
|
||||
|
||||
## Personas with Depth
|
||||
|
||||
Traditional personas describe demographics: "Jennifer, 34, likes yoga and lattes."
|
||||
|
||||
WDS personas capture psychology:
|
||||
|
||||
**Alliterative Naming** - Each persona gets a memorable name that hints at their role:
|
||||
- "Patrick the Professional" - Decision-maker focused on efficiency
|
||||
- "Sophie the Socializer" - Values connection and community
|
||||
- "Tyler the Technical" - Wants control and customization
|
||||
|
||||
**What Each Persona Includes:**
|
||||
- Role and context
|
||||
- Goals they're trying to achieve
|
||||
- Fears and frustrations
|
||||
- How they'd describe their problem
|
||||
- What success looks like to them
|
||||
- Triggers that motivate action
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**Use after Phase 1 if:**
|
||||
- Building a new product
|
||||
- Need clarity on who you're building for
|
||||
- Want design decisions grounded in user psychology
|
||||
|
||||
**Start here if:**
|
||||
- You have product vision but unclear user strategy
|
||||
- Existing personas feel shallow or unused
|
||||
- Features aren't connecting with users
|
||||
|
||||
**Skip if:**
|
||||
- Quick enhancement to existing feature
|
||||
- Users are already well-documented and validated
|
||||
- Design system work without new user research
|
||||
|
||||
---
|
||||
|
||||
## What to Prepare
|
||||
|
||||
Bring:
|
||||
- Your completed Product Brief (Phase 1)
|
||||
- Any existing user research (even informal)
|
||||
- Stakeholder availability for the workshop
|
||||
|
||||
---
|
||||
|
||||
## What Comes Next
|
||||
|
||||
Your Trigger Map enables:
|
||||
|
||||
- **Phase 3: Requirements** - Technical decisions aligned with user priorities
|
||||
- **Phase 4: UX Design** - Design work grounded in user psychology
|
||||
- **Development priorities** - Clear guidance on what to build first
|
||||
|
||||
The trigger map becomes the strategic brain of your product.
|
||||
|
||||
---
|
||||
|
||||
## Tips for Great Sessions
|
||||
|
||||
**Think strategically, not demographically**
|
||||
- "Who needs to win for us to win?" not "Who might use this?"
|
||||
- Connect every user insight to business outcomes
|
||||
|
||||
**Go deep on psychology**
|
||||
- Push beyond surface responses
|
||||
- Ask "why" multiple times
|
||||
- Understand motivations, not just behaviors
|
||||
|
||||
**Build the map live**
|
||||
- See connections as they emerge
|
||||
- Validate strategic logic together
|
||||
- Make it visual and shareable
|
||||
|
||||
---
|
||||
|
||||
## Example Output
|
||||
|
||||
See: `examples/dog-week-patterns/B-Trigger-Map/` for a complete Trigger Map with personas from a real project.
|
||||
|
||||
---
|
||||
|
||||
*Phase 2 of the Whiteport Design Studio method*
|
||||
|
||||
|
|
@ -1,269 +0,0 @@
|
|||
# Phase 3: PRD Platform (Technical Foundation)
|
||||
|
||||
**Agent:** Freyja the PM
|
||||
**Output:** `C-Requirements/` (or your configured prefix)
|
||||
|
||||
---
|
||||
|
||||
## What This Phase Does
|
||||
|
||||
This phase establishes everything technical that can be done **without the final UI**. It's about platform decisions, technical feasibility, and proving that your innovative features actually work.
|
||||
|
||||
By the end, you'll have a solid technical foundation and confidence that your key features are buildable.
|
||||
|
||||
---
|
||||
|
||||
## The Core Principle
|
||||
|
||||
**Prove our concept works technically — in parallel with design work.**
|
||||
|
||||
While UX designers explore how users interact with features, technical validation runs alongside:
|
||||
- Can we actually build this?
|
||||
- Do the external services we need exist and work as expected?
|
||||
- What platform and infrastructure do we need?
|
||||
- What constraints does design need to know about?
|
||||
|
||||
Design and technical validation inform each other. Neither waits for the other to finish.
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
- **Platform Architecture** - Technology stack and infrastructure decisions
|
||||
- **Data Model** - Core entities and relationships
|
||||
- **Integration Map** - External services and how they connect
|
||||
- **Technical Proofs of Concept** - Validation that risky features work
|
||||
- **Experimental Endpoints** - API specs for known requirements (feeds into E-UI-Roadmap)
|
||||
- **Security Framework** - Authentication, authorization, data protection
|
||||
- **Technical Constraints Document** - What design needs to know
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Stage 1: Platform Decisions (30-45 minutes)
|
||||
|
||||
Establish the technical foundation:
|
||||
|
||||
**Architecture:**
|
||||
- What technology stack fits your needs?
|
||||
- Monolith vs. microservices vs. serverless?
|
||||
- What hosting/infrastructure approach?
|
||||
- What are the key technical constraints?
|
||||
|
||||
**Data Model:**
|
||||
- What are the core entities?
|
||||
- How do they relate to each other?
|
||||
- What's the database strategy?
|
||||
|
||||
### Stage 2: Integration Mapping (20-30 minutes)
|
||||
|
||||
Identify all external dependencies:
|
||||
|
||||
- Authentication providers (OAuth, SSO)
|
||||
- Payment systems (Stripe, PayPal)
|
||||
- Third-party APIs (Google Maps, SendGrid, Twilio)
|
||||
- Data sources and feeds
|
||||
- Analytics and monitoring
|
||||
|
||||
### Stage 3: Technical Proofs of Concept (Variable)
|
||||
|
||||
**This is crucial.** For innovative or risky features, validate feasibility BEFORE committing to the design.
|
||||
|
||||
**Examples:**
|
||||
|
||||
| Feature Idea | Proof of Concept Question |
|
||||
|--------------|---------------------------|
|
||||
| "Show drive time between locations" | Can we call Google Maps Directions API and get estimated duration? |
|
||||
| "Real-time availability updates" | Can we set up WebSocket connections that scale? |
|
||||
| "AI-powered recommendations" | Does the ML model perform well enough with our data? |
|
||||
| "Offline mode" | Can we sync data reliably when connection returns? |
|
||||
| "Video calling" | Which provider works best? What's the latency? |
|
||||
|
||||
**What a PoC validates:**
|
||||
- The API/service exists and does what we need
|
||||
- Performance is acceptable
|
||||
- Cost is within budget
|
||||
- Data format works for our needs
|
||||
- Edge cases are handleable
|
||||
|
||||
**PoC Output:**
|
||||
- Working code snippet or prototype
|
||||
- Documented limitations and gotchas
|
||||
- Cost estimates (API calls, compute, etc.)
|
||||
- Go/No-Go recommendation for the feature
|
||||
|
||||
> **Why this matters:** It's a great morale boost when you've proven your core features will work. And if you discover limitations or surprises, it's valuable to know them early so design can account for them from the start.
|
||||
|
||||
### Stage 4: Security & Performance Framework (20-30 minutes)
|
||||
|
||||
**Security:**
|
||||
- Authentication approach (passwords, OAuth, SSO, passwordless)
|
||||
- Authorization model (roles, permissions, row-level security)
|
||||
- Data encryption needs (at rest, in transit)
|
||||
- Compliance requirements (GDPR, HIPAA, PCI-DSS, etc.)
|
||||
|
||||
**Performance:**
|
||||
- Expected load and scale
|
||||
- Response time expectations
|
||||
- Availability requirements (99.9%? 99.99%?)
|
||||
- Caching strategy
|
||||
|
||||
### Stage 5: Experimental Endpoints (Variable)
|
||||
|
||||
**Set up the endpoints you KNOW you'll need.**
|
||||
|
||||
Even before the UI is designed, you often know certain data operations are essential. Setting these up early provides:
|
||||
|
||||
- **Early validation** - Does the endpoint actually return what we need?
|
||||
- **Fail fast** - Discover problems before investing in design
|
||||
- **Developer head start** - Backend work can begin immediately
|
||||
- **Design confidence** - Designers know what data is available
|
||||
|
||||
**What to set up:**
|
||||
|
||||
| Endpoint Type | Example | Why Early? |
|
||||
|---------------|---------|------------|
|
||||
| Core CRUD | `GET /api/dogs`, `POST /api/bookings` | Foundation for everything |
|
||||
| External integrations | `GET /api/routes/estimate` (Google Maps) | Validates third-party works |
|
||||
| Authentication | `/api/auth/login`, `/api/auth/refresh` | Security model proven |
|
||||
| Key calculations | `/api/availability/check` | Business logic validated |
|
||||
|
||||
**Output:**
|
||||
|
||||
For each experimental endpoint, document:
|
||||
- Endpoint specification (method, path, request/response)
|
||||
- What it validates
|
||||
- Current status (stub, working, blocked)
|
||||
- Dependencies and notes
|
||||
|
||||
These specifications go in your Requirements folder AND become tasks in the `E-UI-Roadmap/` handover folder for development teams.
|
||||
|
||||
> **The mindset:** Every endpoint you validate early is one less surprise during development. Every endpoint that fails early saves weeks of wasted design work.
|
||||
|
||||
### Stage 6: Technical Constraints Document (15-20 minutes)
|
||||
|
||||
Create a summary of what UX design needs to know:
|
||||
|
||||
- **What's possible** - Features validated by PoCs
|
||||
- **What's not possible** - Technical limitations discovered
|
||||
- **What's expensive** - Features with high API/compute costs
|
||||
- **What affects design** - Loading times, offline behavior, real-time vs. polling
|
||||
- **Platform capabilities** - What the framework/platform provides out of the box
|
||||
|
||||
This document becomes essential input for Phase 4 (UX Design).
|
||||
|
||||
---
|
||||
|
||||
## The Design Connection
|
||||
|
||||
Phase 3 is informed by:
|
||||
|
||||
- **Product Brief** (Phase 1) - Strategic vision and constraints
|
||||
- **Trigger Map** (Phase 2) - Prioritized features from Feature Impact Analysis
|
||||
|
||||
And it enables:
|
||||
|
||||
- **UX Design** (Phase 4) - Design within known technical constraints
|
||||
- **Design System** (Phase 5) - Component technical requirements
|
||||
- **Development** - Platform work can begin in parallel with design
|
||||
|
||||
---
|
||||
|
||||
## Parallel Streams
|
||||
|
||||
Once Phase 3 is complete:
|
||||
|
||||
```
|
||||
Phase 3 Complete
|
||||
│
|
||||
├──► E-UI-Roadmap/ receives:
|
||||
│ • Experimental endpoint specs
|
||||
│ • API implementation tasks
|
||||
│ • Infrastructure setup tasks
|
||||
│
|
||||
├──► Platform/Backend Development can START
|
||||
│ (Infrastructure, APIs, data model)
|
||||
│
|
||||
└──► Phase 4: UX Design can START
|
||||
(Informed by technical constraints)
|
||||
```
|
||||
|
||||
This parallelism is one of WDS's key efficiency gains. Development teams can begin backend work while designers continue with UX.
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**Use this phase when:**
|
||||
- Building platform/infrastructure for a new product
|
||||
- Features depend on external APIs or services
|
||||
- Innovative features need technical validation
|
||||
- Development team needs architectural clarity before design
|
||||
|
||||
**Skip or minimize if:**
|
||||
- Simple project with obvious technical approach
|
||||
- Working within existing platform/infrastructure
|
||||
- Enhancement that doesn't change architecture
|
||||
- All features use proven, familiar technology
|
||||
|
||||
---
|
||||
|
||||
## What to Prepare
|
||||
|
||||
Bring:
|
||||
- Product Brief (Phase 1)
|
||||
- Trigger Map with Feature Impact Analysis (Phase 2)
|
||||
- Any existing technical constraints
|
||||
- Development team availability for PoC work
|
||||
|
||||
---
|
||||
|
||||
## What Comes Next
|
||||
|
||||
Your technical foundation enables:
|
||||
|
||||
- **Phase 4: UX Design** - Design with confidence about what's technically possible
|
||||
- **Phase 6: Dev Integration** - Handoff with complete technical context
|
||||
- **Development** - Backend/platform work can begin immediately
|
||||
|
||||
---
|
||||
|
||||
## Tips for Great Sessions
|
||||
|
||||
**Validate risky features first**
|
||||
- If the Google Maps API doesn't return drive times in a usable format, you need to know NOW
|
||||
- Don't design features you can't build
|
||||
|
||||
**Document constraints clearly**
|
||||
- Designers need to know what's possible
|
||||
- "Loading state required" vs "instant" changes UX significantly
|
||||
|
||||
**Involve developers**
|
||||
- Technical decisions benefit from dev input
|
||||
- PoC work may require developer time
|
||||
- Architecture is a conversation, not a decree
|
||||
|
||||
**Stay connected to strategy**
|
||||
- Reference Feature Impact Analysis scores
|
||||
- High-impact features deserve more PoC investment
|
||||
- Don't over-engineer for hypothetical needs
|
||||
|
||||
---
|
||||
|
||||
## Example Output
|
||||
|
||||
See: `examples/dog-week-patterns/C-Requirements/` for the Dog Week technical foundation.
|
||||
|
||||
**What Dog Week needed to prove early:**
|
||||
|
||||
- *"Can we show dog owners how long it takes to walk to a dog walker?"* → Google Maps Directions API returns walking time between coordinates ✓
|
||||
- *"Can we check real-time availability across multiple walkers?"* → Endpoint aggregates calendar data in <200ms ✓
|
||||
- *"Can we handle Swish payments for Swedish users?"* → Swish API integration validated with test transactions ✓
|
||||
- *"Can walkers see their schedule on mobile?"* → Responsive calendar component renders correctly on iOS/Android browsers ✓
|
||||
|
||||
These early discoveries shaped both the design AND the development approach.
|
||||
|
||||
---
|
||||
|
||||
*Phase 3 of the Whiteport Design Studio method*
|
||||
|
|
@ -1,296 +0,0 @@
|
|||
# Phase 4: UX Design (UX-Sketches & Usage Scenarios)
|
||||
|
||||
**Agent:** Baldr the UX Expert
|
||||
**Output:** `C-Scenarios/` (or your configured prefix)
|
||||
|
||||
---
|
||||
|
||||
## What This Phase Does
|
||||
|
||||
UX Design transforms ideas into detailed visual specifications. Working with Baldr, you conceptualize, sketch, and specify every interaction until your design can be logically explained without gaps.
|
||||
|
||||
**The key insight:** Designs that can be logically explained without gaps are easy to develop. The specification process reveals gaps in your thinking early - when they're easy to address.
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
For each scenario/page:
|
||||
|
||||
- **Scenario Structure** - Numbered folder hierarchy
|
||||
- **Page Specifications** - Complete documentation of each screen
|
||||
- **Component Definitions** - Every element with Object IDs
|
||||
- **Interaction Behaviors** - What happens when users interact
|
||||
- **State Definitions** - All possible states for dynamic elements
|
||||
- **Multilingual Content** - Text in all supported languages
|
||||
- **HTML Prototypes** - Interactive prototypes for validation
|
||||
|
||||
---
|
||||
|
||||
## How Baldr the UX Expert helps you design software
|
||||
|
||||
### 4A: Scenario Exploration
|
||||
**When:** Discovering the Concept, the process, flow screen or component solution together, before sketching begin
|
||||
|
||||
Baldr helps you:
|
||||
- Think through the user's journey
|
||||
- Explore content and feature options
|
||||
- Consider psychological triggers from your Trigger Map
|
||||
- Arrive at a clear solution ready for sketching
|
||||
|
||||
### 4B: UI Sketch Analysis
|
||||
**When:** You have a sketch and you need feedback on it
|
||||
|
||||
Baldr helps you:
|
||||
- Analyze what the sketch shows
|
||||
- Ask clarifying questions
|
||||
- Identify all components and states
|
||||
|
||||
### 4C: Conceptual Specification
|
||||
**When:** Design is clear, need development-ready specs
|
||||
|
||||
Baldr helps you:
|
||||
- Document every detail systematically
|
||||
- Assign Object IDs for testing
|
||||
- Define all interactions and states
|
||||
- Prepare multilingual content, error codes, instructions and any other content needed for the developers
|
||||
|
||||
### 4D: HTML Prototype
|
||||
**When:** Specifications complete, and we make the sketch come alive to test the concept
|
||||
|
||||
Baldr helps you:
|
||||
- Create interactive prototypes
|
||||
- Test the design in browser
|
||||
- Discover gaps and issues
|
||||
- Refine specifications
|
||||
- Visualize the concept before development
|
||||
|
||||
### 4E: PRD Update
|
||||
**When:** Page design is complete, before moving to the next scenario
|
||||
|
||||
Baldr helps you:
|
||||
- Identify what features this page requires
|
||||
- Add functional requirements to the PRD
|
||||
- Reference the page (e.g., "Required by: 2.1-Dog-Calendar")
|
||||
- Note any API endpoints, validations, or data needs discovered
|
||||
|
||||
**Why this step matters:**
|
||||
|
||||
Each page reveals concrete requirements:
|
||||
- "This form needs email validation"
|
||||
- "We need a GET endpoint for availability"
|
||||
- "Users need to upload images here"
|
||||
|
||||
Capturing these while the page is fresh ensures nothing is forgotten. The PRD becomes a complete feature inventory with traceability to the pages that need each feature.
|
||||
|
||||
**PRD grows like this:**
|
||||
|
||||
```markdown
|
||||
## Functional Requirements
|
||||
|
||||
### Email Validation
|
||||
**Required by:** 1.2-Sign-Up, 2.3-Profile-Edit
|
||||
- Validate format on input
|
||||
- Check domain exists
|
||||
- Prevent duplicates
|
||||
|
||||
### Availability Calendar API
|
||||
**Required by:** 2.1-Dog-Calendar, 3.1-Booking-Flow
|
||||
- GET /api/walkers/{id}/availability
|
||||
- Returns 2-week window
|
||||
- Updates via WebSocket
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## The Scenario Structure
|
||||
|
||||
Scenarios organize your design work into a clear hierarchy:
|
||||
|
||||
```
|
||||
C-Scenarios/
|
||||
├── 00-Scenario-Overview.md
|
||||
├── 01-User-Onboarding/
|
||||
│ ├── 1.1-Start-Page/
|
||||
│ │ ├── 1.1-Start-Page.md
|
||||
│ │ ├── Sketches/
|
||||
│ │ └── Prototype/
|
||||
│ └── 1.2-Sign-Up/
|
||||
│ ├── 1.2-Sign-Up.md
|
||||
│ └── ...
|
||||
├── 02-Core-Feature/
|
||||
│ └── ...
|
||||
```
|
||||
|
||||
**Numbering Convention:**
|
||||
- Scenarios: 01, 02, 03...
|
||||
- Pages within scenarios: 1.1, 1.2, 2.1, 2.2...
|
||||
|
||||
---
|
||||
|
||||
## Object IDs
|
||||
|
||||
Every interactive element gets an Object ID for:
|
||||
- Consistent naming across specs and code
|
||||
- Test automation with stable selectors
|
||||
- Analytics tracking
|
||||
- Design-dev communication
|
||||
|
||||
**Format:** `{page}-{section}-{element}` in kebab-case
|
||||
|
||||
**Example:**
|
||||
```
|
||||
welcome-page-hero-cta-button
|
||||
signin-form-email-input
|
||||
signin-form-error-email
|
||||
```
|
||||
|
||||
### Design System Integration
|
||||
|
||||
**When Design System is enabled** (Phase 5), each object in your specification includes component library references:
|
||||
|
||||
**Example specification entry:**
|
||||
```markdown
|
||||
### Submit Button
|
||||
**Object ID:** `signin-form-submit-button`
|
||||
**Component:** primary-button (from Design System)
|
||||
**Figma Component:** Primary Button
|
||||
**Variant:** size=large, type=primary
|
||||
**State:** default
|
||||
|
||||
Triggers form validation and submission...
|
||||
```
|
||||
|
||||
**Benefits:**
|
||||
- Designers know which Figma component to use
|
||||
- Developers know which code component to implement
|
||||
- Design System ensures consistency
|
||||
- Object IDs connect spec → design → code
|
||||
|
||||
**Without Design System:**
|
||||
Just describe the element directly in the specification without component references.
|
||||
|
||||
---
|
||||
|
||||
## The Pressure-Testing Process
|
||||
|
||||
Specification isn't just documentation - it's design validation.
|
||||
|
||||
When you try to specify every detail, you discover:
|
||||
- "What happens when this is empty?"
|
||||
- "How does this look on mobile?"
|
||||
- "What if the user does X before Y?"
|
||||
- "Where does this data come from?"
|
||||
|
||||
Finding these gaps now means addressing them while solutions are still flexible.
|
||||
|
||||
---
|
||||
|
||||
## HTML Prototypes
|
||||
|
||||
Interactive prototypes that validate your design:
|
||||
|
||||
**What they include:**
|
||||
- Semantic HTML matching your specs
|
||||
- CSS using your Design System tokens
|
||||
- JavaScript for interactions and validation
|
||||
- Multilingual content switching
|
||||
|
||||
**What they reveal:**
|
||||
- Visual gaps ("the spacing doesn't match")
|
||||
- Interaction issues ("we forgot the loading state")
|
||||
- Component needs ("we need a phone input component")
|
||||
- Content problems ("the translation is too long")
|
||||
- Flow issues ("this navigation doesn't make sense")
|
||||
|
||||
**File Structure:**
|
||||
```
|
||||
1.1-Start-Page/
|
||||
├── 1.1-Start-Page.md (specification)
|
||||
├── Sketches/
|
||||
│ └── concept-sketch.jpg
|
||||
└── Prototype/
|
||||
├── 1.1-Start-Page-Prototype.html
|
||||
├── 1.1-Start-Page-Prototype.css
|
||||
└── 1.1-Start-Page-Prototype.js
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**Use this phase when:**
|
||||
- Ready to design specific screens/pages
|
||||
- Have strategic clarity from Phase 1-2
|
||||
- Want to validate designs before development
|
||||
|
||||
**Start with exploration (4A) if:**
|
||||
- No existing sketches
|
||||
- Unsure how to approach a feature
|
||||
- Need to think through the user journey
|
||||
|
||||
**Start with analysis (4B) if:**
|
||||
- Have sketches ready to specify
|
||||
- Know what you want, need to document it
|
||||
|
||||
**Use HTML prototypes (4D) if:**
|
||||
- Specifications feel complete
|
||||
- Want to validate before development
|
||||
- Need stakeholder sign-off
|
||||
|
||||
---
|
||||
|
||||
## What to Prepare
|
||||
|
||||
Bring:
|
||||
- Trigger Map (Phase 2) - for user psychology reference
|
||||
- Any existing sketches or wireframes
|
||||
- Technical constraints from PRD (Phase 3)
|
||||
- Content in all supported languages (or draft it together)
|
||||
|
||||
---
|
||||
|
||||
## What Comes Next
|
||||
|
||||
Your specifications enable:
|
||||
|
||||
- **Phase 5: Design System** - Components extracted and documented
|
||||
- **Phase 6: Dev Integration** - Complete handoff package
|
||||
- **Development** - Specs so clear they eliminate guesswork
|
||||
|
||||
---
|
||||
|
||||
## Tips for Great Sessions
|
||||
|
||||
**Think out loud with Baldr**
|
||||
- Share your reasoning
|
||||
- Explore alternatives together
|
||||
- Let the conversation reveal insights
|
||||
|
||||
**Be thorough with states**
|
||||
- Empty states
|
||||
- Loading states
|
||||
- Error states
|
||||
- Success states
|
||||
- Edge cases
|
||||
|
||||
**Don't skip the prototype**
|
||||
- Click through your design
|
||||
- Find the gaps before development
|
||||
- Refine specs based on what you learn
|
||||
|
||||
**Reference your Trigger Map**
|
||||
- Does this serve the user's goals?
|
||||
- Does this avoid their fears?
|
||||
- Does this support business objectives?
|
||||
|
||||
---
|
||||
|
||||
## Example Output
|
||||
|
||||
See: `examples/dog-week-patterns/C-Scenarios/` for complete scenario specifications from a real project.
|
||||
|
||||
---
|
||||
|
||||
*Phase 4 of the Whiteport Design Studio method*
|
||||
|
||||
|
|
@ -1,745 +0,0 @@
|
|||
# Phase 5: Design System (Component Library)
|
||||
|
||||
**Agent:** Baldr the UX Expert
|
||||
**Output:** `D-Design-System/` (or your configured prefix)
|
||||
|
||||
---
|
||||
|
||||
## What This Phase Does
|
||||
|
||||
Design System builds your component library following atomic design principles. Working with Baldr, you create reusable patterns that serve user psychology and ensure visual consistency.
|
||||
|
||||
**The key approach:** The design system grows **alongside** Phase 4 work. As you sketch and specify pages, you simultaneously extract and document components. By the time your scenarios are complete, your design system is already built.
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
Your Design System includes:
|
||||
|
||||
- **Design Tokens** - Colors, typography, spacing, shadows
|
||||
- **Atomic Components** - Buttons, inputs, labels, icons
|
||||
- **Molecular Components** - Form groups, cards, list items
|
||||
- **Organism Components** - Headers, footers, complex sections
|
||||
- **Usage Guidelines** - When and how to use each component
|
||||
- **Component Variants** - Different states and sizes
|
||||
|
||||
---
|
||||
|
||||
## Atomic Design Structure
|
||||
|
||||
Following Brad Frost's methodology:
|
||||
|
||||
### Foundation (Design Tokens)
|
||||
The values everything else builds on:
|
||||
- **Colors** - Primary, secondary, semantic (success, error, warning)
|
||||
- **Typography** - Font families, sizes, weights, line heights
|
||||
- **Spacing** - Consistent spacing scale
|
||||
- **Shadows** - Elevation levels
|
||||
- **Borders** - Radius and stroke styles
|
||||
- **Breakpoints** - Responsive design points
|
||||
|
||||
### Atoms
|
||||
The smallest building blocks:
|
||||
- Buttons
|
||||
- Input fields
|
||||
- Labels
|
||||
- Icons
|
||||
- Badges
|
||||
- Dividers
|
||||
|
||||
### Molecules
|
||||
Groups of atoms working together:
|
||||
- Form groups (label + input + error)
|
||||
- Search bars (input + button)
|
||||
- Card headers (title + action)
|
||||
- Navigation items (icon + label)
|
||||
|
||||
### Organisms
|
||||
Complex components made of molecules:
|
||||
- Page headers
|
||||
- Navigation bars
|
||||
- Form sections
|
||||
- Card layouts
|
||||
- List views
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### The Parallel Workflow
|
||||
|
||||
Phase 5 isn't a separate phase you do *after* Phase 4 - it happens **during** Phase 4:
|
||||
|
||||
```
|
||||
Phase 4 Page Design → Phase 5 Design System
|
||||
───────────────── ─────────────────
|
||||
Sketch button for Page 1.1 → Create "Primary Button" atom
|
||||
Reuse button on Page 1.2 → Reference existing atom
|
||||
Sketch input for Page 2.1 → Create "Text Input" atom
|
||||
Create form on Page 2.2 → Create "Form Group" molecule
|
||||
Notice pattern across pages → Extract as reusable component
|
||||
```
|
||||
|
||||
**The rhythm:**
|
||||
1. Design a page/component in Phase 4
|
||||
2. Notice "This could be reusable"
|
||||
3. Extract to Design System
|
||||
4. Next page references the system component
|
||||
5. Repeat
|
||||
|
||||
### Component Extraction
|
||||
|
||||
As you specify scenarios in Phase 4, components naturally emerge:
|
||||
|
||||
1. **Identify patterns** - "This button style appears in multiple places"
|
||||
2. **Extract to system** - Document the component with all variants
|
||||
3. **Reference in specs** - Link scenario specs to system components
|
||||
|
||||
---
|
||||
|
||||
## Creating Your Design System Documentation
|
||||
|
||||
### The Extraction Process
|
||||
|
||||
**Step 1: Spot the Pattern**
|
||||
|
||||
While working on Phase 4 scenarios, notice when you're designing something reusable:
|
||||
- "I just designed this button for Page 1.1... and I need it again on Page 1.2"
|
||||
- "This form input pattern will be used everywhere"
|
||||
- "We have 3 different card layouts, but they share the same structure"
|
||||
|
||||
**Step 2: Create the Component Document**
|
||||
|
||||
In your `D-Design-System/` folder, create a component file:
|
||||
|
||||
```
|
||||
D-Design-System/
|
||||
├── 01-design-tokens.md
|
||||
├── 02-atoms/
|
||||
│ ├── primary-button.md ← Create this
|
||||
│ ├── text-input.md
|
||||
│ └── ...
|
||||
├── 03-molecules/
|
||||
│ └── form-group.md
|
||||
└── 04-organisms/
|
||||
└── page-header.md
|
||||
```
|
||||
|
||||
**Step 3: Document the Component**
|
||||
|
||||
Use this template for each component:
|
||||
|
||||
```markdown
|
||||
# Primary Button
|
||||
|
||||
## Overview
|
||||
The primary button is used for the main call-to-action on any page or section.
|
||||
|
||||
## Component Details
|
||||
|
||||
**Category:** Atom
|
||||
**Object ID Pattern:** `*-primary-button`
|
||||
**Component Library:** [If using one, e.g., "Chakra UI Button"]
|
||||
**Figma Component:** Primary Button
|
||||
|
||||
## Variants
|
||||
|
||||
### Size
|
||||
- **Small:** Compact spaces, secondary actions
|
||||
- **Medium:** Default size for most use cases
|
||||
- **Large:** Hero sections, important CTAs
|
||||
|
||||
### State
|
||||
- **Default:** Ready for interaction
|
||||
- **Hover:** Visual feedback on mouse over
|
||||
- **Active:** Currently being clicked
|
||||
- **Disabled:** Action not available
|
||||
- **Loading:** Processing user action
|
||||
|
||||
## Visual Specifications
|
||||
|
||||
**Design Tokens:**
|
||||
- Background: `color-primary-500`
|
||||
- Text: `color-white`
|
||||
- Border Radius: `radius-md`
|
||||
- Padding: `spacing-3` (vertical), `spacing-6` (horizontal)
|
||||
- Font: `font-semibold`, `text-base`
|
||||
|
||||
**States:**
|
||||
- Hover: `color-primary-600`
|
||||
- Active: `color-primary-700`
|
||||
- Disabled: `color-gray-300`, opacity 50%
|
||||
|
||||
## Usage Guidelines
|
||||
|
||||
**When to use:**
|
||||
- Primary action on a page or modal
|
||||
- Main CTA in hero sections
|
||||
- Form submissions
|
||||
- Confirmation actions
|
||||
|
||||
**When NOT to use:**
|
||||
- Multiple primary actions (use secondary instead)
|
||||
- Destructive actions (use danger variant)
|
||||
- Navigation (use links or secondary buttons)
|
||||
|
||||
## Accessibility
|
||||
|
||||
- Minimum contrast ratio: 4.5:1
|
||||
- Keyboard accessible (Enter/Space)
|
||||
- Focus visible indicator
|
||||
- ARIA label when icon-only
|
||||
|
||||
## Example Usage
|
||||
|
||||
**In specifications:**
|
||||
```markdown
|
||||
### Submit Button
|
||||
**Object ID:** `contact-form-submit-button`
|
||||
**Component:** primary-button
|
||||
**Variant:** size=large
|
||||
**State:** default → loading → success
|
||||
```
|
||||
|
||||
**In Figma:**
|
||||
Use "Primary Button" component from library
|
||||
|
||||
**In Code (if using Chakra):**
|
||||
```jsx
|
||||
<Button colorScheme="blue" size="lg">Submit</Button>
|
||||
```
|
||||
|
||||
## Used In
|
||||
|
||||
- 1.1-Start-Page: Hero CTA
|
||||
- 1.2-Sign-Up: Submit registration
|
||||
- 2.1-Contact-Form: Send message
|
||||
- [Update as you use the component]
|
||||
```
|
||||
|
||||
**Step 4: Update as You Go**
|
||||
|
||||
Each time you use this component in a new scenario:
|
||||
1. Add it to the "Used In" section
|
||||
2. Note any new variants discovered
|
||||
3. Update specifications if the component evolves
|
||||
|
||||
### Interactive Component Gathering
|
||||
|
||||
**As you work through Phase 4:**
|
||||
|
||||
```
|
||||
Design Page 1.1
|
||||
↓
|
||||
Notice: "This button is reusable"
|
||||
↓
|
||||
Create: primary-button.md in Design System
|
||||
↓
|
||||
Reference in 1.1 spec: component=primary-button
|
||||
↓
|
||||
Design Page 1.2
|
||||
↓
|
||||
Need same button: Reference existing component
|
||||
↓
|
||||
Design Page 2.1
|
||||
↓
|
||||
Need slightly different: Add variant to component doc
|
||||
↓
|
||||
Update all references with new variant option
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Interactive HTML Component Showcase
|
||||
|
||||
Beyond documentation, create an **interactive HTML guide** where stakeholders and developers can see and interact with all components.
|
||||
|
||||
### Structure
|
||||
|
||||
```
|
||||
D-Design-System/
|
||||
├── component-showcase.html ← Interactive guide
|
||||
├── component-showcase.css
|
||||
├── component-showcase.js
|
||||
├── 01-design-tokens.md
|
||||
├── 02-atoms/
|
||||
│ ├── primary-button.md
|
||||
│ └── ...
|
||||
```
|
||||
|
||||
### What the Showcase Includes
|
||||
|
||||
**For each component:**
|
||||
1. **Live rendered examples** - See the actual component
|
||||
2. **All variants** - Size, state, and style options
|
||||
3. **Interactive states** - Hover, click, focus to see behavior
|
||||
4. **Visual specifications** - Design tokens, spacing, colors used
|
||||
5. **Usage notes** - When to use this component
|
||||
|
||||
### Building the Showcase
|
||||
|
||||
**As you document each component:**
|
||||
|
||||
1. **Add to showcase HTML** - Create a card with live examples
|
||||
2. **Show all variants** - Size, state, visual options
|
||||
3. **Make it interactive** - Buttons click, inputs accept text, states change
|
||||
4. **Display tokens** - Show the actual colors, fonts, spacing
|
||||
5. **Keep it synced** - Update when components evolve
|
||||
|
||||
**Use the provided templates:**
|
||||
|
||||
Find ready-to-use templates in:
|
||||
- `reference/templates/component-showcase-template.html`
|
||||
- `reference/templates/component-card-template.html`
|
||||
|
||||
See complete examples in:
|
||||
- `examples/dog-week-patterns/D-Design-System/component-showcase.html`
|
||||
|
||||
### Benefits
|
||||
|
||||
**For Designers:**
|
||||
- Visual inventory of all components
|
||||
- See components in isolation
|
||||
- Test interactions and states
|
||||
- Share with stakeholders for feedback
|
||||
|
||||
**For Developers:**
|
||||
- Visual reference for implementation
|
||||
- Understand variant options
|
||||
- See all states and interactions
|
||||
- Check responsive behavior
|
||||
|
||||
**For Stakeholders:**
|
||||
- See the design language
|
||||
- Review consistency
|
||||
- Experience interactive components
|
||||
- Provide informed feedback
|
||||
|
||||
**For QA:**
|
||||
- Test all component states
|
||||
- Verify accessibility
|
||||
- Check responsive behavior
|
||||
- Document expected behavior
|
||||
|
||||
### Maintaining the Showcase
|
||||
|
||||
**Keep it current:**
|
||||
- Add new components as they're documented
|
||||
- Update when variants change
|
||||
- Remove deprecated components
|
||||
- Sync with Figma library updates
|
||||
|
||||
**Single source of truth:**
|
||||
- Markdown docs = specifications and usage
|
||||
- HTML showcase = visual reference and interaction
|
||||
- Figma = design source
|
||||
- Code = implementation
|
||||
|
||||
All four should stay aligned.
|
||||
|
||||
---
|
||||
|
||||
## Component Documentation
|
||||
|
||||
Each component includes:
|
||||
|
||||
**Purpose & Usage**
|
||||
- When to use this component
|
||||
- When NOT to use it
|
||||
- Psychological intent (connects to Trigger Map)
|
||||
|
||||
**Variants**
|
||||
- Size options (small, medium, large)
|
||||
- State options (default, hover, active, disabled)
|
||||
- Visual variants (primary, secondary, ghost)
|
||||
|
||||
**Specifications**
|
||||
- Design tokens used
|
||||
- Spacing and sizing
|
||||
- Responsive behavior
|
||||
|
||||
**Implementation Notes**
|
||||
- Technical guidance for developers
|
||||
- Accessibility requirements
|
||||
- Animation/interaction details
|
||||
|
||||
---
|
||||
|
||||
## Choosing a Component Library
|
||||
|
||||
### Build vs. Use Existing
|
||||
|
||||
**Build your own Design System when:**
|
||||
- Unique brand identity required
|
||||
- Custom interactions not available in libraries
|
||||
- Full control over every detail needed
|
||||
- Have design resources to maintain system
|
||||
|
||||
**Use existing component library when:**
|
||||
- Fast time to market
|
||||
- Standard UI patterns sufficient
|
||||
- Limited design resources
|
||||
- Want battle-tested accessibility
|
||||
|
||||
**WDS supports both approaches** - you can document either custom components or library components using the same structure.
|
||||
|
||||
---
|
||||
|
||||
## Recommended Component Libraries
|
||||
|
||||
These libraries work well with WDS's specification approach:
|
||||
|
||||
### React Ecosystem
|
||||
|
||||
**Shadcn/ui** (Recommended for flexibility)
|
||||
- Not a library, but a collection of copy-paste components
|
||||
- Built on Radix UI primitives (excellent accessibility)
|
||||
- [ui.shadcn.com](https://ui.shadcn.com)
|
||||
|
||||
*Pros:*
|
||||
- Full component ownership - code lives in your repo
|
||||
- Easy to customize without fighting library constraints
|
||||
- No package bloat or version conflicts
|
||||
- Perfect for WDS documentation (you own the code)
|
||||
|
||||
*Cons:*
|
||||
- Manual updates when new versions release
|
||||
- Need to maintain copied code yourself
|
||||
- Requires understanding of component internals
|
||||
|
||||
---
|
||||
|
||||
**Chakra UI** (Recommended for speed)
|
||||
- Comprehensive component library
|
||||
- Excellent TypeScript support
|
||||
- Built-in dark mode and theming
|
||||
- [chakra-ui.com](https://chakra-ui.com)
|
||||
|
||||
*Pros:*
|
||||
- Fast to get started - works out of the box
|
||||
- Excellent accessibility defaults
|
||||
- Great developer experience
|
||||
- Active community and good documentation
|
||||
|
||||
*Cons:*
|
||||
- Less control over internals
|
||||
- Can be opinionated about styling approach
|
||||
- Larger bundle size than headless options
|
||||
|
||||
---
|
||||
|
||||
**Radix UI** (Recommended for headless)
|
||||
- Unstyled, accessible components
|
||||
- Complete control over styling
|
||||
- Composable primitives
|
||||
- [radix-ui.com](https://radix-ui.com)
|
||||
|
||||
*Pros:*
|
||||
- Best-in-class accessibility built-in
|
||||
- Total styling freedom
|
||||
- Small bundle size (only import what you need)
|
||||
- No design opinions forced on you
|
||||
|
||||
*Cons:*
|
||||
- Requires you to style everything yourself
|
||||
- Steeper learning curve than styled libraries
|
||||
- More initial setup work
|
||||
|
||||
---
|
||||
|
||||
**Material UI (MUI)**
|
||||
- Mature, comprehensive library
|
||||
- Material Design by default (can customize)
|
||||
- Large ecosystem of additional packages
|
||||
- [mui.com](https://mui.com)
|
||||
|
||||
*Pros:*
|
||||
- Battle-tested with large community
|
||||
- Very comprehensive component set
|
||||
- Good documentation and examples
|
||||
- Material Design is familiar to users
|
||||
|
||||
*Cons:*
|
||||
- Heavy bundle size
|
||||
- Material Design aesthetic hard to override
|
||||
- Can feel dated for modern designs
|
||||
- Customization can be complex
|
||||
|
||||
### Vue Ecosystem
|
||||
|
||||
**Nuxt UI**
|
||||
- Built for Nuxt/Vue 3
|
||||
- Modern, fast, accessible
|
||||
- [ui.nuxt.com](https://ui.nuxt.com)
|
||||
|
||||
*Pros:*
|
||||
- Optimized specifically for Nuxt
|
||||
- Modern design aesthetics
|
||||
- Good performance
|
||||
- Growing ecosystem
|
||||
|
||||
*Cons:*
|
||||
- Nuxt-specific (not for plain Vue)
|
||||
- Younger library with smaller community
|
||||
- Less comprehensive than mature alternatives
|
||||
|
||||
---
|
||||
|
||||
**PrimeVue**
|
||||
- Rich component set
|
||||
- Multiple themes available
|
||||
- Enterprise-focused
|
||||
- [primevue.org](https://primevue.org)
|
||||
|
||||
*Pros:*
|
||||
- Very comprehensive component library
|
||||
- Multiple pre-built themes
|
||||
- Good for complex enterprise UIs
|
||||
- Active development
|
||||
|
||||
*Cons:*
|
||||
- Can feel corporate/dated
|
||||
- Larger bundle size
|
||||
- Theme customization can be complex
|
||||
|
||||
### Framework-Agnostic
|
||||
|
||||
**Tailwind CSS** (Recommended for design freedom)
|
||||
- Utility-first CSS framework
|
||||
- Combine with headless components
|
||||
- Maximum flexibility
|
||||
- [tailwindcss.com](https://tailwindcss.com)
|
||||
|
||||
*Pros:*
|
||||
- Complete design freedom
|
||||
- Small production bundle (unused styles purged)
|
||||
- Fast prototyping with utility classes
|
||||
- Pairs perfectly with WDS specifications
|
||||
|
||||
*Cons:*
|
||||
- Not a component library (need to build or combine)
|
||||
- HTML can get verbose
|
||||
- Learning curve for utility-first approach
|
||||
- Need separate component primitives (e.g., Radix)
|
||||
|
||||
### Selection Criteria
|
||||
|
||||
**Choose based on:**
|
||||
|
||||
| Priority | Consider |
|
||||
|----------|----------|
|
||||
| **Speed** | Chakra UI, MUI, PrimeVue (ready-to-use) |
|
||||
| **Customization** | Shadcn/ui, Radix UI, Tailwind (full control) |
|
||||
| **Accessibility** | Radix UI, Chakra UI (built-in a11y) |
|
||||
| **Design System** | Shadcn/ui, custom components (full documentation) |
|
||||
| **Team Familiarity** | What your dev team already knows |
|
||||
|
||||
### WDS Integration Pattern
|
||||
|
||||
**With existing library:**
|
||||
1. Document library components in your WDS Design System
|
||||
2. Reference library component names in specifications
|
||||
3. Add project-specific variants/customizations
|
||||
4. Maintain consistency across your product
|
||||
|
||||
**Example WDS entry for library component:**
|
||||
```markdown
|
||||
## Primary Button
|
||||
|
||||
**Library Component:** Chakra UI Button
|
||||
**Import:** `import { Button } from '@chakra-ui/react'`
|
||||
|
||||
**Usage in WDS:**
|
||||
- Object ID suffix: `-primary-button`
|
||||
- Figma Component: Primary Button
|
||||
- Props: `colorScheme="blue" size="lg"`
|
||||
|
||||
**Variants:**
|
||||
- Default: `variant="solid"`
|
||||
- Secondary: `variant="outline"`
|
||||
- Ghost: `variant="ghost"`
|
||||
|
||||
**When to use:**
|
||||
Primary call-to-action buttons...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Design Application Integration
|
||||
|
||||
Your WDS component system connects to your visual design tools (Figma, Sketch, Adobe XD):
|
||||
|
||||
### Unified Naming Convention
|
||||
|
||||
**Use the exact same names across all tools:**
|
||||
|
||||
| WDS Component Name | Figma Component | Code Component | Object ID |
|
||||
|-------------------|-----------------|----------------|-----------|
|
||||
| `primary-button` | Primary Button | `PrimaryButton` | `*-primary-button` |
|
||||
| `text-input` | Text Input | `TextInput` | `*-text-input` |
|
||||
| `form-group` | Form Group | `FormGroup` | `*-form-group` |
|
||||
|
||||
### The Workflow
|
||||
|
||||
```
|
||||
WDS Specification → Figma Design → Code Implementation
|
||||
───────────────── ───────── ──────────────────
|
||||
1. Document 2. Create 3. Build with
|
||||
"primary-button" component same name
|
||||
in Design System in Figma in code
|
||||
|
||||
Object IDs reference the same names:
|
||||
signin-form-submit-primary-button (everywhere)
|
||||
```
|
||||
|
||||
### Figma/Design Tool Setup
|
||||
|
||||
**Component Library Structure:**
|
||||
|
||||
Match your WDS atomic design structure:
|
||||
```
|
||||
Design File/
|
||||
├── 🎨 Design Tokens
|
||||
│ ├── Colors
|
||||
│ ├── Typography
|
||||
│ └── Spacing
|
||||
├── ⚛️ Atoms
|
||||
│ ├── primary-button
|
||||
│ ├── text-input
|
||||
│ └── ...
|
||||
├── 🧬 Molecules
|
||||
│ ├── form-group
|
||||
│ ├── search-bar
|
||||
│ └── ...
|
||||
└── 🧩 Organisms
|
||||
├── page-header
|
||||
└── ...
|
||||
```
|
||||
|
||||
**Naming in Figma:**
|
||||
- Component names match WDS names (kebab-case or Title Case)
|
||||
- Variants match WDS variants (Primary, Secondary, Disabled)
|
||||
- Properties match WDS states (default, hover, active, error)
|
||||
|
||||
### Benefits of Unified Naming
|
||||
|
||||
- **Designers:** Find components easily in Figma library
|
||||
- **Developers:** No translation needed from design to code
|
||||
- **Testers:** Object IDs make sense and are predictable
|
||||
- **Documentation:** Single source of truth for naming
|
||||
- **Handoff:** Zero ambiguity about which component to use
|
||||
|
||||
### When You Design in Figma
|
||||
|
||||
1. **Reference your WDS Design System** for component names and structure
|
||||
2. **Create visual designs** using those exact names
|
||||
3. **Export/handoff** with matching naming to developers
|
||||
4. **Specifications remain in WDS** - Figma provides the pixels, WDS provides the logic
|
||||
|
||||
---
|
||||
|
||||
## Growing the System
|
||||
|
||||
The design system is living documentation that grows with your product:
|
||||
|
||||
### Starting Point
|
||||
Begin with what you need for current scenarios:
|
||||
- Extract components from Phase 4 work
|
||||
- Document only what you're actually using
|
||||
- Avoid speculating about future needs
|
||||
|
||||
### Evolution
|
||||
As you design more scenarios:
|
||||
- New patterns emerge → add to system
|
||||
- Inconsistencies appear → consolidate
|
||||
- Components evolve → update documentation
|
||||
|
||||
### Maintenance
|
||||
- Keep specs in sync with implementation
|
||||
- Remove unused components
|
||||
- Update when design language evolves
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**Enable Design System phase if:**
|
||||
- Building reusable component library
|
||||
- Multiple pages/scenarios with shared patterns
|
||||
- Need design consistency across product
|
||||
- Handoff requires component documentation
|
||||
|
||||
**Work in parallel with Phase 4 when enabled:**
|
||||
- As you sketch, identify component patterns
|
||||
- As you specify, extract to Design System
|
||||
- Design System grows with each page completed
|
||||
- No separate "design system phase" at the end
|
||||
|
||||
**Skip this phase if:**
|
||||
- Small project (single landing page)
|
||||
- Using existing design system (Material, Chakra, etc.)
|
||||
- One-off designs without reuse
|
||||
- Quick prototype or MVP without component library needs
|
||||
|
||||
**Dedicated consolidation when:**
|
||||
- Multiple scenarios complete, need cleanup
|
||||
- Preparing for development handoff
|
||||
- Found inconsistencies to resolve
|
||||
- Onboarding new team members
|
||||
|
||||
> **Note:** You'll choose whether to enable the Design System phase during project setup (`workflow-init`). This decision can be revisited as your project grows.
|
||||
|
||||
---
|
||||
|
||||
## What to Prepare
|
||||
|
||||
Bring:
|
||||
- Completed or in-progress scenario specs (Phase 4)
|
||||
- Any existing brand guidelines
|
||||
- Technical framework constraints (React components, etc.)
|
||||
|
||||
---
|
||||
|
||||
## What Comes Next
|
||||
|
||||
Your Design System enables:
|
||||
|
||||
- **Consistent implementation** - Developers build from clear specs
|
||||
- **Faster design** - Reuse components across scenarios
|
||||
- **Phase 6 handoff** - Complete component inventory
|
||||
|
||||
---
|
||||
|
||||
## Tips for Great Sessions
|
||||
|
||||
**Extract, don't invent**
|
||||
- Components should come from real design needs
|
||||
- Don't create components "just in case"
|
||||
- Let the system grow from actual scenarios
|
||||
|
||||
**Document the why**
|
||||
- Why does this button look this way?
|
||||
- What user trigger does it serve?
|
||||
- When should developers use variant A vs B?
|
||||
|
||||
**Stay consistent**
|
||||
- Same component = same specification
|
||||
- Variations should be intentional
|
||||
- When in doubt, simplify
|
||||
|
||||
**Connect to psychology**
|
||||
- Every design choice serves a purpose
|
||||
- Reference your Trigger Map
|
||||
- Components should feel intentional, not arbitrary
|
||||
|
||||
---
|
||||
|
||||
## Example Output
|
||||
|
||||
See: `examples/dog-week-patterns/D-Design-System/` for a complete Design System from a real project.
|
||||
|
||||
---
|
||||
|
||||
*Phase 5 of the Whiteport Design Studio method*
|
||||
|
||||
|
|
@ -1,470 +0,0 @@
|
|||
# Phase 6: PRD Finalization
|
||||
|
||||
**Agent:** Freyja the PM
|
||||
**Output:** Complete PRD in `C-Requirements/` + Handoff materials in `E-UI-Roadmap/`
|
||||
**Duration:** 2-4 hours
|
||||
|
||||
---
|
||||
|
||||
## What This Phase Does
|
||||
|
||||
PRD Finalization compiles all the functional requirements discovered during Phase 4 into a complete, development-ready Product Requirements Document.
|
||||
|
||||
**The key insight:** Your PRD started in Phase 3 with platform/infrastructure. During Phase 4, each page added functional requirements (via step 4E). Now you organize, prioritize, and finalize everything for development handoff.
|
||||
|
||||
By the end, developers have a complete PRD covering both technical foundation and all UI-driven features.
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
**Updated PRD (C-Requirements/) includes:**
|
||||
|
||||
**From Phase 3 (Technical Foundation):**
|
||||
- Platform architecture
|
||||
- Data model
|
||||
- Integration map
|
||||
- Technical proofs of concept
|
||||
- Experimental endpoints
|
||||
- Security framework
|
||||
|
||||
**Added from Phase 4 (Functional Requirements):**
|
||||
- All features discovered during page design
|
||||
- Page-to-feature traceability
|
||||
- Priority rankings
|
||||
- Feature dependencies
|
||||
- Implementation notes
|
||||
|
||||
**New in Phase 6:**
|
||||
- Feature organization by epic/area
|
||||
- Development sequence
|
||||
- MVP scope definition
|
||||
- Technical dependencies mapped
|
||||
|
||||
**Handoff Package (E-UI-Roadmap/):**
|
||||
- Priority sequence document
|
||||
- Scenario-to-development mapping
|
||||
- Component inventory (if Design System enabled)
|
||||
- Open questions for dev team
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Stage 1: Review Collected Requirements (30-45 minutes)
|
||||
|
||||
**Gather all functional requirements added during Phase 4:**
|
||||
|
||||
Go through each scenario specification and extract the requirements added in step 4E:
|
||||
|
||||
```
|
||||
From 1.1-Start-Page:
|
||||
- User authentication system
|
||||
- Session management
|
||||
- Password reset flow
|
||||
|
||||
From 1.2-Sign-Up:
|
||||
- Email validation (format, domain check, duplicate prevention)
|
||||
- Phone number validation with country code
|
||||
- Account activation via email
|
||||
|
||||
From 2.1-Dog-Calendar:
|
||||
- Availability calendar API
|
||||
- Real-time updates via WebSocket
|
||||
- Date/time localization
|
||||
```
|
||||
|
||||
**Compile into master feature list** with page references preserved.
|
||||
|
||||
### Stage 2: Organize by Epic/Feature Area (30-45 minutes)
|
||||
|
||||
**Group related features together:**
|
||||
|
||||
```markdown
|
||||
## Epic 1: User Authentication & Account Management
|
||||
|
||||
### Features
|
||||
|
||||
**User Registration**
|
||||
- Required by: 1.2-Sign-Up
|
||||
- Email validation (format, domain, duplicates)
|
||||
- Phone validation with country codes
|
||||
- Account activation flow
|
||||
|
||||
**User Login**
|
||||
- Required by: 1.1-Start-Page, multiple pages
|
||||
- Email/password authentication
|
||||
- Session management (30-day persistence)
|
||||
- "Remember me" functionality
|
||||
|
||||
**Password Management**
|
||||
- Required by: 1.1-Start-Page (reset link)
|
||||
- Password reset via email
|
||||
- Password strength validation
|
||||
- Secure token generation
|
||||
```
|
||||
|
||||
### Stage 3: Define Priorities & Sequence (45-60 minutes)
|
||||
|
||||
**Based on your Phase 2 Feature Impact Analysis:**
|
||||
|
||||
Reference the scoring you did in Phase 2 to inform priorities:
|
||||
|
||||
```markdown
|
||||
## Development Sequence
|
||||
|
||||
### Priority 1: MVP - Core User Flow
|
||||
**Target:** Weeks 1-4
|
||||
|
||||
Features from Epic 1 (Authentication) + Epic 2 (Core Booking):
|
||||
- User registration (Impact Score: 14)
|
||||
- User login (Impact Score: 16)
|
||||
- Availability calendar (Impact Score: 16)
|
||||
- Basic booking flow (Impact Score: 18)
|
||||
|
||||
**Why this order:**
|
||||
Serves Priority 1 target group, addresses highest-impact drivers.
|
||||
|
||||
### Priority 2: Enhanced Features
|
||||
**Target:** Weeks 5-8
|
||||
|
||||
Features from Epic 3 (Payments) + Epic 4 (Notifications):
|
||||
- Payment processing (Impact Score: 12)
|
||||
- Booking confirmations (Impact Score: 11)
|
||||
- Calendar sync (Impact Score: 8)
|
||||
```
|
||||
|
||||
### Stage 4: Map Dependencies (20-30 minutes)
|
||||
|
||||
**Technical dependencies between features:**
|
||||
|
||||
```markdown
|
||||
## Feature Dependencies
|
||||
|
||||
**Booking Flow** depends on:
|
||||
- ✓ User authentication (must be logged in)
|
||||
- ✓ Availability calendar (must see open slots)
|
||||
- ⚠️ Payment system (can launch with "pay in person" temporarily)
|
||||
- ⚠️ Notifications (can launch without, add later)
|
||||
|
||||
**Recommendation:** Launch MVP with auth + calendar, add payments in Sprint 2.
|
||||
```
|
||||
|
||||
### Stage 5: Create Handoff Package (30-45 minutes)
|
||||
|
||||
**Organize for development team:**
|
||||
|
||||
In `E-UI-Roadmap/` folder, create:
|
||||
|
||||
1. **`priority-sequence.md`** - What to build when and why
|
||||
2. **`scenario-to-epic-mapping.md`** - How WDS scenarios map to dev epics
|
||||
3. **`component-inventory.md`** (if Design System enabled) - All components needed
|
||||
4. **`open-questions.md`** - Decisions for dev team to make
|
||||
|
||||
---
|
||||
|
||||
## The Complete PRD Structure
|
||||
|
||||
Your finalized PRD in `C-Requirements/` combines all phases:
|
||||
|
||||
```markdown
|
||||
# Product Requirements Document
|
||||
|
||||
## 1. Technical Foundation (from Phase 3)
|
||||
|
||||
### Platform Architecture
|
||||
- Technology stack decisions
|
||||
- Infrastructure approach
|
||||
- Hosting and deployment
|
||||
|
||||
### Data Model
|
||||
- Core entities and relationships
|
||||
- Database schema
|
||||
- Data flow diagrams
|
||||
|
||||
### Integrations
|
||||
- External services (Google Maps, Stripe, etc.)
|
||||
- API specifications
|
||||
- Authentication providers
|
||||
|
||||
### Security & Performance
|
||||
- Authentication/authorization approach
|
||||
- Data protection
|
||||
- Performance requirements
|
||||
- Proofs of concept results
|
||||
|
||||
## 2. Functional Requirements (from Phase 4)
|
||||
|
||||
### Epic 1: User Authentication & Account Management
|
||||
**Features:**
|
||||
- User registration (Required by: 1.2-Sign-Up)
|
||||
- User login (Required by: 1.1-Start-Page, multiple)
|
||||
- Password management (Required by: 1.1-Start-Page)
|
||||
|
||||
[Detailed specifications for each feature]
|
||||
|
||||
### Epic 2: [Next Epic]
|
||||
[...]
|
||||
|
||||
## 3. Development Roadmap (from Phase 6)
|
||||
|
||||
### Priority 1: MVP (Weeks 1-4)
|
||||
- Features list with Impact Scores
|
||||
- Why these first (references Trigger Map)
|
||||
- Timeline estimate
|
||||
- Dependencies
|
||||
|
||||
### Priority 2: Enhanced Features (Weeks 5-8)
|
||||
[...]
|
||||
|
||||
## 4. Dependencies & Constraints
|
||||
- Technical dependencies between features
|
||||
- Design constraints from Phase 4
|
||||
- Third-party limitations discovered in Phase 3
|
||||
|
||||
## 5. Success Metrics
|
||||
- Business goals from Phase 1
|
||||
- Feature-specific KPIs
|
||||
- How we measure success
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Continuous vs. Final Handoff
|
||||
|
||||
**The pattern:**
|
||||
|
||||
- **Phase 3:** Initial PRD with technical foundation
|
||||
- **Phase 4:** PRD grows with each page (step 4E adds requirements)
|
||||
- **Phase 6 (First time):** Organize MVP scope from completed scenarios
|
||||
- Create first handoff package
|
||||
- Development can begin
|
||||
- **Phase 4 continues:** More pages designed, more requirements added
|
||||
- **Phase 6 (Ongoing):** Update PRD priorities, create new handoff packages
|
||||
- Weekly or bi-weekly updates
|
||||
- Keep dev team synced
|
||||
|
||||
**You can run Phase 6 multiple times as design progresses.**
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**First PRD Finalization when:**
|
||||
- You have MVP-level scenarios complete (enough for dev to start)
|
||||
- Core user flows are specified
|
||||
- Critical features are documented
|
||||
- Enough work for 2-4 week sprint
|
||||
|
||||
**Ongoing PRD Updates as:**
|
||||
- Additional scenarios complete
|
||||
- New feature areas designed
|
||||
- Priorities shift based on learning
|
||||
- Sprint planning needs updated scope
|
||||
|
||||
**Timeline example:**
|
||||
|
||||
```
|
||||
Week 1-2: Phase 1-3 (Strategy, Research, Platform foundation)
|
||||
Week 3-4: Phase 4 Scenarios 1-3 (Core MVP flows)
|
||||
Week 5: Phase 6 First Finalization
|
||||
└──► PRD v1.0: MVP scope ready
|
||||
└──► Development Sprint 1 begins
|
||||
|
||||
Week 6-7: Phase 4 Scenarios 4-6 (Additional features)
|
||||
Phase 5 Design System (extract components)
|
||||
Week 8: Phase 6 Update
|
||||
└──► PRD v1.1: Sprint 2 scope added
|
||||
└──► Development Sprint 2 begins
|
||||
|
||||
Week 9+: Design continues in parallel with development
|
||||
Regular Phase 6 updates for new sprints
|
||||
```
|
||||
|
||||
**The beauty:** Design doesn't block development. You hand off in waves.
|
||||
|
||||
Complete list for test automation:
|
||||
|
||||
| Scenario | Object ID | Element Type | Notes |
|
||||
|----------|-----------|--------------|-------|
|
||||
| 1.1 | `welcome-hero-cta` | Button | Primary action |
|
||||
| 1.1 | `welcome-signin-link` | Link | Secondary action |
|
||||
| 1.2 | `signin-email-input` | Input | Required field |
|
||||
| 1.2 | `signin-error-email` | Error | Validation message |
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Review Completeness
|
||||
|
||||
Before handoff, verify:
|
||||
- All scenarios specified and reviewed
|
||||
- Design system covers all components
|
||||
- Object IDs assigned throughout
|
||||
- Multilingual content complete
|
||||
- HTML prototypes validated
|
||||
|
||||
### Identify Priorities
|
||||
|
||||
With Freyja, map your Trigger Map priorities to development order:
|
||||
- Which user triggers are most critical?
|
||||
- What's the minimum viable experience?
|
||||
- What can wait for later releases?
|
||||
|
||||
### Document Technical Context
|
||||
|
||||
Capture what developers need to know:
|
||||
- Design decisions and their rationale
|
||||
- Technical constraints discovered during design
|
||||
- Interaction patterns that need special attention
|
||||
- Performance considerations
|
||||
|
||||
### Create the Handoff
|
||||
|
||||
Organize everything into the UI Roadmap folder:
|
||||
- Clear priority sequence
|
||||
- Complete component inventory
|
||||
- Technical notes and open questions
|
||||
- Verification checklist
|
||||
|
||||
---
|
||||
|
||||
## The Handoff Checklist
|
||||
|
||||
```markdown
|
||||
## Design Handoff Verification
|
||||
|
||||
### Product Foundation
|
||||
- [ ] Product Brief complete and current
|
||||
- [ ] Trigger Map with prioritized users and goals
|
||||
- [ ] ICP clearly defined
|
||||
|
||||
### Requirements
|
||||
- [ ] PRD with technical specifications
|
||||
- [ ] Platform architecture documented
|
||||
- [ ] Integration requirements listed
|
||||
|
||||
### Visual Design
|
||||
- [ ] All scenarios have specifications
|
||||
- [ ] All pages have Object IDs
|
||||
- [ ] States documented (empty, loading, error, success)
|
||||
|
||||
### Design System
|
||||
- [ ] All components documented
|
||||
- [ ] Design tokens defined
|
||||
- [ ] Usage guidelines written
|
||||
|
||||
### Validation
|
||||
- [ ] HTML prototypes created for key scenarios
|
||||
- [ ] Stakeholder review complete
|
||||
- [ ] Open questions documented
|
||||
|
||||
### Ready for Development ✅
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**First handoff when:**
|
||||
- You have enough scenarios for MVP
|
||||
- Core user flows are specified
|
||||
- Critical components are documented
|
||||
- Developers can start building foundational features
|
||||
|
||||
**Ongoing handoffs as:**
|
||||
- Each major scenario completes
|
||||
- New component patterns emerge
|
||||
- Design decisions affect development
|
||||
- Sprint planning needs updated priorities
|
||||
|
||||
**The rhythm:**
|
||||
|
||||
```
|
||||
Week 1-2: Design Phase 1-3 (Strategy, Research, Platform)
|
||||
Week 3-4: Design Phase 4 Scenarios 1-2 (Core flows)
|
||||
└──► First Handoff: MVP scope
|
||||
Week 5-6: Design Phase 4 Scenarios 3-4
|
||||
Design Phase 5 (Components from 1-2)
|
||||
└──► Second Handoff: Additional features
|
||||
Week 7+: Design continues...
|
||||
Development builds in parallel
|
||||
└──► Ongoing handoffs as design progresses
|
||||
```
|
||||
|
||||
**You DON'T need to finish all design before handing off.**
|
||||
|
||||
Development and design work in parallel streams, with regular sync points.
|
||||
|
||||
---
|
||||
|
||||
## What to Prepare
|
||||
|
||||
Bring:
|
||||
- Completed scenario specifications (Phase 4)
|
||||
- Design System (Phase 5)
|
||||
- PRD (Phase 3)
|
||||
- Trigger Map priorities (Phase 2)
|
||||
|
||||
---
|
||||
|
||||
## What Comes Next
|
||||
|
||||
Your UI Roadmap enables:
|
||||
|
||||
- **Development kickoff** - Clear starting point
|
||||
- **Sprint planning** - Prioritized work items
|
||||
- **Test automation** - Object ID inventory
|
||||
- **QA validation** - Specifications to verify against
|
||||
|
||||
---
|
||||
|
||||
## Tips for Great Sessions
|
||||
|
||||
**Think from dev perspective**
|
||||
- What questions will developers have?
|
||||
- What decisions can't you make for them?
|
||||
- What context will save them time?
|
||||
|
||||
**Be explicit about priorities**
|
||||
- Not everything is Priority 1
|
||||
- Make trade-offs visible
|
||||
- Connect priorities to business goals
|
||||
|
||||
**Document the unknowns**
|
||||
- Open questions are valuable
|
||||
- Don't pretend certainty you don't have
|
||||
- Let dev team contribute decisions
|
||||
|
||||
**Keep it updated**
|
||||
- Handoff is ongoing, not one-time
|
||||
- Update as design evolves
|
||||
- Maintain as source of truth
|
||||
|
||||
---
|
||||
|
||||
## Integration with BMM
|
||||
|
||||
When handing off to BMad Method (BMM) for development:
|
||||
|
||||
```
|
||||
WDS → E-UI-Roadmap/ → BMM Architecture & Stories
|
||||
```
|
||||
|
||||
The UI Roadmap provides:
|
||||
- Context for architecture decisions
|
||||
- Specifications for story creation
|
||||
- Priorities for sprint planning
|
||||
- Test automation foundations
|
||||
|
||||
---
|
||||
|
||||
## Example Output
|
||||
|
||||
See: `examples/dog-week-patterns/E-UI-Roadmap/` for a complete UI Roadmap from a real project.
|
||||
|
||||
---
|
||||
|
||||
*Phase 6 of the Whiteport Design Studio method*
|
||||
|
||||
|
|
@ -1,469 +0,0 @@
|
|||
# Phase 6: PRD Finalization (Complete PRD)
|
||||
|
||||
**Agent:** Freyja the PM
|
||||
**Output:** Complete PRD in `C-Requirements/` + Handoff materials in `E-UI-Roadmap/`
|
||||
|
||||
---
|
||||
|
||||
## What This Phase Does
|
||||
|
||||
PRD Finalization compiles all the functional requirements discovered during Phase 4 into a complete, development-ready Product Requirements Document.
|
||||
|
||||
**The key insight:** Your PRD started in Phase 3 with platform/infrastructure. During Phase 4, each page added functional requirements (via step 4E). Now you organize, prioritize, and finalize everything for development handoff.
|
||||
|
||||
By the end, developers have a complete PRD covering both technical foundation and all UI-driven features.
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
**Updated PRD (C-Requirements/) includes:**
|
||||
|
||||
**From Phase 3 (Technical Foundation):**
|
||||
- Platform architecture
|
||||
- Data model
|
||||
- Integration map
|
||||
- Technical proofs of concept
|
||||
- Experimental endpoints
|
||||
- Security framework
|
||||
|
||||
**Added from Phase 4 (Functional Requirements):**
|
||||
- All features discovered during page design
|
||||
- Page-to-feature traceability
|
||||
- Priority rankings
|
||||
- Feature dependencies
|
||||
- Implementation notes
|
||||
|
||||
**New in Phase 6:**
|
||||
- Feature organization by epic/area
|
||||
- Development sequence
|
||||
- MVP scope definition
|
||||
- Technical dependencies mapped
|
||||
|
||||
**Handoff Package (E-UI-Roadmap/):**
|
||||
- Priority sequence document
|
||||
- Scenario-to-development mapping
|
||||
- Component inventory (if Design System enabled)
|
||||
- Open questions for dev team
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Stage 1: Review Collected Requirements (30-45 minutes)
|
||||
|
||||
**Gather all functional requirements added during Phase 4:**
|
||||
|
||||
Go through each scenario specification and extract the requirements added in step 4E:
|
||||
|
||||
```
|
||||
From 1.1-Start-Page:
|
||||
- User authentication system
|
||||
- Session management
|
||||
- Password reset flow
|
||||
|
||||
From 1.2-Sign-Up:
|
||||
- Email validation (format, domain check, duplicate prevention)
|
||||
- Phone number validation with country code
|
||||
- Account activation via email
|
||||
|
||||
From 2.1-Dog-Calendar:
|
||||
- Availability calendar API
|
||||
- Real-time updates via WebSocket
|
||||
- Date/time localization
|
||||
```
|
||||
|
||||
**Compile into master feature list** with page references preserved.
|
||||
|
||||
### Stage 2: Organize by Epic/Feature Area (30-45 minutes)
|
||||
|
||||
**Group related features together:**
|
||||
|
||||
```markdown
|
||||
## Epic 1: User Authentication & Account Management
|
||||
|
||||
### Features
|
||||
|
||||
**User Registration**
|
||||
- Required by: 1.2-Sign-Up
|
||||
- Email validation (format, domain, duplicates)
|
||||
- Phone validation with country codes
|
||||
- Account activation flow
|
||||
|
||||
**User Login**
|
||||
- Required by: 1.1-Start-Page, multiple pages
|
||||
- Email/password authentication
|
||||
- Session management (30-day persistence)
|
||||
- "Remember me" functionality
|
||||
|
||||
**Password Management**
|
||||
- Required by: 1.1-Start-Page (reset link)
|
||||
- Password reset via email
|
||||
- Password strength validation
|
||||
- Secure token generation
|
||||
```
|
||||
|
||||
### Stage 3: Define Priorities & Sequence (45-60 minutes)
|
||||
|
||||
**Based on your Phase 2 Feature Impact Analysis:**
|
||||
|
||||
Reference the scoring you did in Phase 2 to inform priorities:
|
||||
|
||||
```markdown
|
||||
## Development Sequence
|
||||
|
||||
### Priority 1: MVP - Core User Flow
|
||||
**Target:** Weeks 1-4
|
||||
|
||||
Features from Epic 1 (Authentication) + Epic 2 (Core Booking):
|
||||
- User registration (Impact Score: 14)
|
||||
- User login (Impact Score: 16)
|
||||
- Availability calendar (Impact Score: 16)
|
||||
- Basic booking flow (Impact Score: 18)
|
||||
|
||||
**Why this order:**
|
||||
Serves Priority 1 target group, addresses highest-impact drivers.
|
||||
|
||||
### Priority 2: Enhanced Features
|
||||
**Target:** Weeks 5-8
|
||||
|
||||
Features from Epic 3 (Payments) + Epic 4 (Notifications):
|
||||
- Payment processing (Impact Score: 12)
|
||||
- Booking confirmations (Impact Score: 11)
|
||||
- Calendar sync (Impact Score: 8)
|
||||
```
|
||||
|
||||
### Stage 4: Map Dependencies (20-30 minutes)
|
||||
|
||||
**Technical dependencies between features:**
|
||||
|
||||
```markdown
|
||||
## Feature Dependencies
|
||||
|
||||
**Booking Flow** depends on:
|
||||
- ✓ User authentication (must be logged in)
|
||||
- ✓ Availability calendar (must see open slots)
|
||||
- ⚠️ Payment system (can launch with "pay in person" temporarily)
|
||||
- ⚠️ Notifications (can launch without, add later)
|
||||
|
||||
**Recommendation:** Launch MVP with auth + calendar, add payments in Sprint 2.
|
||||
```
|
||||
|
||||
### Stage 5: Create Handoff Package (30-45 minutes)
|
||||
|
||||
**Organize for development team:**
|
||||
|
||||
In `E-UI-Roadmap/` folder, create:
|
||||
|
||||
1. **`priority-sequence.md`** - What to build when and why
|
||||
2. **`scenario-to-epic-mapping.md`** - How WDS scenarios map to dev epics
|
||||
3. **`component-inventory.md`** (if Design System enabled) - All components needed
|
||||
4. **`open-questions.md`** - Decisions for dev team to make
|
||||
|
||||
---
|
||||
|
||||
## The Complete PRD Structure
|
||||
|
||||
Your finalized PRD in `C-Requirements/` combines all phases:
|
||||
|
||||
```markdown
|
||||
# Product Requirements Document
|
||||
|
||||
## 1. Technical Foundation (from Phase 3)
|
||||
|
||||
### Platform Architecture
|
||||
- Technology stack decisions
|
||||
- Infrastructure approach
|
||||
- Hosting and deployment
|
||||
|
||||
### Data Model
|
||||
- Core entities and relationships
|
||||
- Database schema
|
||||
- Data flow diagrams
|
||||
|
||||
### Integrations
|
||||
- External services (Google Maps, Stripe, etc.)
|
||||
- API specifications
|
||||
- Authentication providers
|
||||
|
||||
### Security & Performance
|
||||
- Authentication/authorization approach
|
||||
- Data protection
|
||||
- Performance requirements
|
||||
- Proofs of concept results
|
||||
|
||||
## 2. Functional Requirements (from Phase 4)
|
||||
|
||||
### Epic 1: User Authentication & Account Management
|
||||
**Features:**
|
||||
- User registration (Required by: 1.2-Sign-Up)
|
||||
- User login (Required by: 1.1-Start-Page, multiple)
|
||||
- Password management (Required by: 1.1-Start-Page)
|
||||
|
||||
[Detailed specifications for each feature]
|
||||
|
||||
### Epic 2: [Next Epic]
|
||||
[...]
|
||||
|
||||
## 3. Development Roadmap (from Phase 6)
|
||||
|
||||
### Priority 1: MVP (Weeks 1-4)
|
||||
- Features list with Impact Scores
|
||||
- Why these first (references Trigger Map)
|
||||
- Timeline estimate
|
||||
- Dependencies
|
||||
|
||||
### Priority 2: Enhanced Features (Weeks 5-8)
|
||||
[...]
|
||||
|
||||
## 4. Dependencies & Constraints
|
||||
- Technical dependencies between features
|
||||
- Design constraints from Phase 4
|
||||
- Third-party limitations discovered in Phase 3
|
||||
|
||||
## 5. Success Metrics
|
||||
- Business goals from Phase 1
|
||||
- Feature-specific KPIs
|
||||
- How we measure success
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Continuous vs. Final Handoff
|
||||
|
||||
**The pattern:**
|
||||
|
||||
- **Phase 3:** Initial PRD with technical foundation
|
||||
- **Phase 4:** PRD grows with each page (step 4E adds requirements)
|
||||
- **Phase 6 (First time):** Organize MVP scope from completed scenarios
|
||||
- Create first handoff package
|
||||
- Development can begin
|
||||
- **Phase 4 continues:** More pages designed, more requirements added
|
||||
- **Phase 6 (Ongoing):** Update PRD priorities, create new handoff packages
|
||||
- Weekly or bi-weekly updates
|
||||
- Keep dev team synced
|
||||
|
||||
**You can run Phase 6 multiple times as design progresses.**
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**First PRD Finalization when:**
|
||||
- You have MVP-level scenarios complete (enough for dev to start)
|
||||
- Core user flows are specified
|
||||
- Critical features are documented
|
||||
- Enough work for 2-4 week sprint
|
||||
|
||||
**Ongoing PRD Updates as:**
|
||||
- Additional scenarios complete
|
||||
- New feature areas designed
|
||||
- Priorities shift based on learning
|
||||
- Sprint planning needs updated scope
|
||||
|
||||
**Timeline example:**
|
||||
|
||||
```
|
||||
Week 1-2: Phase 1-3 (Strategy, Research, Platform foundation)
|
||||
Week 3-4: Phase 4 Scenarios 1-3 (Core MVP flows)
|
||||
Week 5: Phase 6 First Finalization
|
||||
└──► PRD v1.0: MVP scope ready
|
||||
└──► Development Sprint 1 begins
|
||||
|
||||
Week 6-7: Phase 4 Scenarios 4-6 (Additional features)
|
||||
Phase 5 Design System (extract components)
|
||||
Week 8: Phase 6 Update
|
||||
└──► PRD v1.1: Sprint 2 scope added
|
||||
└──► Development Sprint 2 begins
|
||||
|
||||
Week 9+: Design continues in parallel with development
|
||||
Regular Phase 6 updates for new sprints
|
||||
```
|
||||
|
||||
**The beauty:** Design doesn't block development. You hand off in waves.
|
||||
|
||||
Complete list for test automation:
|
||||
|
||||
| Scenario | Object ID | Element Type | Notes |
|
||||
|----------|-----------|--------------|-------|
|
||||
| 1.1 | `welcome-hero-cta` | Button | Primary action |
|
||||
| 1.1 | `welcome-signin-link` | Link | Secondary action |
|
||||
| 1.2 | `signin-email-input` | Input | Required field |
|
||||
| 1.2 | `signin-error-email` | Error | Validation message |
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Review Completeness
|
||||
|
||||
Before handoff, verify:
|
||||
- All scenarios specified and reviewed
|
||||
- Design system covers all components
|
||||
- Object IDs assigned throughout
|
||||
- Multilingual content complete
|
||||
- HTML prototypes validated
|
||||
|
||||
### Identify Priorities
|
||||
|
||||
With Freyja, map your Trigger Map priorities to development order:
|
||||
- Which user triggers are most critical?
|
||||
- What's the minimum viable experience?
|
||||
- What can wait for later releases?
|
||||
|
||||
### Document Technical Context
|
||||
|
||||
Capture what developers need to know:
|
||||
- Design decisions and their rationale
|
||||
- Technical constraints discovered during design
|
||||
- Interaction patterns that need special attention
|
||||
- Performance considerations
|
||||
|
||||
### Create the Handoff
|
||||
|
||||
Organize everything into the UI Roadmap folder:
|
||||
- Clear priority sequence
|
||||
- Complete component inventory
|
||||
- Technical notes and open questions
|
||||
- Verification checklist
|
||||
|
||||
---
|
||||
|
||||
## The Handoff Checklist
|
||||
|
||||
```markdown
|
||||
## Design Handoff Verification
|
||||
|
||||
### Product Foundation
|
||||
- [ ] Product Brief complete and current
|
||||
- [ ] Trigger Map with prioritized users and goals
|
||||
- [ ] ICP clearly defined
|
||||
|
||||
### Requirements
|
||||
- [ ] PRD with technical specifications
|
||||
- [ ] Platform architecture documented
|
||||
- [ ] Integration requirements listed
|
||||
|
||||
### Visual Design
|
||||
- [ ] All scenarios have specifications
|
||||
- [ ] All pages have Object IDs
|
||||
- [ ] States documented (empty, loading, error, success)
|
||||
|
||||
### Design System
|
||||
- [ ] All components documented
|
||||
- [ ] Design tokens defined
|
||||
- [ ] Usage guidelines written
|
||||
|
||||
### Validation
|
||||
- [ ] HTML prototypes created for key scenarios
|
||||
- [ ] Stakeholder review complete
|
||||
- [ ] Open questions documented
|
||||
|
||||
### Ready for Development ✅
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## When to Use This Phase
|
||||
|
||||
**First handoff when:**
|
||||
- You have enough scenarios for MVP
|
||||
- Core user flows are specified
|
||||
- Critical components are documented
|
||||
- Developers can start building foundational features
|
||||
|
||||
**Ongoing handoffs as:**
|
||||
- Each major scenario completes
|
||||
- New component patterns emerge
|
||||
- Design decisions affect development
|
||||
- Sprint planning needs updated priorities
|
||||
|
||||
**The rhythm:**
|
||||
|
||||
```
|
||||
Week 1-2: Design Phase 1-3 (Strategy, Research, Platform)
|
||||
Week 3-4: Design Phase 4 Scenarios 1-2 (Core flows)
|
||||
└──► First Handoff: MVP scope
|
||||
Week 5-6: Design Phase 4 Scenarios 3-4
|
||||
Design Phase 5 (Components from 1-2)
|
||||
└──► Second Handoff: Additional features
|
||||
Week 7+: Design continues...
|
||||
Development builds in parallel
|
||||
└──► Ongoing handoffs as design progresses
|
||||
```
|
||||
|
||||
**You DON'T need to finish all design before handing off.**
|
||||
|
||||
Development and design work in parallel streams, with regular sync points.
|
||||
|
||||
---
|
||||
|
||||
## What to Prepare
|
||||
|
||||
Bring:
|
||||
- Completed scenario specifications (Phase 4)
|
||||
- Design System (Phase 5)
|
||||
- PRD (Phase 3)
|
||||
- Trigger Map priorities (Phase 2)
|
||||
|
||||
---
|
||||
|
||||
## What Comes Next
|
||||
|
||||
Your UI Roadmap enables:
|
||||
|
||||
- **Development kickoff** - Clear starting point
|
||||
- **Sprint planning** - Prioritized work items
|
||||
- **Test automation** - Object ID inventory
|
||||
- **QA validation** - Specifications to verify against
|
||||
|
||||
---
|
||||
|
||||
## Tips for Great Sessions
|
||||
|
||||
**Think from dev perspective**
|
||||
- What questions will developers have?
|
||||
- What decisions can't you make for them?
|
||||
- What context will save them time?
|
||||
|
||||
**Be explicit about priorities**
|
||||
- Not everything is Priority 1
|
||||
- Make trade-offs visible
|
||||
- Connect priorities to business goals
|
||||
|
||||
**Document the unknowns**
|
||||
- Open questions are valuable
|
||||
- Don't pretend certainty you don't have
|
||||
- Let dev team contribute decisions
|
||||
|
||||
**Keep it updated**
|
||||
- Handoff is ongoing, not one-time
|
||||
- Update as design evolves
|
||||
- Maintain as source of truth
|
||||
|
||||
---
|
||||
|
||||
## Integration with BMM
|
||||
|
||||
When handing off to BMad Method (BMM) for development:
|
||||
|
||||
```
|
||||
WDS → E-UI-Roadmap/ → BMM Architecture & Stories
|
||||
```
|
||||
|
||||
The UI Roadmap provides:
|
||||
- Context for architecture decisions
|
||||
- Specifications for story creation
|
||||
- Priorities for sprint planning
|
||||
- Test automation foundations
|
||||
|
||||
---
|
||||
|
||||
## Example Output
|
||||
|
||||
See: `examples/dog-week-patterns/E-UI-Roadmap/` for a complete UI Roadmap from a real project.
|
||||
|
||||
---
|
||||
|
||||
*Phase 6 of the Whiteport Design Studio method*
|
||||
|
||||
|
|
@ -1,351 +0,0 @@
|
|||
# Whiteport Design Studio Method
|
||||
|
||||
**A design-first methodology for creating software that people love**
|
||||
|
||||
---
|
||||
|
||||
## The WDS Philosophy
|
||||
|
||||
**Providing a thinking partner to every designer on the planet** - enabling designers everywhere to give more of what is valuable to the world. With deep understanding of users, technology, and what drives people, we provide functionality, beauty, simplicity, and make software endlessly successful by giving people both what they want and what they need.
|
||||
|
||||
---
|
||||
|
||||
## What is WDS?
|
||||
|
||||
Whiteport Design Studio is a **design-focused methodology** that supports designers in their design process and helps create detailed specifications through collaborative workshops, visual thinking, and systematic documentation perfect for development by AI and humans alike.
|
||||
|
||||
WDS creates the **design artifacts** that development teams need to build exceptional products - from initial vision through detailed component specifications.
|
||||
|
||||
### The Core Idea
|
||||
|
||||
```
|
||||
Vision → Clarity → UX Design → Design System → PRD Complete
|
||||
│ │ │ │ │
|
||||
│ │ │ │ └── Development
|
||||
│ │ │ │ gets everything
|
||||
│ │ │ │
|
||||
│ │ │ └── Components,
|
||||
│ │ │ tokens, patterns
|
||||
│ │ │ (optional, parallel)
|
||||
│ │ │
|
||||
│ │ └── Sketching, specifying,
|
||||
│ │ prototyping, PRD grows
|
||||
│ │
|
||||
│ └── Trigger mapping,
|
||||
│ Feature Impact Analysis
|
||||
│
|
||||
└── Strategic foundation,
|
||||
positioning, ICP
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## The Six Phases
|
||||
|
||||
WDS follows six phases, each producing artifacts in your project's `docs/` folder:
|
||||
|
||||
### Phase 1: Product Exploration (Product Brief)
|
||||
**Output:** `A-Product-Brief/`
|
||||
**Agent:** Saga the Analyst
|
||||
|
||||
Establish your strategic foundation through conversational discovery. Instead of filling out questionnaires, you have a conversation that builds understanding organically.
|
||||
|
||||
**What you create:**
|
||||
- Product vision and problem statement
|
||||
- Market positioning and differentiation
|
||||
- Success criteria and metrics
|
||||
- Strategic context for everything that follows
|
||||
|
||||
---
|
||||
|
||||
### Phase 2: Trigger Mapping (Trigger Map)
|
||||
**Output:** `B-Trigger-Map/`
|
||||
**Agent:** Saga the Analyst
|
||||
|
||||
Connect business goals to user psychology through Trigger Mapping. Discover not just WHO your users are, but WHY they act and WHAT triggers their decisions.
|
||||
|
||||
**What you create:**
|
||||
- Business goals (Vision + SMART objectives)
|
||||
- Target groups connected to business outcomes
|
||||
- Detailed personas with psychological depth
|
||||
- Usage goals (positive and negative driving forces)
|
||||
- Visual trigger map showing strategic connections
|
||||
- Feature Impact Analysis with priority scoring
|
||||
|
||||
---
|
||||
|
||||
### Phase 3: PRD Platform (Technical Foundation)
|
||||
**Output:** `C-Requirements/`
|
||||
**Agent:** Freyja the PM
|
||||
|
||||
Prove your concept works technically - in parallel with design work. Validate platform decisions, create proofs of concept, and set up experimental endpoints.
|
||||
|
||||
**What you create:**
|
||||
- Platform architecture decisions
|
||||
- Data model and integrations
|
||||
- Technical proofs of concept
|
||||
- Experimental endpoints
|
||||
- Security and performance framework
|
||||
- Technical constraints document (for UX Design)
|
||||
|
||||
---
|
||||
|
||||
### Phase 4: UX Design (UX-Sketches & Usage Scenarios)
|
||||
**Output:** `C-Scenarios/`
|
||||
**Agent:** Baldr the UX Expert
|
||||
|
||||
Transform ideas into detailed visual specifications. Your agent helps you think out the design, assists in sketching, creates specifications, and builds HTML prototypes. Each page adds functional requirements to the PRD.
|
||||
|
||||
**The key insight:** Designs that can be logically explained without gaps are easy to develop. The specification process reveals gaps early - when they're easy to address.
|
||||
|
||||
**What you create:**
|
||||
- Scenario folder structure (numbered hierarchy)
|
||||
- Page specifications with full detail
|
||||
- Component definitions with Object IDs
|
||||
- Interaction behaviors and states
|
||||
- HTML prototypes for validation
|
||||
- Functional requirements added to PRD (via step 4E)
|
||||
|
||||
---
|
||||
|
||||
### Phase 5: Design System (Component Library)
|
||||
**Output:** `D-Design-System/`
|
||||
**Agent:** Baldr the UX Expert
|
||||
|
||||
Build your component library following atomic design principles. This phase is **optional** and runs **in parallel** with Phase 4 - as you design pages, you extract reusable components.
|
||||
|
||||
**What you create:**
|
||||
- Design tokens (colors, typography, spacing)
|
||||
- Atomic components (buttons, inputs, labels)
|
||||
- Molecular components (form groups, cards)
|
||||
- Organism components (headers, complex sections)
|
||||
- Interactive HTML component showcase
|
||||
- Figma/design tool integration with unified naming
|
||||
|
||||
---
|
||||
|
||||
### Phase 6: PRD Finalization (Complete PRD)
|
||||
**Output:** Complete PRD in `C-Requirements/` + `E-UI-Roadmap/`
|
||||
**Agent:** Freyja the PM
|
||||
|
||||
Compile all functional requirements discovered during Phase 4 into a complete, development-ready PRD. This phase runs **continuously** - hand off as soon as you have MVP scope, then update as design progresses.
|
||||
|
||||
**What you create:**
|
||||
- Complete PRD (Platform + Functional requirements)
|
||||
- Feature organization by epic/area
|
||||
- Development sequence with priorities
|
||||
- Handoff package in `E-UI-Roadmap/`
|
||||
- Scenario-to-epic mapping
|
||||
|
||||
---
|
||||
|
||||
## Folder Structure
|
||||
|
||||
WDS creates an organized folder structure in your project's `docs/` folder. During setup, you make two choices:
|
||||
|
||||
### Your 4 Options
|
||||
|
||||
| Choice | Option A | Option B |
|
||||
|--------|----------|----------|
|
||||
| **Prefix** | Letters (A, B, C...) | Numbers (01, 02, 03...) |
|
||||
| **Case** | Title-Case | lowercase |
|
||||
|
||||
### Examples
|
||||
|
||||
**Letters + Title-Case** (default):
|
||||
```
|
||||
docs/
|
||||
├── A-Product-Brief/
|
||||
├── B-Trigger-Map/
|
||||
├── C-Platform-Requirements/
|
||||
├── C-Scenarios/
|
||||
├── D-Design-System/
|
||||
└── E-PRD-Finalization/
|
||||
```
|
||||
|
||||
**Numbers + Title-Case**:
|
||||
```
|
||||
docs/
|
||||
├── 01-Product-Brief/
|
||||
├── 02-Trigger-Map/
|
||||
├── 03-Platform-Requirements/
|
||||
├── 03-Scenarios/
|
||||
├── 04-Design-System/
|
||||
└── 05-PRD-Finalization/
|
||||
```
|
||||
|
||||
**Default (Letters + Title-Case) is recommended because:**
|
||||
- Title-Case is easier for non-technical people to read
|
||||
- Letters create distinctive WDS branding
|
||||
- Distinguishes WDS folders from other docs
|
||||
|
||||
---
|
||||
|
||||
## Phase-Selectable Workflow
|
||||
|
||||
Not every project needs all six phases. Select what you need based on your situation:
|
||||
|
||||
| Project Type | Recommended Phases |
|
||||
|--------------|-------------------|
|
||||
| **Landing page** | 1, 4 |
|
||||
| **Full product (greenfield)** | All six |
|
||||
| **Feature enhancement** | 2, 4, 6 |
|
||||
| **Design system only** | 4, 5 |
|
||||
| **Strategic planning** | 1, 2 |
|
||||
| **Quick prototype** | 4 only |
|
||||
|
||||
Your agents will help you identify which phases fit your project.
|
||||
|
||||
---
|
||||
|
||||
## Your Agents
|
||||
|
||||
Three specialized agents guide you through WDS:
|
||||
|
||||
### Saga the Analyst 📚
|
||||
*"The one who tells your business story"*
|
||||
|
||||
Saga guides you through discovery and research. She's curious, patient, and helps you uncover insights you might not have seen yourself.
|
||||
|
||||
**Works with you on:**
|
||||
- Phase 1: Product Exploration
|
||||
- Phase 2: Trigger Mapping
|
||||
|
||||
### Freyja the PM ⚔️
|
||||
*"The strategic leader who sees what must be done"*
|
||||
|
||||
Freyja helps you define technical requirements and finalize the PRD for development. She balances passion with strategy, knowing when to be fierce and when to be patient.
|
||||
|
||||
**Works with you on:**
|
||||
- Phase 3: PRD Platform
|
||||
- Phase 6: PRD Finalization
|
||||
|
||||
### Baldr the UX Expert ✨
|
||||
*"The one who brings light and beauty"*
|
||||
|
||||
Baldr transforms your ideas into beautiful, detailed specifications. He cares deeply about craft and ensures every detail serves the user experience.
|
||||
|
||||
**Works with you on:**
|
||||
- Phase 4: UX Design
|
||||
- Phase 5: Design System
|
||||
|
||||
---
|
||||
|
||||
## How Sessions Work
|
||||
|
||||
WDS sessions are **conversations, not interrogations**.
|
||||
|
||||
### The Rhythm
|
||||
|
||||
A good WDS session feels like coffee with a wise mentor:
|
||||
- They ask something interesting
|
||||
- You share your thinking
|
||||
- They reflect it back, maybe adding a new angle
|
||||
- Together you discover something neither saw alone
|
||||
|
||||
It never feels like filling out a form.
|
||||
|
||||
### What to Expect
|
||||
|
||||
**Your agent will:**
|
||||
- Ask one question at a time, then listen
|
||||
- Reflect back what they heard before moving on
|
||||
- Build documents together with you, piece by piece
|
||||
- Check in to make sure they understood correctly
|
||||
|
||||
**You'll leave with:**
|
||||
- Clear documentation you helped create
|
||||
- Deeper understanding of your own product
|
||||
- Ready-to-use artifacts for the next phase
|
||||
|
||||
---
|
||||
|
||||
## Getting Started
|
||||
|
||||
### Prerequisites
|
||||
|
||||
1. BMad Method installed with WDS module
|
||||
2. Project workspace ready
|
||||
3. Stakeholders available for workshop phases
|
||||
|
||||
### Quick Start
|
||||
|
||||
```
|
||||
# Install BMad with WDS
|
||||
npx bmad-method@alpha install
|
||||
|
||||
# Activate any WDS agent
|
||||
# They'll guide you from there
|
||||
|
||||
# Or run workflow-init for phase selection
|
||||
*workflow-init
|
||||
```
|
||||
|
||||
### First Steps
|
||||
|
||||
1. **Start with Phase 1** if you're building something new
|
||||
2. **Start with Phase 2** if you have existing vision but need user clarity
|
||||
3. **Start with Phase 4** if you have sketches ready to specify
|
||||
4. **Ask your agent** if you're not sure where to begin
|
||||
|
||||
---
|
||||
|
||||
## The WDS Difference
|
||||
|
||||
### Traditional Approach
|
||||
- 47-question requirements spreadsheet
|
||||
- Generic persona templates
|
||||
- Designers work alone, then throw specs "over the wall"
|
||||
- Developers interpret and guess
|
||||
- Everyone argues about what was meant
|
||||
|
||||
### WDS Approach
|
||||
- Conversations that build understanding
|
||||
- Personas with psychological depth connected to business goals
|
||||
- Collaborative workshops building shared understanding
|
||||
- Specifications so clear they eliminate guesswork
|
||||
- Everyone aligned because they built it together
|
||||
|
||||
---
|
||||
|
||||
## Integration with Development
|
||||
|
||||
WDS focuses on **design** - creating the artifacts that guide development. The actual development process is handled by BMad Method (BMM) or your preferred development workflow.
|
||||
|
||||
### The PRD Journey
|
||||
|
||||
```
|
||||
Phase 3: PRD starts Phase 4: PRD grows Phase 6: PRD completes
|
||||
(Technical Foundation) (Each page adds features) (Organized for dev)
|
||||
│ │ │
|
||||
▼ ▼ ▼
|
||||
C-Requirements/ ────► C-Requirements/ ────► E-UI-Roadmap/
|
||||
├── Platform arch ├── Platform arch ├── Priority sequence
|
||||
├── Data model ├── Data model ├── Epic mapping
|
||||
├── Integrations ├── Integrations ├── Component inventory
|
||||
└── Security └── Functional reqs ◄──┐ └── Handoff checklist
|
||||
(from each page) │
|
||||
│
|
||||
C-Scenarios/ ─────────┘
|
||||
(Page specs add features via 4E)
|
||||
```
|
||||
|
||||
### Parallel Streams
|
||||
|
||||
Design and development can work in parallel:
|
||||
- Phase 3 complete → Backend/platform development can start
|
||||
- Phase 4 MVP scenarios complete → Phase 6 first handoff → Sprint 1 begins
|
||||
- Design continues → Regular Phase 6 updates → More sprints
|
||||
|
||||
---
|
||||
|
||||
## Learn More
|
||||
|
||||
- **Phase guides:** Detailed documentation for each phase
|
||||
- **Examples:** Dog Week patterns showing real artifacts
|
||||
- **Templates:** Ready-to-use templates for all deliverables
|
||||
- **Conversation examples:** See how agent sessions flow
|
||||
|
||||
---
|
||||
|
||||
*Whiteport Design Studio - Part of the BMad ecosystem*
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
# Installation
|
||||
|
||||
**Get WDS up and running in 5 minutes**
|
||||
|
||||
---
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Node.js 18+ installed
|
||||
- Git installed
|
||||
- Code editor (VS Code recommended)
|
||||
|
||||
---
|
||||
|
||||
## Quick Install
|
||||
|
||||
```bash
|
||||
# Clone the repository
|
||||
git clone https://github.com/whiteport-collective/whiteport-design-studio.git
|
||||
|
||||
# Navigate to the directory
|
||||
cd whiteport-design-studio
|
||||
|
||||
# Install dependencies
|
||||
npm install
|
||||
|
||||
# Start WDS
|
||||
npm start
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Verify Installation
|
||||
|
||||
You should see:
|
||||
```
|
||||
✅ WDS is running
|
||||
🎨 Ready to design
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
- [Quick Start Guide](quick-start.md) - Your first 5 minutes
|
||||
- [Tutorial](../01-tutorial/00-TUTORIAL-GUIDE.md) - Learn the concepts deeply
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
**Issue:** Node version error
|
||||
**Solution:** Update to Node.js 18 or higher
|
||||
|
||||
**Issue:** Permission denied
|
||||
**Solution:** Run with appropriate permissions or use `sudo` (Mac/Linux)
|
||||
|
||||
---
|
||||
|
||||
[← Back to WDS](../WDS-WORKFLOWS-GUIDE.md)
|
||||
|
|
@ -1,121 +0,0 @@
|
|||
# Quick Start
|
||||
|
||||
**Your first 5 minutes with WDS**
|
||||
|
||||
---
|
||||
|
||||
## What You'll Do
|
||||
|
||||
1. Create a Trigger Map
|
||||
2. Initialize a scenario
|
||||
3. Sketch your first page
|
||||
4. Generate specifications
|
||||
|
||||
**Time: 5 minutes**
|
||||
|
||||
---
|
||||
|
||||
## Step 1: Start WDS
|
||||
|
||||
```bash
|
||||
npm start
|
||||
```
|
||||
|
||||
Agent: "Welcome to Whiteport Design Studio! Ready to start?"
|
||||
|
||||
---
|
||||
|
||||
## Step 2: Create Trigger Map
|
||||
|
||||
```
|
||||
You: "Let's create a Trigger Map for a dog walking app"
|
||||
|
||||
Agent: "Great! Who is your primary target group?"
|
||||
You: "Parents who struggle with family dog care coordination"
|
||||
|
||||
Agent: "What triggers their need?"
|
||||
You: "Family conflict over who walks the dog"
|
||||
|
||||
Agent: "What outcome do they want?"
|
||||
You: "Accountability without nagging"
|
||||
```
|
||||
|
||||
**✅ Trigger Map created**
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Initialize Scenario
|
||||
|
||||
```
|
||||
Agent: "What feature delivers the most value to parents?"
|
||||
You: "Family dog walk calendar"
|
||||
|
||||
Agent: "Where do they first encounter this?"
|
||||
You: "Google search - frustrated with conflict"
|
||||
|
||||
Agent: "What's the shortest path to mutual success?"
|
||||
You: "Landing → Sign up → Family setup → Calendar → First walk"
|
||||
```
|
||||
|
||||
**✅ Scenario initialized**
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Sketch First Page
|
||||
|
||||
```
|
||||
Agent: "Let's start with the Landing page. Upload your sketch."
|
||||
You: [Upload sketch]
|
||||
|
||||
Agent: "I see: Header, Hero section, How it works, Sign up CTA.
|
||||
Should I analyze these sections?"
|
||||
You: "Yes"
|
||||
```
|
||||
|
||||
**✅ Sketch analyzed**
|
||||
|
||||
---
|
||||
|
||||
## Step 5: Generate Specifications
|
||||
|
||||
```
|
||||
Agent: "Based on your Trigger Map:
|
||||
- Target: Parents (tired of nagging)
|
||||
- Trigger: Family conflict
|
||||
|
||||
For the Hero section, I suggest:
|
||||
Headline: 'Stop Nagging. Start Harmony.'
|
||||
|
||||
Does this address their frustration?"
|
||||
|
||||
You: "Perfect!"
|
||||
```
|
||||
|
||||
**✅ Specifications generated**
|
||||
|
||||
---
|
||||
|
||||
## What Just Happened?
|
||||
|
||||
You created **why-based specifications** in 5 minutes:
|
||||
- Connected to user psychology (Trigger Map)
|
||||
- Grounded in real context (Scenario Init)
|
||||
- Generated with AI assistance (Agent collaboration)
|
||||
- Preserved your thinking (Why-based specs)
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
### Learn the Concepts
|
||||
[Tutorial](../01-tutorial/00-TUTORIAL-GUIDE.md) - Deep dive into WDS philosophy
|
||||
|
||||
### Start Your Project
|
||||
[Workflows Guide](../WDS-WORKFLOWS-GUIDE.md) - Full workflow documentation
|
||||
|
||||
### Get Help
|
||||
[Community](https://discord.gg/whiteport) - Join the WDS community
|
||||
|
||||
---
|
||||
|
||||
[← Back to Getting Started](installation.md)
|
||||
|
|
@ -1,131 +0,0 @@
|
|||
# Where to Go Next
|
||||
|
||||
**You've installed WDS and completed the quick start. Now what?**
|
||||
|
||||
---
|
||||
|
||||
## Choose Your Path
|
||||
|
||||
### 🎓 Take the Course
|
||||
|
||||
**[WDS Course: From Designer to Linchpin](../course/00-course-overview.md)**
|
||||
|
||||
Complete training from project brief to AI-ready specifications:
|
||||
|
||||
**Module 01: Why WDS Matters**
|
||||
Learn how to be indispensable in the AI era. Understand the paradigm shift where design becomes specification.
|
||||
→ [Start Module 01](../course/module-01-why-wds-matters/module-01-overview.md)
|
||||
|
||||
**Modules 02-16: Complete WDS Workflow**
|
||||
Master every phase from trigger mapping through design system to development handoff. Each module includes:
|
||||
- **Lessons** - Theory and concepts with NotebookLM audio
|
||||
- **Tutorials** - Step-by-step hands-on guides
|
||||
- **Practice** - Apply to your own project
|
||||
|
||||
→ [View All Modules](../course/00-course-overview.md)
|
||||
|
||||
**Best for:** Comprehensive learning with structured curriculum
|
||||
|
||||
**Time:** ~10 hours (lessons + tutorials + practice)
|
||||
|
||||
---
|
||||
|
||||
### 🚀 Start Your Project
|
||||
|
||||
**[Workflows Guide](../WDS-WORKFLOWS-GUIDE.md)**
|
||||
|
||||
Step-by-step workflows for:
|
||||
|
||||
**Phase 1: Project Brief**
|
||||
Define vision, goals, stakeholders, and constraints that guide all design decisions.
|
||||
→ [Tutorial: Create Project Brief](../course/module-02-project-brief/tutorial-02.md)
|
||||
|
||||
**Phase 2: Trigger Mapping**
|
||||
Understand WHO your users are, WHAT triggers their needs, and WHY your business exists. Create a Trigger Map that connects user psychology to business value.
|
||||
→ [Tutorial: Map Triggers & Outcomes](../course/module-04-map-triggers-outcomes/tutorial-04.md)
|
||||
|
||||
**Phase 3: Platform Requirements**
|
||||
Document technical constraints, integrations, and infrastructure needs.
|
||||
→ [Workflows Guide](../WDS-WORKFLOWS-GUIDE.md)
|
||||
|
||||
**Phase 4: UX Design**
|
||||
Transform ideas into why-based specifications that preserve your design intent. AI agents help you think through solutions, then capture your brilliance in specifications that give your designs eternal life.
|
||||
→ [Tutorial: Initialize Scenario](../course/module-08-initialize-scenario/tutorial-08.md) | [Tutorial: Why-Based Specs](../course/module-12-why-based-specs/tutorial-12.md)
|
||||
|
||||
**Phase 5: Design System**
|
||||
Extract design tokens, create reusable components, and generate interactive HTML catalog.
|
||||
→ [Workflows Guide](../WDS-WORKFLOWS-GUIDE.md)
|
||||
|
||||
**Best for:** Hands-on learning with a real project
|
||||
|
||||
**Time:** Ongoing (project-based)
|
||||
|
||||
---
|
||||
|
||||
### 📚 Reference Documentation
|
||||
|
||||
**[Modular Architecture](../workflows/4-ux-design/modular-architecture/00-MODULAR-ARCHITECTURE-GUIDE.md)**
|
||||
|
||||
Technical details on:
|
||||
- Three-tier file structure
|
||||
- Content placement rules
|
||||
- Component decomposition
|
||||
- Storyboard integration
|
||||
|
||||
**Best for:** Looking up specific techniques
|
||||
|
||||
**Time:** As needed (reference)
|
||||
|
||||
---
|
||||
|
||||
## Recommended Learning Path
|
||||
|
||||
```
|
||||
1. Quick Start (5 min) ✅ You are here
|
||||
↓
|
||||
2. Tutorial (1-2 hours)
|
||||
Watch videos, understand concepts
|
||||
↓
|
||||
3. Your First Project (ongoing)
|
||||
Apply WDS to a real project
|
||||
↓
|
||||
4. Reference Docs (as needed)
|
||||
Look up specific techniques
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Community & Support
|
||||
|
||||
### Discord
|
||||
Join the WDS community for:
|
||||
- Questions and answers
|
||||
- Project feedback
|
||||
- Feature discussions
|
||||
|
||||
### GitHub
|
||||
- Report issues
|
||||
- Request features
|
||||
- Contribute
|
||||
|
||||
### YouTube
|
||||
- Video tutorials
|
||||
- Walkthroughs
|
||||
- Case studies
|
||||
|
||||
---
|
||||
|
||||
## Quick Links
|
||||
|
||||
- [Tutorial](../01-tutorial/00-TUTORIAL-GUIDE.md)
|
||||
- [Workflows](../WDS-WORKFLOWS-GUIDE.md)
|
||||
- [Modular Architecture](../workflows/4-ux-design/modular-architecture/00-MODULAR-ARCHITECTURE-GUIDE.md)
|
||||
- [Why-Based Specifications](../workflows/4-ux-design/WHY-BASED-SPECIFICATIONS.md)
|
||||
|
||||
---
|
||||
|
||||
**Ready to dive deeper? Start with the [Tutorial](../01-tutorial/00-TUTORIAL-GUIDE.md)!**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Quick Start](quick-start.md)
|
||||
|
|
@ -1,104 +0,0 @@
|
|||
# WDS Design Delivery Template
|
||||
# Copy this template to: deliveries/DD-XXX-name.yaml
|
||||
|
||||
delivery:
|
||||
id: "DD-XXX" # Format: DD-001, DD-002, etc.
|
||||
name: "Feature Name" # Human-readable name
|
||||
type: "user_flow" # user_flow | feature | component
|
||||
status: "ready" # ready | in_progress | blocked
|
||||
priority: "high" # high | medium | low
|
||||
created_by: "wds-ux-expert"
|
||||
created_at: "YYYY-MM-DDTHH:MM:SSZ"
|
||||
updated_at: "YYYY-MM-DDTHH:MM:SSZ"
|
||||
version: "1.0"
|
||||
|
||||
description: |
|
||||
[Describe what this delivery contains and why it matters.
|
||||
Include the complete user flow and key features.]
|
||||
|
||||
user_value:
|
||||
problem: "[What user problem does this solve?]"
|
||||
solution: "[How does this feature solve it?]"
|
||||
success_criteria:
|
||||
- "[Measurable success criterion 1]"
|
||||
- "[Measurable success criterion 2]"
|
||||
- "[Measurable success criterion 3]"
|
||||
|
||||
design_artifacts:
|
||||
scenarios:
|
||||
- id: "XX-scenario-name"
|
||||
path: "C-Scenarios/XX-scenario-name/"
|
||||
screens: ["screen1", "screen2"]
|
||||
|
||||
- id: "XX-scenario-name"
|
||||
path: "C-Scenarios/XX-scenario-name/"
|
||||
screens: ["screen1"]
|
||||
|
||||
user_flows:
|
||||
- name: "Flow Name"
|
||||
path: "C-Scenarios/flows/flow-name.excalidraw"
|
||||
entry: "entry-screen"
|
||||
exit: "exit-screen"
|
||||
|
||||
design_system:
|
||||
components:
|
||||
- "Component Name (variants)"
|
||||
- "Component Name (variants)"
|
||||
path: "D-Design-System/"
|
||||
|
||||
technical_requirements:
|
||||
platform:
|
||||
frontend: "framework-name" # From platform-requirements.yaml
|
||||
backend: "framework-name" # From platform-requirements.yaml
|
||||
|
||||
integrations:
|
||||
- name: "integration-name"
|
||||
purpose: "[Why this integration is needed]"
|
||||
required: true # true | false
|
||||
|
||||
- name: "integration-name"
|
||||
purpose: "[Why this integration is needed]"
|
||||
required: false
|
||||
|
||||
data_models:
|
||||
- name: "ModelName"
|
||||
fields: ["field1", "field2", "field3"]
|
||||
|
||||
- name: "ModelName"
|
||||
fields: ["field1", "field2"]
|
||||
|
||||
acceptance_criteria:
|
||||
functional:
|
||||
- "[Functional requirement 1]"
|
||||
- "[Functional requirement 2]"
|
||||
- "[Functional requirement 3]"
|
||||
|
||||
non_functional:
|
||||
- "[Performance requirement]"
|
||||
- "[Accessibility requirement]"
|
||||
- "[Security requirement]"
|
||||
|
||||
edge_cases:
|
||||
- "[Edge case 1] → [Expected behavior]"
|
||||
- "[Edge case 2] → [Expected behavior]"
|
||||
- "[Edge case 3] → [Expected behavior]"
|
||||
|
||||
testing_guidance:
|
||||
user_testing:
|
||||
- "[User testing instruction 1]"
|
||||
- "[User testing instruction 2]"
|
||||
|
||||
qa_testing:
|
||||
- "[QA testing instruction 1]"
|
||||
- "[QA testing instruction 2]"
|
||||
- "[QA testing instruction 3]"
|
||||
|
||||
estimated_complexity:
|
||||
size: "medium" # small | medium | large
|
||||
effort: "2-3 weeks" # Time estimate
|
||||
risk: "low" # low | medium | high
|
||||
dependencies: [] # List of DD-XXX IDs needed first
|
||||
|
||||
notes: |
|
||||
[Any special considerations, important context, or
|
||||
critical details that the development team should know.]
|
||||
|
|
@ -1,69 +0,0 @@
|
|||
# WDS Platform Requirements Template
|
||||
# Save to: A-Project-Brief/platform-requirements.yaml
|
||||
|
||||
project:
|
||||
name: "Project Name"
|
||||
type: "mobile_app" # mobile_app | web_app | desktop_app | api
|
||||
wds_version: "6.0"
|
||||
created_at: "YYYY-MM-DDTHH:MM:SSZ"
|
||||
|
||||
platform:
|
||||
frontend:
|
||||
framework: "framework-name" # react_native | react | vue | angular | svelte
|
||||
version: "X.X"
|
||||
state_management: "library" # zustand | redux | mobx | context
|
||||
navigation: "library" # react_navigation | react_router | vue_router
|
||||
styling: "approach" # tailwind | styled_components | css_modules
|
||||
ui_library: "library" # shadcn | mui | chakra (optional)
|
||||
|
||||
backend:
|
||||
framework: "framework-name" # supabase | firebase | express | fastapi | django
|
||||
version: "X.X"
|
||||
auth: "auth-provider" # supabase_auth | firebase_auth | auth0 | custom
|
||||
database: "database-type" # postgresql | mysql | mongodb | firestore
|
||||
storage: "storage-provider" # supabase_storage | s3 | cloudinary
|
||||
api: "api-type" # rest | graphql | grpc
|
||||
|
||||
database:
|
||||
type: "database-type" # postgresql | mysql | mongodb
|
||||
version: "XX"
|
||||
orm: "orm-library" # prisma | typeorm | mongoose (optional)
|
||||
|
||||
deployment:
|
||||
frontend: "platform" # expo_eas | vercel | netlify | aws
|
||||
backend: "platform" # supabase_cloud | firebase | heroku | aws
|
||||
ci_cd: "platform" # github_actions | gitlab_ci | circle_ci
|
||||
hosting: "platform" # vercel | netlify | aws (if web app)
|
||||
|
||||
integrations:
|
||||
- name: "integration-name"
|
||||
provider: "provider-name"
|
||||
required: true # true | false
|
||||
purpose: "[Why this integration is needed]"
|
||||
|
||||
- name: "integration-name"
|
||||
provider: "provider-name"
|
||||
required: false
|
||||
purpose: "[Why this integration is needed]"
|
||||
|
||||
constraints:
|
||||
- "[Technical constraint 1]"
|
||||
- "[Technical constraint 2]"
|
||||
- "[Business constraint 1]"
|
||||
- "[Regulatory constraint 1]"
|
||||
|
||||
performance_requirements:
|
||||
- "[Performance requirement 1]"
|
||||
- "[Performance requirement 2]"
|
||||
- "[Performance requirement 3]"
|
||||
|
||||
security_requirements:
|
||||
- "[Security requirement 1]"
|
||||
- "[Security requirement 2]"
|
||||
- "[Security requirement 3]"
|
||||
|
||||
wds_metadata:
|
||||
project_brief: "A-Project-Brief/project-brief.md"
|
||||
trigger_map: "B-Trigger-Map/trigger-map.md"
|
||||
scenarios: "C-Scenarios/"
|
||||
design_system: "D-Design-System/"
|
||||
|
|
@ -1,192 +0,0 @@
|
|||
# WDS Test Scenario Template
|
||||
# Save to: test-scenarios/TS-XXX-name.yaml
|
||||
|
||||
test_scenario:
|
||||
id: "TS-XXX" # Format: TS-001, TS-002, etc.
|
||||
name: "Feature Testing" # Human-readable name
|
||||
delivery_id: "DD-XXX" # Related Design Delivery
|
||||
type: "user_acceptance" # user_acceptance | integration | e2e
|
||||
status: "ready" # ready | in_progress | blocked
|
||||
tester: "designer" # designer | qa | developer
|
||||
created_at: "YYYY-MM-DDTHH:MM:SSZ"
|
||||
|
||||
test_objectives:
|
||||
- "Validate implementation matches design specifications"
|
||||
- "Verify user flow is intuitive and smooth"
|
||||
- "Confirm all edge cases are handled"
|
||||
- "Ensure design system components are used correctly"
|
||||
- "Test accessibility and usability"
|
||||
|
||||
test_environment:
|
||||
devices:
|
||||
- "Device 1 (OS version)"
|
||||
- "Device 2 (OS version)"
|
||||
|
||||
test_data:
|
||||
- field: "value"
|
||||
- field: "value"
|
||||
|
||||
# Happy Path Tests
|
||||
happy_path:
|
||||
- id: "HP-001"
|
||||
name: "Main User Flow"
|
||||
priority: "critical" # critical | high | medium | low
|
||||
|
||||
steps:
|
||||
- action: "[User action]"
|
||||
expected: "[Expected result]"
|
||||
design_ref: "[Path to specification]#[section]"
|
||||
|
||||
- action: "[User action]"
|
||||
expected: "[Expected result]"
|
||||
design_ref: "[Path to specification]#[section]"
|
||||
|
||||
success_criteria:
|
||||
- "[Success criterion 1]"
|
||||
- "[Success criterion 2]"
|
||||
- "[Success criterion 3]"
|
||||
|
||||
# Error State Tests
|
||||
error_states:
|
||||
- id: "ES-001"
|
||||
name: "Error Scenario"
|
||||
priority: "high"
|
||||
|
||||
steps:
|
||||
- action: "[Action that triggers error]"
|
||||
- expected: "[Expected error message]"
|
||||
- expected: "[Expected recovery option]"
|
||||
- design_ref: "[Path to specification]#[error-section]"
|
||||
|
||||
success_criteria:
|
||||
- "[Error handling criterion 1]"
|
||||
- "[Error handling criterion 2]"
|
||||
|
||||
# Edge Case Tests
|
||||
edge_cases:
|
||||
- id: "EC-001"
|
||||
name: "Edge Case Scenario"
|
||||
priority: "medium"
|
||||
|
||||
steps:
|
||||
- action: "[Unusual action]"
|
||||
- expected: "[Expected handling]"
|
||||
- design_ref: "[Path to specification]#[edge-case-section]"
|
||||
|
||||
success_criteria:
|
||||
- "[Edge case criterion 1]"
|
||||
|
||||
# Design System Validation
|
||||
design_system_checks:
|
||||
- id: "DS-001"
|
||||
name: "Component Validation"
|
||||
checks:
|
||||
- component: "Component Name"
|
||||
instances: ["Location 1", "Location 2"]
|
||||
verify:
|
||||
- "[Visual property 1]"
|
||||
- "[Visual property 2]"
|
||||
- "[State behavior 1]"
|
||||
design_ref: "D-Design-System/path/to/component.md"
|
||||
|
||||
# Accessibility Tests
|
||||
accessibility:
|
||||
- id: "A11Y-001"
|
||||
name: "Screen Reader Navigation"
|
||||
priority: "high"
|
||||
|
||||
setup: "Enable screen reader (VoiceOver/TalkBack)"
|
||||
|
||||
steps:
|
||||
- action: "[Navigate with screen reader]"
|
||||
- verify:
|
||||
- "[Accessibility check 1]"
|
||||
- "[Accessibility check 2]"
|
||||
|
||||
success_criteria:
|
||||
- "[Accessibility criterion 1]"
|
||||
- "[Accessibility criterion 2]"
|
||||
|
||||
# Usability Tests
|
||||
usability:
|
||||
- id: "UX-001"
|
||||
name: "First Impression"
|
||||
type: "observational"
|
||||
|
||||
instructions: |
|
||||
[Instructions for conducting usability test]
|
||||
|
||||
success_criteria:
|
||||
- "[Usability criterion 1]"
|
||||
- "[Usability criterion 2]"
|
||||
|
||||
# Performance Tests
|
||||
performance:
|
||||
- id: "PERF-001"
|
||||
name: "Performance Check"
|
||||
|
||||
verify:
|
||||
- "[Performance metric 1]"
|
||||
- "[Performance metric 2]"
|
||||
|
||||
success_criteria:
|
||||
- "[Performance target 1]"
|
||||
- "[Performance target 2]"
|
||||
|
||||
# Test Report Template
|
||||
report_template:
|
||||
sections:
|
||||
- name: "Test Summary"
|
||||
fields:
|
||||
- "Date tested"
|
||||
- "Tester name"
|
||||
- "Device tested"
|
||||
- "Build version"
|
||||
- "Overall result (Pass/Fail/Partial)"
|
||||
|
||||
- name: "Happy Path Results"
|
||||
fields:
|
||||
- "Test ID"
|
||||
- "Result (Pass/Fail)"
|
||||
- "Notes"
|
||||
- "Screenshots"
|
||||
|
||||
- name: "Issues Found"
|
||||
fields:
|
||||
- "Issue ID"
|
||||
- "Severity (Critical/High/Medium/Low)"
|
||||
- "Description"
|
||||
- "Steps to reproduce"
|
||||
- "Expected vs Actual"
|
||||
- "Screenshot/Video"
|
||||
- "Design reference violated"
|
||||
|
||||
- name: "Design System Compliance"
|
||||
fields:
|
||||
- "Component"
|
||||
- "Compliant (Yes/No)"
|
||||
- "Deviations noted"
|
||||
|
||||
- name: "Recommendations"
|
||||
fields:
|
||||
- "What worked well"
|
||||
- "What needs improvement"
|
||||
- "Suggested changes"
|
||||
|
||||
# Sign-off Criteria
|
||||
sign_off:
|
||||
required_for_approval:
|
||||
- "All critical tests pass"
|
||||
- "No critical or high severity issues"
|
||||
- "Design system compliance > 95%"
|
||||
- "Accessibility tests pass"
|
||||
- "Usability metrics meet targets"
|
||||
|
||||
designer_approval:
|
||||
statement: |
|
||||
I confirm that the implemented feature matches the design
|
||||
specifications and meets the quality standards defined in
|
||||
this test scenario.
|
||||
|
||||
signature: "________________"
|
||||
date: "________________"
|
||||
|
|
@ -1,183 +0,0 @@
|
|||
# WDS-BMad Tutorial
|
||||
|
||||
**Complete training from project brief to AI-ready specifications**
|
||||
|
||||
---
|
||||
|
||||
## About This Tutorial
|
||||
|
||||
This tutorial teaches the complete WDS workflow through **16 chapters**.
|
||||
|
||||
Each chapter contains:
|
||||
- **Inspiration** - Why this step matters, the goal
|
||||
- **Teaching** - How to do it with confidence
|
||||
- **Practice** - Apply it to your own project
|
||||
|
||||
**Format:**
|
||||
- Read as documentation
|
||||
- Generate videos with NotebookLM
|
||||
- Use in workshops
|
||||
|
||||
**Time:** ~10 hours total (40 min per chapter)
|
||||
|
||||
---
|
||||
|
||||
## Tutorial Chapters
|
||||
|
||||
### Foundation
|
||||
|
||||
#### [Chapter 0: Why This Matters](chapter-00-why-this-matters/)
|
||||
Learn how to be indispensable in the AI era
|
||||
|
||||
---
|
||||
|
||||
### Phase 1: Project Brief
|
||||
|
||||
#### [Chapter 1.1: Create Project Brief](chapter-1.1-project-brief/)
|
||||
Define vision, goals, stakeholders, and constraints
|
||||
|
||||
---
|
||||
|
||||
### Phase 2: Trigger Mapping
|
||||
|
||||
#### [Chapter 2.1: Identify Target Groups](chapter-2.1-identify-target-groups/)
|
||||
WHO are your users and how to prioritize them
|
||||
|
||||
#### [Chapter 2.2: Map Triggers & Outcomes](chapter-2.2-map-triggers-outcomes/)
|
||||
WHAT triggers needs and WHY your business exists
|
||||
|
||||
#### [Chapter 2.3: Prioritize Features](chapter-2.3-prioritize-features/)
|
||||
Which features serve your top triggers
|
||||
|
||||
---
|
||||
|
||||
### Phase 3: Platform Requirements
|
||||
|
||||
#### [Chapter 3.1: Platform Requirements](chapter-3.1-platform-requirements/)
|
||||
Technical constraints, integrations, infrastructure
|
||||
|
||||
#### [Chapter 3.2: Functional Requirements](chapter-3.2-functional-requirements/)
|
||||
What the system must do
|
||||
|
||||
---
|
||||
|
||||
### Phase 4: Conceptual Design
|
||||
|
||||
#### [Chapter 4.1: Initialize Scenario](chapter-4.1-initialize-scenario/)
|
||||
The 5 questions that define your design journey
|
||||
|
||||
#### [Chapter 4.2: Sketch Interfaces](chapter-4.2-sketch-interfaces/)
|
||||
Drawing pages with AI guidance
|
||||
|
||||
#### [Chapter 4.3: Analyze with AI](chapter-4.3-analyze-with-ai/)
|
||||
Upload sketches and have strategic conversations
|
||||
|
||||
#### [Chapter 4.4: Decompose Components](chapter-4.4-decompose-components/)
|
||||
Break pages into modular architecture
|
||||
|
||||
#### [Chapter 4.5: Why-Based Specifications](chapter-4.5-why-based-specs/)
|
||||
Document WHAT + WHY + WHAT NOT TO DO
|
||||
|
||||
#### [Chapter 4.6: Validate Specifications](chapter-4.6-validate-specifications/)
|
||||
Review completeness and test logic
|
||||
|
||||
---
|
||||
|
||||
### Phase 5: Design System
|
||||
|
||||
#### [Chapter 5.1: Extract Design Tokens](chapter-5.1-extract-design-tokens/)
|
||||
Colors, typography, spacing from your specs
|
||||
|
||||
#### [Chapter 5.2: Component Library](chapter-5.2-component-library/)
|
||||
Reusable patterns across scenarios
|
||||
|
||||
---
|
||||
|
||||
### Phase 6: Development Integration
|
||||
|
||||
#### [Chapter 6.1: UI Roadmap](chapter-6.1-ui-roadmap/)
|
||||
Development priorities and handoff
|
||||
|
||||
---
|
||||
|
||||
## How to Use This Tutorial
|
||||
|
||||
### Complete Workflow (Recommended)
|
||||
Work through all 16 chapters sequentially with your own project:
|
||||
```
|
||||
Chapters 1-16 → Complete design from brief to handoff
|
||||
Time: ~10 hours (spread over days/weeks)
|
||||
Result: Fully specified project ready for development
|
||||
```
|
||||
|
||||
### Quick Start (Core Concepts)
|
||||
Focus on the essential chapters:
|
||||
```
|
||||
Ch 0: Why This Matters
|
||||
Ch 2.2: Map Triggers & Outcomes
|
||||
Ch 4.1: Initialize Scenario
|
||||
Ch 4.5: Why-Based Specifications
|
||||
Time: ~3 hours
|
||||
Result: Understanding of core WDS philosophy
|
||||
```
|
||||
|
||||
### Phase-Specific Learning
|
||||
Jump to the phase you need:
|
||||
```
|
||||
Phase 2 (Ch 2.1-2.3): Trigger Mapping
|
||||
Phase 4 (Ch 4.1-4.6): Conceptual Design
|
||||
Phase 5 (Ch 5.1-5.2): Design System
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## NotebookLM Integration
|
||||
|
||||
Each chapter has a matching script in `/notebooklm-scripts/`:
|
||||
- Feed chapter scripts to NotebookLM
|
||||
- Generate audio podcasts
|
||||
- Generate video presentations
|
||||
- Create study guides
|
||||
|
||||
**All scripts match chapter numbers for easy reference.**
|
||||
|
||||
---
|
||||
|
||||
## Chapter Structure
|
||||
|
||||
Every chapter follows the same pattern:
|
||||
|
||||
**1. Inspiration (10 min)**
|
||||
- Why this step matters
|
||||
- The goal you're working toward
|
||||
- Real-world impact
|
||||
|
||||
**2. Teaching (20 min)**
|
||||
- How to do it with confidence
|
||||
- AI support at each step
|
||||
- Dog Week example walkthrough
|
||||
|
||||
**3. Practice (10 min)**
|
||||
- Apply to your own project
|
||||
- Step-by-step instructions
|
||||
- Success criteria
|
||||
|
||||
---
|
||||
|
||||
## After the Tutorial
|
||||
|
||||
Once you've completed chapters:
|
||||
|
||||
1. **[Workflows Guide](../WDS-WORKFLOWS-GUIDE.md)** - Reference documentation
|
||||
2. **[Quick Start](../getting-started/quick-start.md)** - Try WDS with agent
|
||||
3. **[Community](https://discord.gg/whiteport)** - Get help and share
|
||||
|
||||
---
|
||||
|
||||
## Start Learning
|
||||
|
||||
**[Begin with Chapter 0: Why This Matters →](chapter-00-why-this-matters/)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Getting Started](../getting-started/where-to-go-next.md)
|
||||
|
|
@ -1,317 +0,0 @@
|
|||
# The Designer's Role in AI-Powered Development
|
||||
|
||||
**Why designers are irreplaceable in the specification-first era**
|
||||
|
||||
---
|
||||
|
||||
## The Multi-Dimensional Thinking Challenge
|
||||
|
||||
Designers operate across **5 simultaneous dimensions** that AI and traditional developers cannot navigate alone:
|
||||
|
||||
### 1. Business Existence (WHY)
|
||||
- Why does this business exist?
|
||||
- What problem does it solve in the world?
|
||||
- What value does it create?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
WHY: Families struggle to coordinate dog care responsibilities.
|
||||
VALUE: Reduce conflict, increase accountability, happier dogs.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2. Business Goals (WHAT SUCCESS LOOKS LIKE)
|
||||
- What metrics matter?
|
||||
- What behaviors do we want to encourage?
|
||||
- What outcomes define success?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
GOALS:
|
||||
- Increase walk completion rate (not just bookings)
|
||||
- Encourage family participation (gamification)
|
||||
- Reduce "forgot to walk" incidents (countdown timers)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 3. Product Strategy (HOW WE DELIVER VALUE)
|
||||
- What features serve the goals?
|
||||
- What's the core experience?
|
||||
- What can we cut?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
CORE: Week-based planning (Swedish culture)
|
||||
FEATURES: Calendar, leaderboard, countdown timers
|
||||
CUT: Daily view (doesn't match mental model)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 4. Target Groups & Individual Needs (WHO & THEIR CONTEXT)
|
||||
- Who are the users?
|
||||
- What are their different needs?
|
||||
- What contexts do they operate in?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
USERS:
|
||||
- Parents: Need overview, accountability tracking
|
||||
- Kids: Need simple booking, gamification
|
||||
- Teens: Need independence, mobile-first
|
||||
|
||||
CONTEXTS:
|
||||
- Morning rush: Quick booking
|
||||
- Evening planning: Week overview
|
||||
- During walk: Start/complete actions
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 5. User Experience Translation (HOW USERS UNDERSTAND)
|
||||
- How do we make this simple?
|
||||
- What mental models do users have?
|
||||
- What's intuitive vs confusing?
|
||||
|
||||
**Example (Dog Week):**
|
||||
```
|
||||
TRANSLATION:
|
||||
- Week circles (not dates) → Matches Swedish "Vecka 40" thinking
|
||||
- Color states (not text) → Visual, instant understanding
|
||||
- Countdown timer → Creates urgency without nagging
|
||||
- Leaderboard → Makes accountability fun, not punishing
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## The Coherent Storyline
|
||||
|
||||
All 5 dimensions must **tell the same story**:
|
||||
|
||||
```
|
||||
Business WHY
|
||||
↓
|
||||
Business Goals
|
||||
↓
|
||||
Product Strategy
|
||||
↓
|
||||
User Needs
|
||||
↓
|
||||
UX Design
|
||||
↓
|
||||
Technical Specs
|
||||
```
|
||||
|
||||
**If any link breaks, the product fails.**
|
||||
|
||||
---
|
||||
|
||||
## Why This Is Designer Work
|
||||
|
||||
### Engineers Think:
|
||||
- "How do I build this?"
|
||||
- "What's the data structure?"
|
||||
- "What API endpoints do I need?"
|
||||
|
||||
**Missing:** WHY this feature? WHO needs it? WHAT behavior change?
|
||||
|
||||
### Business Developers Think:
|
||||
- "What features will sell?"
|
||||
- "What's the ROI?"
|
||||
- "What's the market opportunity?"
|
||||
|
||||
**Missing:** HOW do users actually think? WHAT's intuitive? HOW do we translate goals to experience?
|
||||
|
||||
### AI Thinks:
|
||||
- "What patterns match this prompt?"
|
||||
- "What code structure fits this description?"
|
||||
- "What's the most common implementation?"
|
||||
|
||||
**Missing:** ALL 5 dimensions. AI has no context for WHY, WHO, or WHAT SUCCESS LOOKS LIKE.
|
||||
|
||||
---
|
||||
|
||||
## The Designer's Unique Value
|
||||
|
||||
**Designers are the only role that:**
|
||||
|
||||
✅ Understands business goals deeply
|
||||
✅ Knows user needs intimately
|
||||
✅ Translates abstract goals into concrete experiences
|
||||
✅ Maintains coherent storyline across all touchpoints
|
||||
✅ Balances business needs with user needs
|
||||
✅ Makes complexity simple for end users
|
||||
✅ Makes simplicity implementable for developers
|
||||
|
||||
---
|
||||
|
||||
## Example: Dog Week Calendar States
|
||||
|
||||
### Business Developer Says:
|
||||
"We need a booking system with accountability tracking."
|
||||
|
||||
### Engineer Says:
|
||||
"I'll build a CRUD app with status fields: pending, active, completed."
|
||||
|
||||
### AI Says:
|
||||
"Here's a calendar with booking slots and status indicators."
|
||||
|
||||
### Designer Says:
|
||||
```
|
||||
WAIT. Let's think through all 5 dimensions:
|
||||
|
||||
1. WHY: Reduce family conflict over forgotten walks
|
||||
2. GOAL: Increase completion rate, not just bookings
|
||||
3. STRATEGY: Visual accountability + gentle urgency
|
||||
4. USERS: Kids need simple, parents need overview
|
||||
5. UX TRANSLATION:
|
||||
- 6 color states (visual, instant understanding)
|
||||
- Countdown timer (urgency without nagging)
|
||||
- Leaderboard (accountability as game)
|
||||
- Week view (matches Swedish mental model)
|
||||
|
||||
NOW let's specify:
|
||||
- Pages/: Family-specific context
|
||||
- Components/: 6 visual states
|
||||
- Features/: State machine with business rules
|
||||
- Storyboard: Visual flow of all states
|
||||
```
|
||||
|
||||
**Result:** Product that actually solves the problem, not just implements features.
|
||||
|
||||
---
|
||||
|
||||
## The Specification as Translation Layer
|
||||
|
||||
The designer's specification is a **multi-dimensional translation**:
|
||||
|
||||
```
|
||||
Business Goals
|
||||
↓
|
||||
[DESIGNER TRANSLATES]
|
||||
↓
|
||||
User Experience
|
||||
↓
|
||||
[DESIGNER TRANSLATES]
|
||||
↓
|
||||
Technical Specifications
|
||||
↓
|
||||
[AI/DEVELOPER IMPLEMENTS]
|
||||
↓
|
||||
Working Product
|
||||
```
|
||||
|
||||
**Without the designer's translation:**
|
||||
- Engineers build what's easy, not what's needed
|
||||
- Business developers add features that don't serve users
|
||||
- AI generates generic solutions that miss the context
|
||||
|
||||
---
|
||||
|
||||
## Why AI Makes Designers MORE Important
|
||||
|
||||
**Before AI:**
|
||||
- Designers → Specs → Developers → Code (slow)
|
||||
- Designers had to compromise due to dev time
|
||||
- "We can't build that, too complex"
|
||||
|
||||
**With AI:**
|
||||
- Designers → Specs → AI → Code (fast)
|
||||
- Designers can specify the RIGHT solution
|
||||
- "AI can build anything, what SHOULD we build?"
|
||||
|
||||
**The bottleneck shifted from implementation to specification.**
|
||||
|
||||
**The question changed from "Can we build it?" to "What should we build?"**
|
||||
|
||||
**And only designers can answer that question across all 5 dimensions.**
|
||||
|
||||
---
|
||||
|
||||
## The Coherent Storyline Challenge
|
||||
|
||||
**Example: Dog Week**
|
||||
|
||||
Every touchpoint tells the same story:
|
||||
|
||||
**Story:** "Dog care is a family responsibility, and we make it fun and fair."
|
||||
|
||||
**Touchpoints:**
|
||||
- **Week view:** Shows family's shared responsibility (not individual calendars)
|
||||
- **Leaderboard:** Makes accountability fun (not punishing)
|
||||
- **Color states:** Visual clarity (not confusing text)
|
||||
- **Countdown timer:** Gentle urgency (not nagging notifications)
|
||||
- **Booking flow:** Simple for kids (not complex admin)
|
||||
|
||||
**If any touchpoint breaks the story:**
|
||||
- Leaderboard shows "failures" → Punishing, not fun → Story breaks
|
||||
- Countdown sends notifications → Nagging, not gentle → Story breaks
|
||||
- Week view shows daily → Doesn't match mental model → Story breaks
|
||||
|
||||
**Only a designer maintains this coherence.**
|
||||
|
||||
---
|
||||
|
||||
## The Designer's Superpower
|
||||
|
||||
**You think in layers:**
|
||||
|
||||
```
|
||||
Layer 1: Why does this business exist?
|
||||
Layer 2: What are we trying to achieve?
|
||||
Layer 3: What product serves that goal?
|
||||
Layer 4: Who are the users and what do they need?
|
||||
Layer 5: How do we make it simple and intuitive?
|
||||
Layer 6: How do we keep the story coherent?
|
||||
Layer 7: How do we make it implementable?
|
||||
```
|
||||
|
||||
**Engineers think in Layer 7 only.**
|
||||
**Business developers think in Layers 1-3 only.**
|
||||
**AI thinks in Layer 7 with fragments of Layer 5.**
|
||||
|
||||
**You're the only one thinking across all 7 layers simultaneously.**
|
||||
|
||||
---
|
||||
|
||||
## Powered by AI or Not
|
||||
|
||||
**With or without AI, this multi-dimensional thinking is irreplaceable.**
|
||||
|
||||
**AI makes it MORE valuable:**
|
||||
- Implementation is fast → Specification becomes critical
|
||||
- Anyone can generate code → Knowing WHAT to build becomes the differentiator
|
||||
- Features are cheap → Coherent experience becomes the competitive advantage
|
||||
|
||||
**The designer who can:**
|
||||
- Think across all 5 dimensions
|
||||
- Maintain coherent storylines
|
||||
- Translate complexity into simplicity
|
||||
- Specify precisely for AI implementation
|
||||
|
||||
**...is 10x more valuable than before.**
|
||||
|
||||
---
|
||||
|
||||
## Bottom Line
|
||||
|
||||
**You're not just designing interfaces.**
|
||||
|
||||
**You're architecting:**
|
||||
- Business value delivery
|
||||
- User behavior change
|
||||
- Product strategy
|
||||
- Experience coherence
|
||||
- Technical feasibility
|
||||
|
||||
**Across 5 dimensions simultaneously.**
|
||||
|
||||
**That's not a skill AI can replace.**
|
||||
|
||||
**That's the skill AI makes essential.**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Guide](00-MODULAR-ARCHITECTURE-GUIDE.md)
|
||||
|
|
@ -1,273 +0,0 @@
|
|||
# Video 2: What is Whiteport Design Studio (WDS)?
|
||||
|
||||
**Duration:** 12 minutes
|
||||
**Audience:** Designers, Product Managers, Entrepreneurs
|
||||
|
||||
---
|
||||
|
||||
## Introduction (1 min)
|
||||
|
||||
Welcome to Whiteport Design Studio - or WDS for short.
|
||||
|
||||
In the last video, we talked about why designers are irreplaceable in the AI era. Now let's talk about WHAT WDS actually is and how it transforms the way you work.
|
||||
|
||||
---
|
||||
|
||||
## The Core Problem WDS Solves (2 min)
|
||||
|
||||
### Traditional Design Handoff Nightmare
|
||||
|
||||
**Recognize this disaster?**
|
||||
- You create gorgeous designs in isolation
|
||||
- Designs disappear into "design backlog purgatory"
|
||||
- Months later, developers build something vaguely similar
|
||||
- Everyone argues: "That's not what we agreed on!"
|
||||
|
||||
**The painful reality:** Most brilliant interface ideas die in translation.
|
||||
|
||||
We sketch inspiration but ship interpretation.
|
||||
We design experiences but deliver confusion.
|
||||
|
||||
### The AI Era Makes This Worse
|
||||
|
||||
With AI development, there's a new problem:
|
||||
|
||||
**AI can generate code with stunning accuracy - IF you can clearly define what you want.**
|
||||
|
||||
But if you're unclear, AI starts hallucinating and leaves your project in a death spiral.
|
||||
|
||||
**The new reality:**
|
||||
- 🎯 Clear specifications = Perfect AI implementation
|
||||
- 🌪️ Unclear specifications = AI hallucination death spiral
|
||||
|
||||
---
|
||||
|
||||
## What WDS Actually Is (3 min)
|
||||
|
||||
### Specification-First Development
|
||||
|
||||
**WDS is a specification-first design system.**
|
||||
|
||||
Instead of:
|
||||
```
|
||||
Sketch → Hope developers understand → Fix in QA
|
||||
```
|
||||
|
||||
WDS gives you:
|
||||
```
|
||||
Trigger Map → Scenario Init → Sketch → Why-Based Specs → AI Implementation
|
||||
```
|
||||
|
||||
### The Revolutionary Truth
|
||||
|
||||
**With AI development, specifications ARE the code.**
|
||||
|
||||
There is no longer a bottleneck in writing code. The bottleneck is **knowing what to build**.
|
||||
|
||||
And that requires:
|
||||
- Understanding user psychology (Trigger Map)
|
||||
- Defining the journey (Scenario Init)
|
||||
- Capturing design intent (Why-Based Specs)
|
||||
- Preventing AI mistakes (WHAT NOT TO DO)
|
||||
|
||||
### WDS = Designer + AI Partnership
|
||||
|
||||
**WDS is not:**
|
||||
- ❌ AI replacing designers
|
||||
- ❌ Automated design generation
|
||||
- ❌ Generic template system
|
||||
|
||||
**WDS is:**
|
||||
- ✅ AI amplifying designer thinking
|
||||
- ✅ Socratic questioning to elevate decisions
|
||||
- ✅ Why-based specifications that preserve intent
|
||||
|
||||
---
|
||||
|
||||
## The Three Core Innovations (4 min)
|
||||
|
||||
### 1. Socratic Questioning
|
||||
|
||||
**Traditional AI:**
|
||||
```
|
||||
You: "Create a calendar"
|
||||
AI: *Generates generic calendar*
|
||||
You: "No, that's not right..."
|
||||
```
|
||||
|
||||
**WDS Agent:**
|
||||
```
|
||||
You: "I need a calendar"
|
||||
Agent: "Help me understand - why week view instead of daily?"
|
||||
You: "Swedish families think in weeks..."
|
||||
Agent: "Got it! So we match their mental model.
|
||||
Should I avoid adding daily/monthly views?"
|
||||
You: "Exactly!"
|
||||
```
|
||||
|
||||
**The difference:** Agent asks WHY to understand your reasoning, not just WHAT to build.
|
||||
|
||||
---
|
||||
|
||||
### 2. Why-Based Specifications
|
||||
|
||||
**Traditional Spec:**
|
||||
```markdown
|
||||
## Calendar Component
|
||||
- Week view
|
||||
- 7 columns (days)
|
||||
- Color-coded states
|
||||
```
|
||||
|
||||
**WDS Why-Based Spec:**
|
||||
```markdown
|
||||
## Calendar Component
|
||||
|
||||
WHY Week View:
|
||||
Swedish families think in "Vecka 40". This matches their
|
||||
mental model. Daily view is too granular, monthly too abstract.
|
||||
→ AI: Don't add daily/monthly views, even if you think it's "better"
|
||||
|
||||
WHY 6 Color States:
|
||||
Visual, instant understanding for kids. No reading required.
|
||||
Each state serves a specific purpose in the accountability flow.
|
||||
→ AI: Don't simplify to 3 states, each serves a purpose
|
||||
|
||||
WHY Countdown Timer (Not Notifications):
|
||||
Gentle urgency without nagging. Visible when user checks app.
|
||||
Notifications would break the "fun, not punishing" tone.
|
||||
→ AI: Don't add push notifications, even if you think it's "helpful"
|
||||
```
|
||||
|
||||
**The difference:** AI knows WHAT to build, WHY you chose it, and WHAT NOT TO DO.
|
||||
|
||||
---
|
||||
|
||||
### 3. Modular Architecture
|
||||
|
||||
**Traditional approach:**
|
||||
```
|
||||
One giant specification file (800 lines)
|
||||
├─ Layout + Visual + Logic + API + Content
|
||||
```
|
||||
|
||||
**WDS Modular Architecture:**
|
||||
```
|
||||
Pages/02-calendar-page.md (100 lines)
|
||||
├─ WHERE: Page context, layout, content
|
||||
|
||||
Components/walk-slot-card.component.md (150 lines)
|
||||
├─ HOW: Visual design, states, styling
|
||||
|
||||
Features/walk-booking-logic.feature.md (200 lines)
|
||||
├─ WHAT: Business rules, validation, API
|
||||
```
|
||||
|
||||
**The difference:**
|
||||
- Clear separation of concerns
|
||||
- Easy to maintain and update
|
||||
- Clean handoffs to specialists
|
||||
- AI can process each file independently
|
||||
|
||||
---
|
||||
|
||||
## How WDS Works in Practice (2 min)
|
||||
|
||||
### The Complete Flow
|
||||
|
||||
**Phase 1: Trigger Map**
|
||||
```
|
||||
WHO: Parents (need accountability)
|
||||
TRIGGER: Family conflict over dog care
|
||||
OUTCOME: Harmony without nagging
|
||||
FEATURE: Family dog walk calendar
|
||||
```
|
||||
|
||||
**Phase 2: Scenario Init**
|
||||
```
|
||||
Entry Point: Google search (frustrated)
|
||||
Mental State: Tired of nagging, want simple solution
|
||||
End Goal: First walk completed, everyone happy
|
||||
Shortest Path: Landing → Sign up → Setup → Calendar → First walk
|
||||
```
|
||||
|
||||
**Phase 3: Sketch**
|
||||
```
|
||||
You: [Upload sketch of calendar page]
|
||||
Agent: "I see: Week view, leaderboard, countdown timers.
|
||||
Should I analyze these sections?"
|
||||
```
|
||||
|
||||
**Phase 4: Why-Based Specifications**
|
||||
```
|
||||
Agent: "Why week view instead of daily?"
|
||||
You: "Swedish families think in weeks..."
|
||||
Agent: "Perfect! Documenting:
|
||||
WHY: Matches Swedish 'Vecka 40' mental model
|
||||
WHAT NOT TO DO: Don't add daily/monthly views"
|
||||
```
|
||||
|
||||
**Phase 5: AI Implementation**
|
||||
```
|
||||
AI: *Implements exactly as specified*
|
||||
*Skips "helpful" features that would break intent*
|
||||
*Preserves design reasoning*
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## The WDS Difference (1 min)
|
||||
|
||||
### Traditional Design Process
|
||||
|
||||
**Designer:** Creates in isolation
|
||||
**Handoff:** "Here's the design, figure it out"
|
||||
**Developer:** Interprets and builds
|
||||
**Result:** Something vaguely similar
|
||||
**Outcome:** Endless revisions
|
||||
|
||||
### WDS Process
|
||||
|
||||
**Designer:** Thinks through psychology
|
||||
**Agent:** Asks Socratic questions
|
||||
**Specifications:** Capture WHY + WHAT + WHAT NOT
|
||||
**AI:** Implements correctly first time
|
||||
**Outcome:** Design intent preserved
|
||||
|
||||
---
|
||||
|
||||
## Summary (1 min)
|
||||
|
||||
**WDS is:**
|
||||
|
||||
1. **Specification-First** - Specs ARE the code in the AI era
|
||||
2. **Socratic Questioning** - Agent elevates your thinking
|
||||
3. **Why-Based Specs** - Capture reasoning, not just requirements
|
||||
4. **Modular Architecture** - Clean separation, easy maintenance
|
||||
5. **Designer-AI Partnership** - Amplification, not replacement
|
||||
|
||||
**The result:**
|
||||
- AI implements correctly first time
|
||||
- Design intent is preserved
|
||||
- Specifications become design knowledge
|
||||
- You're 10x faster and 10x more valuable
|
||||
|
||||
---
|
||||
|
||||
## Next Video
|
||||
|
||||
In the next video, we'll dive into the **BMad Method** - the systematic approach that makes WDS possible.
|
||||
|
||||
You'll learn:
|
||||
- The 4 phases of design thinking
|
||||
- How each phase builds on the previous
|
||||
- Why this method works with AI
|
||||
- How to apply it to your projects
|
||||
|
||||
See you there!
|
||||
|
||||
---
|
||||
|
||||
[← Previous: Designer's Role](01-designer-role-in-ai-era.md) | [Next: BMad Method →](03-bmad-method-overview.md)
|
||||
|
||||
[Back to Tutorial Guide](00-TUTORIAL-GUIDE.md)
|
||||
|
|
@ -1,80 +0,0 @@
|
|||
# Tutorial Folder - DEPRECATED
|
||||
|
||||
**Date:** December 9, 2024
|
||||
**Status:** Deprecated - Content moved to course modules
|
||||
|
||||
---
|
||||
|
||||
## What Happened?
|
||||
|
||||
The standalone `tutorial/` folder has been **deprecated** in favor of integrating tutorials directly into course modules.
|
||||
|
||||
---
|
||||
|
||||
## New Structure
|
||||
|
||||
Tutorials are now located within each course module:
|
||||
|
||||
```
|
||||
course/
|
||||
├── module-02-project-brief/
|
||||
│ ├── module-02-overview.md
|
||||
│ ├── lesson-01-...md
|
||||
│ └── tutorial-02.md ← Tutorial here!
|
||||
├── module-04-map-triggers-outcomes/
|
||||
│ └── tutorial-04.md ← Tutorial here!
|
||||
├── module-08-initialize-scenario/
|
||||
│ └── tutorial-08.md ← Tutorial here!
|
||||
└── module-12-why-based-specs/
|
||||
└── tutorial-12.md ← Tutorial here!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Why the Change?
|
||||
|
||||
**Benefits:**
|
||||
- ✅ Single learning path - everything in one place
|
||||
- ✅ Module-specific tutorials - tutorial right where you need it
|
||||
- ✅ Cleaner structure - no separate tutorial folder
|
||||
- ✅ Better organization - theory + practice together
|
||||
|
||||
**Old approach:**
|
||||
- Separate tutorial folder
|
||||
- Disconnected from course content
|
||||
- Harder to navigate
|
||||
|
||||
**New approach:**
|
||||
- Tutorials integrated into modules
|
||||
- Theory → Tutorial → Practice flow
|
||||
- Easier to follow
|
||||
|
||||
---
|
||||
|
||||
## Where to Find Tutorials Now
|
||||
|
||||
**Project Brief:**
|
||||
→ [course/module-02-project-brief/tutorial-02.md](../course/module-02-project-brief/tutorial-02.md)
|
||||
|
||||
**Trigger Mapping:**
|
||||
→ [course/module-04-map-triggers-outcomes/tutorial-04.md](../course/module-04-map-triggers-outcomes/tutorial-04.md)
|
||||
|
||||
**Initialize Scenario:**
|
||||
→ [course/module-08-initialize-scenario/tutorial-08.md](../course/module-08-initialize-scenario/tutorial-08.md)
|
||||
|
||||
**Why-Based Specifications:**
|
||||
→ [course/module-12-why-based-specs/tutorial-12.md](../course/module-12-why-based-specs/tutorial-12.md)
|
||||
|
||||
---
|
||||
|
||||
## Navigation
|
||||
|
||||
**Start learning:**
|
||||
→ [Course Overview](../course/00-course-overview.md)
|
||||
|
||||
**Quick reference:**
|
||||
→ [Workflows Guide](../WDS-WORKFLOWS-GUIDE.md)
|
||||
|
||||
---
|
||||
|
||||
**This folder will be removed in a future cleanup. All content has been migrated to course modules.**
|
||||
|
|
@ -1,244 +0,0 @@
|
|||
# Chapter 0: Why WDS Matters
|
||||
## Part 1: Inspiration
|
||||
|
||||
**Learn how to be indispensable in the AI era**
|
||||
|
||||
---
|
||||
|
||||
## Why Learning WDS Matters
|
||||
|
||||
Imagine being the one person on your team that everyone depends on. Not because you work the longest hours or create the prettiest mockups, but because you do something nobody else can do - not even AI. You're about to learn a design methodology that makes you that person.
|
||||
|
||||
This isn't about working faster or making shinier designs. It's about becoming what bestselling author Seth Godin calls a **Linchpin** - someone who is genuinely irreplaceable. Think about the difference between a factory worker who follows instructions and the person who figures out what needs to be done in the first place. The first person can be replaced by a machine. The second person? They're the one who makes things happen.
|
||||
|
||||
In the AI era, designers who master WDS become linchpin designers. They connect ideas that seem unrelated, make judgment calls when there's no clear answer, and create experiences that feel right in ways that can't be reduced to a formula.
|
||||
|
||||
**What makes an irreplaceable designer:**
|
||||
- Connects disparate ideas across business, psychology, and technology
|
||||
- Makes things happen when there's no instruction manual
|
||||
- Creates value that can't be commoditized or automated
|
||||
- Is essential, not interchangeable
|
||||
|
||||
---
|
||||
|
||||
## What You'll Gain
|
||||
|
||||
Here's the transformation you're about to experience. Right now, you might feel uncertain about your future as a designer in a world where AI can generate interfaces in seconds. You might wonder if your skills will still matter in five years. That uncertainty is about to disappear.
|
||||
|
||||
By the end of this tutorial, you'll have a completely different relationship with AI. Instead of seeing it as a threat, you'll understand it as an amplifier of your unique human abilities. You'll know exactly what makes you irreplaceable, and you'll have a methodology that lets you work with AI as a partner rather than a competitor.
|
||||
|
||||
Most importantly, you'll understand the five dimensions of thinking that only humans can navigate simultaneously - and you'll know how to use them to create designs that AI could never conceive on its own.
|
||||
|
||||
**Your transformation:**
|
||||
- ✅ Understand why designers are irreplaceable in the AI era
|
||||
- ✅ Master the 5 dimensions of designer thinking
|
||||
- ✅ Recognize what AI can and cannot do
|
||||
- ✅ Embrace specifications as the new code
|
||||
- ✅ Amplify your value through AI partnership
|
||||
|
||||
---
|
||||
|
||||
## The Problem We're Solving
|
||||
|
||||
### The Factory Mindset vs The Linchpin Mindset
|
||||
|
||||
In his groundbreaking book [Linchpin: Are You Indispensable?](https://www.amazon.com/Linchpin-Are-You-Indispensable-ebook/dp/B00354Y9ZU), bestselling author and marketing visionary Seth Godin reveals something uncomfortable: the industrial revolution didn't just change how we make things - it changed how we think about work itself. For over a century, we've been trained to be cogs in a machine. Show up, follow instructions, do your part, go home. Replaceable. Interchangeable. Safe.
|
||||
|
||||
Traditional design work follows this exact pattern. You get a brief (instructions), create some mockups (your part), hand them off to developers (next cog in the machine), and hope they understand what you meant. When they don't, you go through endless revisions until something vaguely resembling your vision ships. You're doing factory work - just with Figma instead of an assembly line.
|
||||
|
||||
Here's the uncomfortable truth: AI is really, really good at factory work. If your job is to follow instructions and create predictable outputs, you're in trouble. But if you can become a linchpin - someone who connects ideas, makes judgment calls, and creates meaning - you become more valuable than ever.
|
||||
|
||||
**The factory mindset in design:**
|
||||
- Creates mockups by following briefs (instructions)
|
||||
- Hands off to developers (replaceable step)
|
||||
- Hopes they understand (no real connection)
|
||||
- Endless revisions (cog in the machine)
|
||||
- Can be replaced by AI
|
||||
|
||||
---
|
||||
|
||||
### The AI Threat (For Cogs)
|
||||
|
||||
Let's be honest about what's happening. AI can now generate mockups in seconds. It can follow design systems with perfect consistency. It can iterate through hundreds of variations without breaking a sweat. If your value as a designer comes from creating predictable outputs based on clear instructions, you're competing with something that's faster, more consistent, and infinitely scalable.
|
||||
|
||||
But here's the thing: AI cannot be a linchpin. It can't walk into a messy situation and figure out what actually needs to happen. It can't sense when a client is asking for the wrong thing. It can't connect a business goal to a psychological insight to a technical constraint and come up with something nobody expected but everyone loves.
|
||||
|
||||
**What AI does better than cogs:**
|
||||
- Generates mockups instantly (no creative block)
|
||||
- Follows design systems perfectly (zero deviation)
|
||||
- Iterates through hundreds of variations (no fatigue)
|
||||
- Works 24/7 at the same quality level (infinitely scalable)
|
||||
- Executes instructions flawlessly (no interpretation errors)
|
||||
|
||||
---
|
||||
|
||||
### The AI Opportunity (For Linchpin Designers)
|
||||
|
||||
Here's where it gets exciting - and where most designers miss the point entirely.
|
||||
|
||||
The internet is drowning in AI slop. Generic interfaces that look fine but feel dead. Products that check all the boxes but have no soul. Experiences that function correctly but leave users cold. This is what happens when you let AI do the thinking - you get competent mediocrity at scale.
|
||||
|
||||
But here's the brutal truth about today's market: **bad products used to fail after launch. Now bad products never even get to start.** Users have infinite options. They can smell soulless design from a mile away. They won't give you a second chance. If your product doesn't immediately feel different, feel right, feel like someone actually cared - it's dead on arrival.
|
||||
|
||||
This is your opportunity. While everyone else is racing to generate more generic content faster, you can create products that come alive. Products with soul. Products that people actually want to use because they feel the human thinking behind them.
|
||||
|
||||
Linchpin designers do what AI fundamentally cannot do: they give products a soul. They navigate five dimensions of thinking simultaneously - business goals, user psychology, product strategy, technical constraints, and design execution - and find the human truth at the intersection. They make judgment calls that create emotional resonance. They build trust through thoughtful decisions. They care about the outcome in a way that shows in every interaction.
|
||||
|
||||
The bottleneck in product development used to be coding. AI demolished that. Now the bottleneck is **products worth building** - figuring out what to create that won't be just more noise in an ocean of AI-generated mediocrity.
|
||||
|
||||
**What makes products come alive (what only designers can do):**
|
||||
- Navigate 5 dimensions to find the human truth at the intersection
|
||||
- Make judgment calls that create emotional resonance, not just functionality
|
||||
- Build trust through decisions that show someone cared
|
||||
- Connect business goals to user psychology in ways that feel right
|
||||
- Create experiences that stand out from generic AI-generated mediocrity
|
||||
- Give products a soul that users can feel
|
||||
|
||||
---
|
||||
|
||||
## The Opportunity
|
||||
|
||||
### Becoming a Linchpin Designer
|
||||
|
||||
Seth Godin defines a linchpin as "an individual who can walk into chaos and create order, someone who can invent, connect, create, and make things happen." That's exactly what product design is at its core - walking into the chaos of competing business goals, unclear user needs, technical constraints, and market pressures, and somehow creating order. Creating something that works.
|
||||
|
||||
WDS teaches you to be this person systematically. Not through vague advice about "thinking outside the box," but through a concrete methodology that helps you navigate complexity and create clarity. You'll learn to ask the right questions, connect the right dots, and make the right calls - even when there's no obvious right answer.
|
||||
|
||||
This is what makes you indispensable. Not your Figma skills. Not your aesthetic taste. Your ability to walk into chaos and create order.
|
||||
|
||||
**The irreplaceable designer:**
|
||||
- Transforms complexity into clarity
|
||||
- Invents solutions nobody expected
|
||||
- Bridges business, psychology, and technology
|
||||
- Delivers results when there's no roadmap
|
||||
|
||||
---
|
||||
|
||||
### The Designer's Gift: User-Centric Creativity
|
||||
|
||||
Here's Godin's most important insight: linchpins provide something he calls **emotional labor** - the work of genuinely caring about the outcome, connecting with people's real needs, and creating meaning that matters. For designers, this translates into **user-centric creativity** - the uniquely human ability to understand, empathize, and create with purpose.
|
||||
|
||||
User-centric creativity means doing the hard work of understanding WHY users feel frustrated instead of just making things look better. It means connecting business goals to human needs in ways that serve both. It means creating experiences that feel right, not just function correctly. It means making judgment calls that serve people, even when it's harder than following a formula.
|
||||
|
||||
AI can generate variations endlessly and make things look polished on the surface. But here's what it cannot do: it cannot tell when something is fundamentally wrong. It will confidently create beautiful interfaces that make no logical sense. It will add features that contradict the business goal. It will optimize for metrics that destroy user trust. It will make ridiculous mistakes with absolute confidence - and without a skilled designer as gatekeeper, those mistakes ship.
|
||||
|
||||
This is where user-centric creativity becomes critical. You're not just creating - you're evaluating, connecting, and protecting. You understand what it feels like to be a parent struggling to get their kids to help with the dog. You can sense when a business goal conflicts with user needs and find a creative solution that serves both. You're the advocate for the user's presence in every decision. You're the gatekeeper who ensures the impactful meeting between business and user actually happens through the product.
|
||||
|
||||
**The designer as gatekeeper:**
|
||||
- Catches AI's confident but ridiculous mistakes before they ship
|
||||
- Evaluates if solutions actually make logical sense
|
||||
- Ensures business goals don't contradict user needs
|
||||
- Protects users from metric-driven decisions that destroy trust
|
||||
- Advocates for the user's presence in every decision
|
||||
- Creates the impactful meeting between business and user
|
||||
|
||||
---
|
||||
|
||||
### From Cog to Linchpin Designer
|
||||
|
||||
Here's the transformation that WDS enables. In the old model, you were a cog designer - creating mockups based on briefs, handing them off to developers who interpreted them their own way, hoping for the best. Your leverage was limited because your thinking stopped at the handoff. You were replaceable because anyone with similar skills could do roughly the same thing.
|
||||
|
||||
With WDS and AI, everything changes - and here's the key insight: **your design contribution completely replaces prompting.** Think about it. You make design decisions. AI helps you clarify them in text. The result is an absolute goldmine for everyone on the team - providing clarity that works like clockwork, replacing hours of pointless back-and-forth prompting.
|
||||
|
||||
You provide the user-centric creativity - the deep understanding of WHY things need to work a certain way. You create why-based specifications that capture not just what to build, but why you're building it that way and what mistakes to avoid. Then AI implements it - but you're there as gatekeeper, catching the mistakes, evaluating the logic, ensuring it actually serves both business and user.
|
||||
|
||||
Here's the paradigm shift: **The design becomes the specification. The specification becomes the product. The code is just the printout - the projection to the end user.** Your thinking no longer stops at handoff. It scales infinitely. Every specification you write becomes a permanent record of your design reasoning that provides clarity for developers, stakeholders, and AI alike. No more endless prompting sessions. No more "can you make it more modern?" Your design thinking, captured in specifications, is the source of truth.
|
||||
|
||||
You remain in the loop - the skilled, experienced designer who evaluates AI's work, catches its confident mistakes, and ensures what ships actually makes sense. You become the key designer player - the person who makes things happen. AI becomes your tool - powerful but requiring your expertise to guide it.
|
||||
|
||||
**The designer's transformation:**
|
||||
- **Before:** Creates mockups → Hands off → Hopes it works → Limited leverage
|
||||
- **After:** Design thinking → Specification → Gatekeeper → Clarity for all → Scales infinitely
|
||||
- **Result:** From replaceable cog to indispensable gatekeeper - your design IS the product
|
||||
|
||||
---
|
||||
|
||||
## What You'll Learn
|
||||
|
||||
### The Designer's Art: 5-Dimensional Thinking
|
||||
|
||||
Godin says linchpins "connect disparate ideas." For product designers, this means something very specific: navigating five different dimensions of thinking at the same time. Most people can handle one or two dimensions. Irreplaceable designers navigate all five simultaneously, seeing connections that others miss.
|
||||
|
||||
Think about designing that Dog Week calendar. You need to understand why the business exists (solving family conflict), what success looks like (kids actually walk the dog without nagging), what features serve that goal (week view, not daily), who the users are and what triggers their needs (Swedish families thinking in "Vecka"), and what's technically feasible (mobile app with family sharing). Each dimension informs the others. Miss one, and your design falls apart.
|
||||
|
||||
This is what makes you indispensable as a designer. AI can help you think through each dimension individually. It can generate ideas, analyze data, suggest solutions. But it cannot navigate all five dimensions simultaneously while providing the emotional labor of genuinely caring about the outcome. That's uniquely human. That's what makes designers irreplaceable.
|
||||
|
||||
**The 5 dimensions of design thinking:**
|
||||
|
||||
1. **Business Existence (WHY)** - Understanding purpose and value creation
|
||||
2. **Business Goals (SUCCESS)** - Connecting to metrics and impact
|
||||
3. **Product Strategy (HOW)** - Making hard choices about features
|
||||
4. **Target Groups (WHO)** - Empathy and understanding needs
|
||||
5. **Technical Viability (FEASIBLE)** - Bridging design and implementation
|
||||
|
||||
**The irreplaceable designer's advantage:** Navigating all 5 simultaneously with emotional labor
|
||||
|
||||
---
|
||||
|
||||
## The Transformation
|
||||
|
||||
### From Replaceable to Indispensable
|
||||
|
||||
Godin has a warning that should make every designer pay attention: "If you're not indispensable, you're replaceable. And if you're replaceable, you're probably going to be replaced." In the AI era, this isn't a threat - it's just reality. The question is: which side of that line are you on?
|
||||
|
||||
Right now, you might feel threatened by AI design tools. You might be uncertain about your value as a designer. You might be frustrated by the gap between your vision and what gets implemented. You might feel limited by development bottlenecks. If you're doing factory work - following briefs, creating mockups, hoping for the best - you're on the wrong side of that line.
|
||||
|
||||
This tutorial moves you to the other side. You'll become confident in your indispensable role because you'll understand exactly what makes you irreplaceable. You'll be clear on your unique gift - the user-centric creativity that AI cannot provide. You'll be empowered by AI partnership instead of threatened by it, because AI will amplify your design thinking instead of replacing it. You'll be unstoppable in implementation because your specifications will capture your creative intent perfectly.
|
||||
|
||||
You'll become the designer who makes things happen. The one they can't do without. The linchpin designer.
|
||||
|
||||
**Your transformation as a designer:**
|
||||
- **Before:** Threatened, uncertain, frustrated, limited, replaceable
|
||||
- **After:** Confident, clear, empowered, unstoppable, indispensable
|
||||
- **Result:** The designer who makes things happen
|
||||
|
||||
---
|
||||
|
||||
## Learn from Real-World projects: Case Studies
|
||||
|
||||
### Case Study: Dog Week
|
||||
|
||||
Let's make this concrete with a real project. Dog Week is an app that helps Swedish families manage their dog's care through a shared family calendar. The problem it solves is universal - parents are tired of nagging kids about walking the dog, kids feel like they're being punished, and everyone ends up frustrated.
|
||||
|
||||
An irreplaceable designer approaches this completely differently than a cog designer. Instead of jumping straight to mockups, they apply user-centric creativity first. They understand Swedish family dynamics - how "Vecka 40" (week 40) is how people think about time. They connect the business goal (family accountability) to human needs (fun, not punishment). They make judgment calls like using a week view instead of daily, because that matches how families actually think. Every decision is grounded in design empathy and understanding WHY.
|
||||
|
||||
Compare the outcomes. The traditional approach - creating mockups, handing off to developers, going through revisions - took 26 weeks and resulted in something mediocre because the intent got lost in translation. The WDS approach - applying user-centric creativity upfront, capturing WHY in specifications, letting AI implement - took 5 weeks and resulted in something exceptional because the design intent was preserved.
|
||||
|
||||
That's a 5x speed increase with better quality. But more importantly, the key designer's creative thinking was preserved and amplified instead of diluted and lost.
|
||||
|
||||
**The comparison:**
|
||||
- **Traditional (cog designer):** 26 weeks → Mediocre result → Intent lost
|
||||
- **WDS (linchpin designer):** 5 weeks → Exceptional result → Intent preserved
|
||||
- **Key difference:** Designer's user-centric creativity captured and amplified
|
||||
|
||||
---
|
||||
|
||||
*More case studies will be added here as they become available.*
|
||||
|
||||
---
|
||||
|
||||
## Ready to Begin?
|
||||
|
||||
**Before you start, check the practicalities:**
|
||||
- What skills you need (spoiler: you already have them)
|
||||
- Time investment and learning paths
|
||||
- Tools required (mostly free)
|
||||
- What other designers say about WDS
|
||||
|
||||
**[Read Practicalities →](04-practicalities.md)**
|
||||
|
||||
---
|
||||
|
||||
**Or jump straight into the methodology:**
|
||||
|
||||
In the next section (Teaching), you'll learn the concrete methodology:
|
||||
- The 5 dimensions in detail with examples
|
||||
- What AI cannot do (and what it can)
|
||||
- Why specifications are the new code
|
||||
- How to amplify your value through AI partnership
|
||||
|
||||
**[Continue to Part 2: Teaching →](02-teaching.md)**
|
||||
|
||||
---
|
||||
|
||||
[← Back to Tutorial Guide](../00-TUTORIAL-GUIDE.md) | [Practicalities →](04-practicalities.md) | [Next: Teaching →](02-teaching.md)
|
||||
|
|
@ -1,235 +0,0 @@
|
|||
# Chapter 0: Why WDS Matters
|
||||
## Part 4: Practicalities
|
||||
|
||||
**Everything you need to know before starting**
|
||||
|
||||
---
|
||||
|
||||
## Prerequisites
|
||||
|
||||
### What Skills You Need
|
||||
|
||||
**Required (you probably already have these):**
|
||||
- Basic design thinking and UX principles
|
||||
- Ability to sketch interfaces (hand-drawn or digital)
|
||||
- Understanding of user needs and business goals
|
||||
- Willingness to think deeply about WHY
|
||||
|
||||
**NOT required:**
|
||||
- ❌ Coding skills
|
||||
- ❌ Advanced technical knowledge
|
||||
- ❌ Experience with AI tools
|
||||
- ❌ Formal design education
|
||||
|
||||
**The truth:** If you can design interfaces and explain your thinking, you have everything you need to start.
|
||||
|
||||
---
|
||||
|
||||
## Time Investment
|
||||
|
||||
### How Long Does It Take?
|
||||
|
||||
**Total tutorial time:** ~10 hours
|
||||
- Spread over days or weeks at your own pace
|
||||
- Each chapter: 30-40 minutes
|
||||
- Practice exercises: 1-2 hours per chapter
|
||||
|
||||
**Breakdown:**
|
||||
- **Week 1-2:** Foundation chapters (0-2.3) - Understanding the methodology
|
||||
- **Week 3-4:** Core workflow (4.1-4.6) - Learning specification creation
|
||||
- **Week 5-6:** Advanced topics (5.1-6.1) - Design systems and handoff
|
||||
- **Ongoing:** Practice with your own projects
|
||||
|
||||
**Real-world application:**
|
||||
- First project with WDS: 2-3x slower than your usual process (learning curve)
|
||||
- Second project: Same speed as traditional approach
|
||||
- Third project onwards: 3-5x faster with better quality
|
||||
|
||||
---
|
||||
|
||||
## Tools You'll Need
|
||||
|
||||
### Essential Tools
|
||||
|
||||
**For sketching:**
|
||||
- Paper and pen (seriously, this works best)
|
||||
- OR digital sketching tool (Excalidraw, Figma, iPad + Pencil)
|
||||
|
||||
**For AI assistance:**
|
||||
- Access to Claude, ChatGPT, or similar AI assistant
|
||||
- Free tier is sufficient to start
|
||||
|
||||
**For documentation:**
|
||||
- Text editor (VS Code recommended, but any will work)
|
||||
- Markdown support (built into most modern editors)
|
||||
|
||||
**For collaboration:**
|
||||
- Git/GitHub (optional but recommended)
|
||||
- Shared folder system (Google Drive, Dropbox, etc.)
|
||||
|
||||
**Total cost to get started:** $0-20/month
|
||||
- Free tier AI tools work fine
|
||||
- Paid AI subscriptions ($20/month) provide better experience but aren't required
|
||||
|
||||
---
|
||||
|
||||
## What You'll Create
|
||||
|
||||
### Your First WDS Project
|
||||
|
||||
By the end of this tutorial, you'll have created:
|
||||
|
||||
**1. Complete Project Brief**
|
||||
- Vision and goals clearly defined
|
||||
- Stakeholders and constraints documented
|
||||
- Foundation for all design decisions
|
||||
|
||||
**2. Trigger Map**
|
||||
- Target groups identified and prioritized
|
||||
- User triggers and outcomes mapped
|
||||
- Features prioritized by impact
|
||||
|
||||
**3. Scenario Specifications**
|
||||
- At least one complete user scenario
|
||||
- Why-based specifications for key components
|
||||
- AI-ready documentation
|
||||
|
||||
**4. Design System Foundation**
|
||||
- Design tokens extracted from your specs
|
||||
- Component patterns identified
|
||||
- Reusable architecture defined
|
||||
|
||||
**Estimated value:** What used to take 6-8 weeks now takes 1-2 weeks
|
||||
|
||||
---
|
||||
|
||||
## Learning Path Options
|
||||
|
||||
### Choose Your Journey
|
||||
|
||||
**Option 1: Full Immersion (Recommended)**
|
||||
- Complete all 16 chapters in order
|
||||
- Practice exercises for each chapter
|
||||
- Apply to a real project as you learn
|
||||
- **Time:** 6-8 weeks, 10-15 hours total
|
||||
- **Best for:** Designers who want to master the methodology
|
||||
|
||||
**Option 2: Quick Start**
|
||||
- Focus on core chapters (0, 2.2, 4.1, 4.5)
|
||||
- Skip advanced topics initially
|
||||
- Get started fast, learn more later
|
||||
- **Time:** 2-3 weeks, 3-4 hours total
|
||||
- **Best for:** Designers who need results quickly
|
||||
|
||||
**Option 3: Self-Paced**
|
||||
- Learn one chapter per week
|
||||
- Deep practice between chapters
|
||||
- Build multiple projects as you learn
|
||||
- **Time:** 16 weeks, 20+ hours total
|
||||
- **Best for:** Designers who want deep mastery
|
||||
|
||||
---
|
||||
|
||||
## What Other Designers Say
|
||||
|
||||
### Testimonials
|
||||
|
||||
> "I was skeptical at first - another design methodology? But WDS changed how I think about my role. I'm no longer just making things pretty. I'm the strategic thinker who makes products come alive."
|
||||
>
|
||||
> **— Sarah K., Product Designer**
|
||||
|
||||
> "The 5x speed increase is real. But what surprised me most was how much clearer my thinking became. Writing why-based specifications forced me to understand the 'why' at a deeper level."
|
||||
>
|
||||
> **— Marcus L., UX Lead**
|
||||
|
||||
> "I thought AI would replace me. WDS showed me how to make AI amplify my thinking instead. Now I'm the most valuable designer on my team."
|
||||
>
|
||||
> **— Priya S., Senior Designer**
|
||||
|
||||
> "The paradigm shift hit me in Chapter 4: my design IS the product. The code is just the printout. That completely changed how I approach every project."
|
||||
>
|
||||
> **— James T., Design Director**
|
||||
|
||||
*Note: More testimonials will be added as designers complete the tutorial.*
|
||||
|
||||
---
|
||||
|
||||
## Common Questions
|
||||
|
||||
### FAQ
|
||||
|
||||
**Q: Do I need to know how to code?**
|
||||
A: No. WDS is about design thinking and specifications. AI handles the implementation.
|
||||
|
||||
**Q: What if I don't have a project to practice with?**
|
||||
A: The tutorial includes practice exercises. You can also use a hypothetical project or redesign an existing app.
|
||||
|
||||
**Q: Can I use this with my current design process?**
|
||||
A: Yes! WDS complements existing processes. Many designers integrate it gradually.
|
||||
|
||||
**Q: Is this only for digital products?**
|
||||
A: WDS is optimized for digital products, but the principles apply to any design work.
|
||||
|
||||
**Q: What if I get stuck?**
|
||||
A: Each chapter includes clear examples and guidance. The AI assistant can help clarify concepts as you learn.
|
||||
|
||||
**Q: Do I need to complete all 16 chapters?**
|
||||
A: No. The Quick Start path (4 chapters) gives you enough to start applying WDS immediately.
|
||||
|
||||
**Q: Can I teach this to my team?**
|
||||
A: Yes! WDS is open-source and free. Share it with your entire team.
|
||||
|
||||
**Q: How is this different from traditional design documentation?**
|
||||
A: Traditional docs describe WHAT. WDS captures WHY + WHAT + WHAT NOT TO DO. This makes it AI-ready and preserves your design intent.
|
||||
|
||||
---
|
||||
|
||||
## Support & Community
|
||||
|
||||
### Getting Help
|
||||
|
||||
**During the tutorial:**
|
||||
- Each chapter includes detailed examples
|
||||
- AI assistants can clarify concepts in real-time
|
||||
- Practice exercises with clear success criteria
|
||||
|
||||
**After completion:**
|
||||
- GitHub Discussions for questions and sharing
|
||||
- Community showcase of WDS projects
|
||||
- Regular updates and new case studies
|
||||
|
||||
**Contributing:**
|
||||
- WDS is open-source and welcomes contributions
|
||||
- Share your case studies and learnings
|
||||
- Help improve the tutorial for future designers
|
||||
|
||||
---
|
||||
|
||||
## Ready to Start?
|
||||
|
||||
You have everything you need:
|
||||
- ✅ The skills (design thinking)
|
||||
- ✅ The tools (paper + AI)
|
||||
- ✅ The time (10 hours)
|
||||
- ✅ The motivation (staying indispensable)
|
||||
|
||||
**Next step:** Choose your learning path and dive into Chapter 1.
|
||||
|
||||
**[Start Chapter 1: Project Brief →](../chapter-1.1-project-brief/01-inspiration.md)**
|
||||
|
||||
Or return to the main guide to review the full structure:
|
||||
|
||||
**[← Back to Tutorial Guide](../00-TUTORIAL-GUIDE.md)**
|
||||
|
||||
---
|
||||
|
||||
## Your Transformation Starts Now
|
||||
|
||||
Remember:
|
||||
- **The design becomes the specification**
|
||||
- **The specification becomes the product**
|
||||
- **The code is just the printout**
|
||||
|
||||
Ten hours of learning. A lifetime of being indispensable.
|
||||
|
||||
Let's begin.
|
||||
|
|
@ -1,441 +0,0 @@
|
|||
# Language Configuration Guide
|
||||
|
||||
**Setting Up Multi-Language Projects in WDS**
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
WDS supports two distinct language configurations:
|
||||
|
||||
1. **Specification Language** - Language used to WRITE the design specifications
|
||||
2. **Product Languages** - Languages the final PRODUCT will support
|
||||
|
||||
These are configured during workflow initialization and stored in `wds-workflow-status.yaml`.
|
||||
|
||||
---
|
||||
|
||||
## Configuration During Setup
|
||||
|
||||
### Workflow Init (Step 4)
|
||||
|
||||
During WDS project setup, you'll be asked:
|
||||
|
||||
**Question 1: Specification Language**
|
||||
```
|
||||
What language should WDS write the design specifications in?
|
||||
|
||||
1. English (EN)
|
||||
2. Swedish (SE)
|
||||
3. Norwegian (NO)
|
||||
4. Danish (DK)
|
||||
5. Other
|
||||
```
|
||||
|
||||
**Question 2: Product Languages**
|
||||
```
|
||||
What languages will the final product support?
|
||||
|
||||
List them separated by commas (e.g., "EN, SE" or "EN, SE, NO, DK")
|
||||
|
||||
Product languages: _____________
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Storage in Config
|
||||
|
||||
Settings are stored in `docs/wds-workflow-status.yaml`:
|
||||
|
||||
```yaml
|
||||
config:
|
||||
specification_language: "EN"
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
- NO
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Specification Language
|
||||
|
||||
**Used for:**
|
||||
- Instructions and guidance text in specs
|
||||
- Section descriptions
|
||||
- Comments and annotations
|
||||
- PRD documentation
|
||||
- Design system documentation
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
# 1.1 Start Page
|
||||
|
||||
## Page Purpose
|
||||
Convert visitors into users by addressing... ← Written in spec language
|
||||
|
||||
## User Situation
|
||||
Family members experiencing daily stress... ← Written in spec language
|
||||
```
|
||||
|
||||
### Product Languages
|
||||
|
||||
**Used for:**
|
||||
- All user-facing text content
|
||||
- Button labels
|
||||
- Form labels
|
||||
- Error messages
|
||||
- Help text
|
||||
- Any text the END USER sees
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
#### Primary CTA Button
|
||||
**OBJECT ID**: `start-hero-cta`
|
||||
- **Component**: Button Primary
|
||||
- **Content**: ← Product languages
|
||||
- EN: "Get Started"
|
||||
- SE: "Kom Igång"
|
||||
- NO: "Kom i Gang"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Common Configurations
|
||||
|
||||
### Dog Week Example
|
||||
|
||||
```yaml
|
||||
config:
|
||||
specification_language: "EN" # Specs written in English
|
||||
product_languages:
|
||||
- EN # Product supports English
|
||||
- SE # and Swedish
|
||||
```
|
||||
|
||||
**Result:**
|
||||
- Design specs written in English
|
||||
- All text objects have EN and SE translations
|
||||
|
||||
### Nordic SaaS Example
|
||||
|
||||
```yaml
|
||||
config:
|
||||
specification_language: "EN" # Specs in English
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
- NO
|
||||
- DK
|
||||
- FI # 5 Nordic languages
|
||||
```
|
||||
|
||||
### Internal Swedish Tool
|
||||
|
||||
```yaml
|
||||
config:
|
||||
specification_language: "SE" # Specs in Swedish
|
||||
product_languages:
|
||||
- SE # Only Swedish product
|
||||
```
|
||||
|
||||
### Global Product
|
||||
|
||||
```yaml
|
||||
config:
|
||||
specification_language: "EN"
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
- DE
|
||||
- FR
|
||||
- ES
|
||||
- IT
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Impact on Workflows
|
||||
|
||||
### Phase 1: Product Brief
|
||||
|
||||
**Written in:** `specification_language`
|
||||
|
||||
```markdown
|
||||
# Product Brief
|
||||
|
||||
## Vision
|
||||
Create a platform that... ← Spec language
|
||||
|
||||
## Target Users
|
||||
Swedish families with... ← Spec language
|
||||
```
|
||||
|
||||
### Phase 2: Trigger Map
|
||||
|
||||
**Written in:** `specification_language`
|
||||
|
||||
Personas and triggers documented in spec language.
|
||||
|
||||
### Phase 4: UX Design
|
||||
|
||||
**Specs in:** `specification_language`
|
||||
**Text content in:** `product_languages` (all of them)
|
||||
|
||||
```markdown
|
||||
## Hero Object
|
||||
**Purpose**: Primary value proposition ← Spec language
|
||||
|
||||
#### Primary Headline
|
||||
**OBJECT ID**: `start-hero-headline`
|
||||
- **Component**: H1 heading
|
||||
- **Position**: Center of hero ← Spec language
|
||||
- **Content**: ← Product languages
|
||||
- EN: "Every walk. on time."
|
||||
- SE: "Varje promenad. i tid."
|
||||
```
|
||||
|
||||
### Phase 5: Design System
|
||||
|
||||
**Documentation in:** `specification_language`
|
||||
**Component examples in:** All `product_languages`
|
||||
|
||||
```markdown
|
||||
## Button Component
|
||||
|
||||
### Usage ← Spec language
|
||||
Use this button for primary actions...
|
||||
|
||||
### Examples ← Product languages
|
||||
- EN: "Submit", "Save", "Continue"
|
||||
- SE: "Skicka", "Spara", "Fortsätt"
|
||||
```
|
||||
|
||||
### Phase 6: PRD Finalization
|
||||
|
||||
**Written in:** `specification_language`
|
||||
|
||||
PRD is technical documentation for developers.
|
||||
|
||||
---
|
||||
|
||||
## Text Object Pattern
|
||||
|
||||
Every text object follows this pattern:
|
||||
|
||||
```markdown
|
||||
#### {{Purpose_Name}}
|
||||
**OBJECT ID**: `{{id}}`
|
||||
- **Component**: {{type}}
|
||||
- **Position**: {{description}} ← Spec language
|
||||
- **Style**: {{specifications}} ← Spec language
|
||||
- **Behavior**: {{description}} ← Spec language
|
||||
- **Content**: ← Product languages
|
||||
{{#each product_languages}}
|
||||
- {{this}}: "{{content}}"
|
||||
{{/each}}
|
||||
```
|
||||
|
||||
**Real Example:**
|
||||
|
||||
```markdown
|
||||
#### Email Label
|
||||
**OBJECT ID**: `signin-form-email-label`
|
||||
- **Component**: Label text
|
||||
- **Position**: Above email input field
|
||||
- **For**: signin-form-email-input
|
||||
- **Content**:
|
||||
- EN: "Email Address"
|
||||
- SE: "E-postadress"
|
||||
- NO: "E-postadresse"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Agent Behavior
|
||||
|
||||
### During Phase 4
|
||||
|
||||
When documenting text objects, agents will:
|
||||
|
||||
1. **Read config** from `wds-workflow-status.yaml`
|
||||
2. **Extract** `product_languages` array
|
||||
3. **Request content** for EACH language
|
||||
4. **Group translations** so each language reads coherently
|
||||
|
||||
**Agent prompt:**
|
||||
|
||||
```markdown
|
||||
**Content for this Primary Headline:**
|
||||
|
||||
**EN:**
|
||||
|
||||
**SE:**
|
||||
|
||||
**NO:**
|
||||
```
|
||||
|
||||
User provides all translations, agent validates and documents.
|
||||
|
||||
---
|
||||
|
||||
## Benefits
|
||||
|
||||
### ✅ Flexibility
|
||||
|
||||
- Spec language can differ from product languages
|
||||
- Teams can work in their native language
|
||||
- Product can target different markets
|
||||
|
||||
### ✅ Consistency
|
||||
|
||||
- All text objects have all languages
|
||||
- No missing translations
|
||||
- Complete from the start
|
||||
|
||||
### ✅ Clarity
|
||||
|
||||
- Spec readers understand documentation
|
||||
- End users see their language
|
||||
- Translators see all languages together
|
||||
|
||||
### ✅ Developer-Friendly
|
||||
|
||||
Config provides:
|
||||
```yaml
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
- NO
|
||||
```
|
||||
|
||||
Developers know exactly what languages to implement.
|
||||
|
||||
---
|
||||
|
||||
## Language Codes Reference
|
||||
|
||||
**Nordic:**
|
||||
- EN = English
|
||||
- SE = Swedish (Svenska)
|
||||
- NO = Norwegian (Norsk)
|
||||
- DK = Danish (Dansk)
|
||||
- FI = Finnish (Suomi)
|
||||
|
||||
**Western Europe:**
|
||||
- DE = German (Deutsch)
|
||||
- FR = French (Français)
|
||||
- ES = Spanish (Español)
|
||||
- IT = Italian (Italiano)
|
||||
- NL = Dutch (Nederlands)
|
||||
- PT = Portuguese (Português)
|
||||
|
||||
**Eastern Europe:**
|
||||
- PL = Polish (Polski)
|
||||
- CZ = Czech (Čeština)
|
||||
- RU = Russian (Русский)
|
||||
|
||||
**Asia:**
|
||||
- JA = Japanese (日本語)
|
||||
- ZH = Chinese (中文)
|
||||
- KO = Korean (한국어)
|
||||
|
||||
**Other:**
|
||||
- AR = Arabic (العربية)
|
||||
- TR = Turkish (Türkçe)
|
||||
|
||||
---
|
||||
|
||||
## Example: Dog Week Configuration
|
||||
|
||||
### During Setup
|
||||
|
||||
```
|
||||
Specification Language: EN
|
||||
Product Languages: EN, SE
|
||||
```
|
||||
|
||||
### Stored Config
|
||||
|
||||
```yaml
|
||||
# docs/wds-workflow-status.yaml
|
||||
config:
|
||||
specification_language: "EN"
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
```
|
||||
|
||||
### In Specifications
|
||||
|
||||
```markdown
|
||||
# 1.1 Start Page
|
||||
|
||||
The start page serves as the primary entry point... ← Written in EN
|
||||
|
||||
#### Primary Headline
|
||||
**OBJECT ID**: `start-hero-headline`
|
||||
- **Component**: H1 heading
|
||||
- **Position**: Center of hero section ← Written in EN
|
||||
- **Content**:
|
||||
- EN: "Every walk. on time. Every time." ← Product language 1
|
||||
- SE: "Varje promenad. i tid. Varje gång." ← Product language 2
|
||||
```
|
||||
|
||||
### For Developers
|
||||
|
||||
```typescript
|
||||
// Read from config
|
||||
const languages = ['EN', 'SE'];
|
||||
|
||||
// All text has both languages
|
||||
const content = {
|
||||
'start-hero-headline': {
|
||||
en: 'Every walk. on time. Every time.',
|
||||
se: 'Varje promenad. i tid. Varje gång.'
|
||||
}
|
||||
};
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Updating Language Configuration
|
||||
|
||||
If you need to add/change languages mid-project:
|
||||
|
||||
1. **Update** `docs/wds-workflow-status.yaml`
|
||||
2. **Add missing translations** to existing text objects
|
||||
3. **Continue** with new language config
|
||||
|
||||
**Before:**
|
||||
```yaml
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
```
|
||||
|
||||
**After:**
|
||||
```yaml
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
- NO # Added Norwegian
|
||||
```
|
||||
|
||||
**Update existing specs:**
|
||||
```markdown
|
||||
#### Primary Headline
|
||||
- **Content**:
|
||||
- EN: "Every walk. on time."
|
||||
- SE: "Varje promenad. i tid."
|
||||
- NO: "Hver tur. i tide." ← Add new language
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**Language configuration ensures complete, translation-ready specifications from day one!** 🌍✨
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,424 +0,0 @@
|
|||
# Language Flow: Setup to Specification
|
||||
|
||||
**How Language Configuration Flows Through WDS**
|
||||
|
||||
---
|
||||
|
||||
## 1. Workflow Initialization
|
||||
|
||||
**File:** `workflows/workflow-init/instructions.md` (Step 4)
|
||||
|
||||
**User is asked:**
|
||||
|
||||
```
|
||||
Specification Language - What language should WDS write the design specifications in?
|
||||
|
||||
1. English (EN)
|
||||
2. Swedish (SE)
|
||||
3. Norwegian (NO)
|
||||
4. Danish (DK)
|
||||
5. Other
|
||||
|
||||
Choice: 1
|
||||
|
||||
Product Languages - What languages will the final product support?
|
||||
|
||||
(e.g., "EN, SE" or "EN, SE, NO, DK")
|
||||
|
||||
Product languages: EN, SE
|
||||
```
|
||||
|
||||
**Agent stores:**
|
||||
- `specification_language = "EN"`
|
||||
- `product_languages = ["EN", "SE"]`
|
||||
|
||||
---
|
||||
|
||||
## 2. Config File Creation
|
||||
|
||||
**File:** `docs/wds-workflow-status.yaml`
|
||||
|
||||
**Generated from template:**
|
||||
|
||||
```yaml
|
||||
# WDS Workflow Status
|
||||
generated: "2025-12-05"
|
||||
project: "Dog Week"
|
||||
project_type: "full-product"
|
||||
|
||||
config:
|
||||
folder_prefix: "letters"
|
||||
folder_case: "title"
|
||||
brief_level: "complete"
|
||||
include_design_system: true
|
||||
component_library: "custom"
|
||||
specification_language: "EN" ← Stored here
|
||||
product_languages: ← Stored here
|
||||
- EN
|
||||
- SE
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. Phase 4 Agent Reads Config
|
||||
|
||||
**Agent:** Baldr (UX Designer)
|
||||
|
||||
**When starting Phase 4:**
|
||||
|
||||
```xml
|
||||
<action>Load {output_folder}/wds-workflow-status.yaml</action>
|
||||
<action>Extract config.specification_language → "EN"</action>
|
||||
<action>Extract config.product_languages → ["EN", "SE"]</action>
|
||||
<action>Store in session context</action>
|
||||
```
|
||||
|
||||
**Agent now knows:**
|
||||
- Write specs in English
|
||||
- Request content in English AND Swedish for all text
|
||||
|
||||
---
|
||||
|
||||
## 4. Sketch Analysis (4B)
|
||||
|
||||
**File:** `substeps/4b-sketch-analysis.md`
|
||||
|
||||
**Agent analyzes sketch:**
|
||||
|
||||
```
|
||||
Detected text placeholder:
|
||||
- 2 horizontal lines
|
||||
- ~50-60 characters capacity
|
||||
- Appears to be headline
|
||||
|
||||
→ Routes to heading-text.md
|
||||
```
|
||||
|
||||
**Language not needed yet** - analyzing visual structure only.
|
||||
|
||||
---
|
||||
|
||||
## 5. Object Documentation (heading-text.md)
|
||||
|
||||
**File:** `object-types/heading-text.md`
|
||||
|
||||
### Step 1: Purpose-Based Naming
|
||||
|
||||
```
|
||||
What is the PURPOSE of this text on the page?
|
||||
|
||||
User: "Primary headline"
|
||||
|
||||
→ Generates Object ID: start-hero-headline
|
||||
```
|
||||
|
||||
### Step 2: Position & Style
|
||||
|
||||
```
|
||||
Text element specifications:
|
||||
|
||||
Type: H1
|
||||
Position: Center of hero
|
||||
Font size: 42px
|
||||
Line height: 1.2
|
||||
...
|
||||
```
|
||||
|
||||
*Spec written in English (specification_language)*
|
||||
|
||||
### Step 3: Content with Translations
|
||||
|
||||
**Agent reads config:**
|
||||
```xml
|
||||
<action>Load product_languages from config → ["EN", "SE"]</action>
|
||||
```
|
||||
|
||||
**Agent asks:**
|
||||
|
||||
```
|
||||
Content for this Primary Headline:
|
||||
|
||||
Based on sketch: 2 lines, ~50-60 characters total
|
||||
Project languages: EN, SE
|
||||
|
||||
EN:
|
||||
|
||||
SE:
|
||||
```
|
||||
|
||||
**User provides:**
|
||||
```
|
||||
EN: Every walk. on time. Every time.
|
||||
|
||||
SE: Varje promenad. i tid. Varje gång.
|
||||
```
|
||||
|
||||
**Agent validates:**
|
||||
```
|
||||
✅ EN content: 37 characters (fits 60 capacity)
|
||||
✅ SE content: 36 characters (fits 60 capacity)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6. Generate Specification
|
||||
|
||||
**Agent writes to:** `docs/C-Scenarios/01-Customer-Onboarding/1.1-Start-Page/1.1-Start-Page.md`
|
||||
|
||||
```markdown
|
||||
# 1.1 Start Page
|
||||
|
||||
The start page serves as the primary entry point... ← English (spec language)
|
||||
|
||||
## Page Sections
|
||||
|
||||
### Hero Object
|
||||
**Purpose**: Primary value proposition ← English (spec language)
|
||||
|
||||
#### Primary Headline
|
||||
**OBJECT ID**: `start-hero-headline`
|
||||
- **Component**: H1 heading (`.text-heading-1`)
|
||||
- **Position**: Center of hero section ← English (spec language)
|
||||
- **Style**: Bold, 42px, line-height 1.2 ← English (spec language)
|
||||
- **Behavior**: Updates with language toggle ← English (spec language)
|
||||
- **Content**: ← Product languages
|
||||
- EN: "Every walk. on time. Every time."
|
||||
- SE: "Varje promenad. i tid. Varje gång."
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 7. Complete Text Group
|
||||
|
||||
**For a full section with multiple text elements:**
|
||||
|
||||
```markdown
|
||||
### Hero Object
|
||||
**Purpose**: Primary value proposition ← Spec language
|
||||
|
||||
#### Primary Headline
|
||||
**OBJECT ID**: `start-hero-headline`
|
||||
- **Component**: H1 heading
|
||||
- **Position**: Center of hero, top ← Spec language
|
||||
- **Content**:
|
||||
- EN: "Every walk. on time. Every time." ← Product languages
|
||||
- SE: "Varje promenad. i tid. Varje gång."
|
||||
|
||||
#### Supporting Text
|
||||
**OBJECT ID**: `start-hero-supporting`
|
||||
- **Component**: Body text
|
||||
- **Position**: Below headline ← Spec language
|
||||
- **Content**:
|
||||
- EN: "Never miss a walk again." ← Product languages
|
||||
- SE: "Missa aldrig en promenad."
|
||||
|
||||
#### Primary CTA
|
||||
**OBJECT ID**: `start-hero-cta`
|
||||
- **Component**: Button Primary
|
||||
- **Position**: Center, below text ← Spec language
|
||||
- **Content**:
|
||||
- EN: "Get Started" ← Product languages
|
||||
- SE: "Kom Igång"
|
||||
```
|
||||
|
||||
**Reading in English:**
|
||||
> Every walk. on time. Every time.
|
||||
> Never miss a walk again.
|
||||
> [Get Started]
|
||||
|
||||
**Reading in Swedish:**
|
||||
> Varje promenad. i tid. Varje gång.
|
||||
> Missa aldrig en promenad.
|
||||
> [Kom Igång]
|
||||
|
||||
---
|
||||
|
||||
## 8. Developer Handoff
|
||||
|
||||
**Developer reads:** `docs/wds-workflow-status.yaml`
|
||||
|
||||
```yaml
|
||||
config:
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
```
|
||||
|
||||
**Developer implements:**
|
||||
|
||||
```typescript
|
||||
// i18n config
|
||||
const supportedLanguages = ['en', 'se'];
|
||||
|
||||
// Text content from specs
|
||||
const translations = {
|
||||
'start-hero-headline': {
|
||||
en: 'Every walk. on time. Every time.',
|
||||
se: 'Varje promenad. i tid. Varje gång.'
|
||||
},
|
||||
'start-hero-supporting': {
|
||||
en: 'Never miss a walk again.',
|
||||
se: 'Missa aldrig en promenad.'
|
||||
},
|
||||
'start-hero-cta': {
|
||||
en: 'Get Started',
|
||||
se: 'Kom Igång'
|
||||
}
|
||||
};
|
||||
|
||||
// Language toggle
|
||||
function setLanguage(lang: 'en' | 'se') {
|
||||
// All translations ready to use!
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Flow Diagram
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────┐
|
||||
│ 1. Workflow Init (Step 4) │
|
||||
│ User selects: │
|
||||
│ - Spec Language: EN │
|
||||
│ - Product Languages: EN, SE │
|
||||
└──────────────┬──────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 2. Generate Config File │
|
||||
│ docs/wds-workflow-status.yaml │
|
||||
│ config: │
|
||||
│ specification_language: "EN" │
|
||||
│ product_languages: [EN, SE] │
|
||||
└──────────────┬──────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 3. Phase 4: UX Design │
|
||||
│ Baldr agent loads config │
|
||||
│ Knows: Specs in EN, Content in │
|
||||
│ EN + SE │
|
||||
└──────────────┬──────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 4. Sketch Analysis │
|
||||
│ Analyze visual structure │
|
||||
│ (Language-agnostic) │
|
||||
└──────────────┬──────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 5. Text Object Documentation │
|
||||
│ heading-text.md │
|
||||
│ - Purpose naming (in spec lang) │
|
||||
│ - Position/style (in spec lang) │
|
||||
│ - Content (in ALL product langs) │
|
||||
└──────────────┬──────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 6. Generate Page Specification │
|
||||
│ docs/C-Scenarios/.../page.md │
|
||||
│ - Structure/logic in EN │
|
||||
│ - All text in EN + SE │
|
||||
└──────────────┬──────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 7. Developer Implementation │
|
||||
│ - Read config │
|
||||
│ - Extract translations │
|
||||
│ - Implement i18n │
|
||||
│ - All languages ready! │
|
||||
└─────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Key Principles
|
||||
|
||||
### ✅ Two Distinct Languages
|
||||
|
||||
**Specification Language:**
|
||||
- Documentation language
|
||||
- For designers, PMs, developers
|
||||
- Describes structure, behavior, logic
|
||||
|
||||
**Product Languages:**
|
||||
- User-facing content
|
||||
- What end users see
|
||||
- Can be multiple languages
|
||||
|
||||
### ✅ Early Configuration
|
||||
|
||||
**Set during workflow init** - before any design work
|
||||
- No mid-project surprises
|
||||
- All stakeholders aligned
|
||||
- Complete from day one
|
||||
|
||||
### ✅ Automatic Propagation
|
||||
|
||||
**Config flows through all phases:**
|
||||
- Phase 1: Brief in spec language
|
||||
- Phase 2: Trigger Map in spec language
|
||||
- Phase 4: Specs in spec language, content in ALL product languages
|
||||
- Phase 5: Design System docs in spec language, examples in all product languages
|
||||
- Phase 6: PRD in spec language
|
||||
|
||||
### ✅ Grouped for Coherence
|
||||
|
||||
**Each text group reads naturally in each language:**
|
||||
|
||||
```markdown
|
||||
### Hero Object
|
||||
|
||||
#### Headline + Body + CTA
|
||||
|
||||
EN reads: "Every walk. Never miss a walk. Get Started"
|
||||
SE reads: "Varje promenad. Missa aldrig. Kom Igång"
|
||||
```
|
||||
|
||||
Each language complete and coherent!
|
||||
|
||||
---
|
||||
|
||||
## Example: Adding Norwegian Mid-Project
|
||||
|
||||
**Original config:**
|
||||
```yaml
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
```
|
||||
|
||||
**User needs Norwegian:**
|
||||
|
||||
1. **Update config:**
|
||||
```yaml
|
||||
product_languages:
|
||||
- EN
|
||||
- SE
|
||||
- NO # Added
|
||||
```
|
||||
|
||||
2. **Add to existing specs:**
|
||||
```markdown
|
||||
#### Primary Headline
|
||||
- **Content**:
|
||||
- EN: "Every walk. on time."
|
||||
- SE: "Varje promenad. i tid."
|
||||
- NO: "Hver tur. i tide." ← Add to all text objects
|
||||
```
|
||||
|
||||
3. **Future text objects automatically include NO**
|
||||
|
||||
Agents read updated config and request 3 languages going forward.
|
||||
|
||||
---
|
||||
|
||||
**Language configuration ensures complete, production-ready translations from the very beginning!** 🌍✨
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,89 +0,0 @@
|
|||
# WDS Workflow Status Template
|
||||
# Tracks progress through WDS design methodology
|
||||
|
||||
# STATUS DEFINITIONS:
|
||||
# ==================
|
||||
# Initial Status (before completion):
|
||||
# - required: Must be completed to progress
|
||||
# - optional: Can be completed but not required
|
||||
# - conditional: Required only if certain conditions met
|
||||
# - skipped: Phase not included for this project type
|
||||
#
|
||||
# Completion Status:
|
||||
# - {file-path}: File created/found (e.g., "docs/A-Product-Brief/product-brief.md")
|
||||
# - complete: Phase finished
|
||||
# - in-progress: Currently working on this phase
|
||||
|
||||
# Project information
|
||||
generated: "{{generated}}"
|
||||
project: "{{project_name}}"
|
||||
project_type: "{{project_type}}"
|
||||
workflow_path: "{{workflow_path_file}}"
|
||||
|
||||
# Configuration
|
||||
config:
|
||||
folder_prefix: "{{folder_prefix}}" # letters or numbers
|
||||
folder_case: "{{folder_case}}" # title or lowercase
|
||||
brief_level: "{{brief_level}}" # simplified or complete
|
||||
include_design_system: {{include_design_system}}
|
||||
component_library: "{{component_library}}"
|
||||
specification_language: "{{specification_language}}" # Language for writing specs (EN, SE, etc.)
|
||||
product_languages: {{product_languages}} # Array of languages product supports
|
||||
|
||||
# Folder mapping (generated based on config)
|
||||
folders:
|
||||
product_brief: "{{folder_product_brief}}"
|
||||
trigger_map: "{{folder_trigger_map}}"
|
||||
platform_requirements: "{{folder_platform_requirements}}"
|
||||
scenarios: "{{folder_scenarios}}"
|
||||
design_system: "{{folder_design_system}}"
|
||||
prd_finalization: "{{folder_prd_finalization}}"
|
||||
|
||||
# Workflow status tracking
|
||||
workflow_status: "{{workflow_items}}"
|
||||
|
||||
# Example structure when populated:
|
||||
# workflow_status:
|
||||
# phase_1_project_brief:
|
||||
# status: required
|
||||
# agent: saga-analyst
|
||||
# folder: A-Product-Brief/
|
||||
# brief_level: complete # or simplified
|
||||
# artifacts:
|
||||
# - project-brief.md
|
||||
# phase_2_trigger_mapping:
|
||||
# status: required
|
||||
# agent: saga-analyst
|
||||
# folder: B-Trigger-Map/
|
||||
# artifacts:
|
||||
# - trigger-map.md
|
||||
# - personas/
|
||||
# - feature-impact-analysis.md
|
||||
# phase_3_prd_platform:
|
||||
# status: required
|
||||
# agent: freyja-pm
|
||||
# folder: C-Platform-Requirements/
|
||||
# artifacts:
|
||||
# - platform-architecture.md
|
||||
# - data-model.md
|
||||
# - proofs-of-concept/
|
||||
# phase_4_ux_design:
|
||||
# status: required
|
||||
# agent: baldr-ux
|
||||
# folder: C-Scenarios/
|
||||
# artifacts: [] # Grows as scenarios are created
|
||||
# phase_5_design_system:
|
||||
# status: conditional # or skipped
|
||||
# agent: baldr-ux
|
||||
# folder: D-Design-System/
|
||||
# artifacts:
|
||||
# - component-showcase.html
|
||||
# - design-tokens.md
|
||||
# phase_6_prd_finalization:
|
||||
# status: required
|
||||
# agent: freyja-pm
|
||||
# folder: E-PRD-Finalization/
|
||||
# artifacts:
|
||||
# - complete-prd.md
|
||||
# - development-roadmap.md
|
||||
|
||||
|
|
@ -1,265 +0,0 @@
|
|||
# Complete Project Brief - Instructions
|
||||
|
||||
<critical>Communicate in {communication_language} with {user_name}</critical>
|
||||
<critical>You are Saga the Analyst - curious, insightful, strategic thinker</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
<step n="1" goal="Welcome and set expectations">
|
||||
<output>Hi {user_name}! I'm Saga, and I'll guide you through creating a **Complete Project Brief**.
|
||||
|
||||
This is our strategic foundation - we'll explore:
|
||||
- Vision & positioning
|
||||
- Target users (ICP)
|
||||
- Success criteria
|
||||
- Competitive landscape
|
||||
- Constraints & context
|
||||
|
||||
Set aside about 30-60 minutes. This investment pays off throughout the project.
|
||||
|
||||
Ready to begin? 🎯</output>
|
||||
|
||||
<ask>Before we start - is there any existing documentation, research, or context I should know about?</ask>
|
||||
|
||||
<action>If user shares docs, read and incorporate insights</action>
|
||||
</step>
|
||||
|
||||
<step n="2" goal="Capture the vision">
|
||||
<output>**Let's start with the big picture.**</output>
|
||||
|
||||
<ask>**What's your vision for this product?**
|
||||
|
||||
If this project succeeds beyond your wildest dreams, what does that look like? Don't worry about being realistic yet - dream big.</ask>
|
||||
|
||||
<action>Listen for:
|
||||
- Aspirational outcomes
|
||||
- Impact on users
|
||||
- Market position
|
||||
- Emotional drivers
|
||||
</action>
|
||||
|
||||
<action>Reflect back and help crystallize into a clear vision statement</action>
|
||||
|
||||
<template-output>vision</template-output>
|
||||
</step>
|
||||
|
||||
<step n="3" goal="Define positioning">
|
||||
<output>**Now let's get specific about positioning.**</output>
|
||||
|
||||
<ask>**Who is this for, and how is it different?**
|
||||
|
||||
Complete this statement:
|
||||
|
||||
*For [target customer] who [need/opportunity], [product name] is a [category] that [key benefit]. Unlike [alternatives], we [differentiator].*</ask>
|
||||
|
||||
<action>If user struggles, break it down:
|
||||
1. Who's the target customer?
|
||||
2. What's their need or opportunity?
|
||||
3. What category does this fit?
|
||||
4. What's the key benefit?
|
||||
5. What makes it different from alternatives?
|
||||
</action>
|
||||
|
||||
<action>Help craft a clear positioning statement</action>
|
||||
|
||||
<template-output>positioning_statement</template-output>
|
||||
</step>
|
||||
|
||||
<step n="4" goal="Determine business model">
|
||||
<ask>**Is this product B2B, B2C, or both?**
|
||||
|
||||
1. **B2B** - Businesses buy/use the product
|
||||
2. **B2C** - Individual consumers buy/use the product
|
||||
3. **Both** - Mixed model (e.g., freemium with enterprise tier)
|
||||
|
||||
Choice [1/2/3]:</ask>
|
||||
|
||||
<action>Store business_model (b2b/b2c/both)</action>
|
||||
<template-output>business_model</template-output>
|
||||
</step>
|
||||
|
||||
<step n="5" goal="Identify business customers (B2B)">
|
||||
<check if="business_model in [b2b, both]">
|
||||
<output>**Let's define your Ideal Business Customer.**</output>
|
||||
|
||||
<ask>**Describe your ideal business customer:**
|
||||
|
||||
- Company size (employees, revenue range)
|
||||
- Industry or vertical
|
||||
- Company stage (startup, growth, enterprise)
|
||||
- Decision-making structure
|
||||
- Budget authority
|
||||
- Current tech stack or processes
|
||||
- Why would they buy from you?</ask>
|
||||
|
||||
<action>Build profile of ideal business customer</action>
|
||||
|
||||
<ask>**Who's the buyer vs. the user?**
|
||||
|
||||
In B2B, the person who buys is often different from the person who uses.
|
||||
|
||||
- **Buyer:** Who signs the contract/approves purchase?
|
||||
- **Champion:** Who advocates internally?
|
||||
- **User:** Who uses it day-to-day?</ask>
|
||||
|
||||
<action>Note the buying roles</action>
|
||||
|
||||
<template-output>business_customer_profile</template-output>
|
||||
<template-output>buying_roles</template-output>
|
||||
</check>
|
||||
</step>
|
||||
|
||||
<step n="6" goal="Identify target users (ICP)">
|
||||
<check if="business_model == b2c">
|
||||
<output>**Let's define your Ideal Customer Profile.**</output>
|
||||
</check>
|
||||
|
||||
<check if="business_model in [b2b, both]">
|
||||
<output>**Now let's define the users within those businesses.**</output>
|
||||
</check>
|
||||
|
||||
<ask>**Describe your ideal user in detail.**
|
||||
|
||||
- Who are they? (role, demographics, situation)
|
||||
- What's their day like?
|
||||
- What frustrates them?
|
||||
- What are they trying to achieve?
|
||||
- How do they currently solve this problem?</ask>
|
||||
|
||||
<action>Build a rich picture of the primary user</action>
|
||||
|
||||
<ask>**Are there secondary users or stakeholders?**
|
||||
|
||||
Others who interact with the product but aren't the primary user?</ask>
|
||||
|
||||
<action>Note secondary users if applicable</action>
|
||||
|
||||
<template-output>ideal_user_profile</template-output>
|
||||
<template-output>secondary_users</template-output>
|
||||
</step>
|
||||
|
||||
<step n="7" goal="Define success criteria">
|
||||
<output>**How will we know this project succeeded?**</output>
|
||||
|
||||
<ask>**What metrics or outcomes define success?**
|
||||
|
||||
Think about:
|
||||
- User behavior (adoption, engagement, retention)
|
||||
- Business outcomes (revenue, conversion, efficiency)
|
||||
- Experience quality (satisfaction, NPS, task completion)
|
||||
- Timeline (when do you need to see results?)</ask>
|
||||
|
||||
<action>Help make criteria SMART:
|
||||
- Specific
|
||||
- Measurable
|
||||
- Achievable
|
||||
- Relevant
|
||||
- Time-bound
|
||||
</action>
|
||||
|
||||
<template-output>success_criteria</template-output>
|
||||
</step>
|
||||
|
||||
<step n="8" goal="Analyze competitive landscape">
|
||||
<output>**Let's understand the alternatives.**</output>
|
||||
|
||||
<ask>**What alternatives do your users have today?**
|
||||
|
||||
This could be:
|
||||
- Direct competitors
|
||||
- Different approaches to the same problem
|
||||
- Manual/analog solutions
|
||||
- Doing nothing</ask>
|
||||
|
||||
<action>For each alternative, explore:
|
||||
- What do they do well?
|
||||
- Where do they fall short?
|
||||
- Why might users choose them over you?
|
||||
</action>
|
||||
|
||||
<ask>**What's your unfair advantage?**
|
||||
|
||||
What do you have that competitors can't easily copy?</ask>
|
||||
|
||||
<template-output>competitive_landscape</template-output>
|
||||
<template-output>unfair_advantage</template-output>
|
||||
</step>
|
||||
|
||||
<step n="9" goal="Capture constraints and context">
|
||||
<output>**Let's ground this in reality.**</output>
|
||||
|
||||
<ask>**What constraints should shape our design?**
|
||||
|
||||
- Timeline/deadlines
|
||||
- Budget/resources
|
||||
- Technical requirements or limitations
|
||||
- Brand guidelines
|
||||
- Regulatory/compliance needs
|
||||
- Integration requirements</ask>
|
||||
|
||||
<action>Note each constraint and its impact on design decisions</action>
|
||||
|
||||
<ask>**Any other context that's important?**
|
||||
|
||||
Company stage, team capabilities, market conditions, past attempts?</ask>
|
||||
|
||||
<template-output>constraints</template-output>
|
||||
<template-output>additional_context</template-output>
|
||||
</step>
|
||||
|
||||
<step n="10" goal="Synthesize and create brief">
|
||||
<output>**Excellent work, {user_name}!** Here's what we've captured:
|
||||
|
||||
---
|
||||
|
||||
**Vision**
|
||||
{{vision}}
|
||||
|
||||
**Positioning**
|
||||
{{positioning_statement}}
|
||||
|
||||
**Business Model:** {{business_model}}
|
||||
|
||||
{{#if business_model in [b2b, both]}}
|
||||
**Business Customer**
|
||||
{{business_customer_profile}}
|
||||
{{/if}}
|
||||
|
||||
**Target Users**
|
||||
{{ideal_user_profile}}
|
||||
|
||||
**Success Criteria**
|
||||
{{success_criteria}}
|
||||
|
||||
**Competitive Landscape**
|
||||
{{competitive_landscape}}
|
||||
|
||||
**Unfair Advantage**
|
||||
{{unfair_advantage}}
|
||||
|
||||
**Constraints**
|
||||
{{constraints}}
|
||||
|
||||
---
|
||||
</output>
|
||||
|
||||
<ask>Does this capture your strategic foundation? Anything to refine?</ask>
|
||||
|
||||
<action>Make requested adjustments</action>
|
||||
|
||||
<action>Generate project-brief.md from template</action>
|
||||
<action>Save to {output_folder}/A-Product-Brief/project-brief.md</action>
|
||||
|
||||
<output>✅ **Complete Project Brief saved!**
|
||||
|
||||
Location: `A-Product-Brief/project-brief.md`
|
||||
|
||||
This strategic foundation will guide all design decisions. You're ready for:
|
||||
- **Phase 2: Trigger Mapping** - Deep dive into user psychology
|
||||
- **Phase 3: PRD Platform** - Technical foundation
|
||||
|
||||
Your vision is clear. Let's build something great! 🚀</output>
|
||||
</step>
|
||||
|
||||
</workflow>
|
||||
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
# Project Brief: {{project_name}}
|
||||
|
||||
> Complete Strategic Foundation
|
||||
|
||||
**Created:** {{date}}
|
||||
**Author:** {{user_name}}
|
||||
**Brief Type:** Complete
|
||||
|
||||
---
|
||||
|
||||
## Vision
|
||||
|
||||
{{vision}}
|
||||
|
||||
---
|
||||
|
||||
## Positioning Statement
|
||||
|
||||
{{positioning_statement}}
|
||||
|
||||
**Breakdown:**
|
||||
- **Target Customer:** {{target_customer}}
|
||||
- **Need/Opportunity:** {{need_opportunity}}
|
||||
- **Category:** {{category}}
|
||||
- **Key Benefit:** {{key_benefit}}
|
||||
- **Differentiator:** {{differentiator}}
|
||||
|
||||
---
|
||||
|
||||
## Business Model
|
||||
|
||||
**Type:** {{business_model}}
|
||||
|
||||
{{#if business_model_b2b}}
|
||||
---
|
||||
|
||||
## Business Customer Profile (B2B)
|
||||
|
||||
{{business_customer_profile}}
|
||||
|
||||
### Buying Roles
|
||||
|
||||
| Role | Description |
|
||||
|------|-------------|
|
||||
| **Buyer** | {{buyer_role}} |
|
||||
| **Champion** | {{champion_role}} |
|
||||
| **User** | {{user_role}} |
|
||||
{{/if}}
|
||||
|
||||
---
|
||||
|
||||
## {{#if business_model_b2b}}User Profile (within Business){{else}}Ideal Customer Profile (ICP){{/if}}
|
||||
|
||||
{{ideal_user_profile}}
|
||||
|
||||
### Secondary Users
|
||||
|
||||
{{secondary_users}}
|
||||
|
||||
---
|
||||
|
||||
## Success Criteria
|
||||
|
||||
{{success_criteria}}
|
||||
|
||||
---
|
||||
|
||||
## Competitive Landscape
|
||||
|
||||
{{competitive_landscape}}
|
||||
|
||||
### Our Unfair Advantage
|
||||
|
||||
{{unfair_advantage}}
|
||||
|
||||
---
|
||||
|
||||
## Constraints
|
||||
|
||||
{{constraints}}
|
||||
|
||||
---
|
||||
|
||||
## Additional Context
|
||||
|
||||
{{additional_context}}
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
This complete brief provides strategic foundation for all design work:
|
||||
|
||||
- [ ] **Phase 2: Trigger Mapping** - Map user psychology to business goals
|
||||
- [ ] **Phase 3: PRD Platform** - Define technical foundation
|
||||
- [ ] **Phase 4: UX Design** - Begin sketching and specifications
|
||||
- [ ] **Phase 5: Design System** - If enabled, build components
|
||||
- [ ] **Phase 6: PRD Finalization** - Compile for development handoff
|
||||
|
||||
---
|
||||
|
||||
*Generated by Whiteport Design Studio*
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
# Step 1: Welcome and Set Expectations
|
||||
|
||||
## Purpose
|
||||
Welcome user and set expectations for the Project Brief workflow.
|
||||
|
||||
## Context for Agent
|
||||
You are Saga, a curious and insightful Business Analyst. Your role is to guide users through creating their strategic foundation. This workflow explores vision, positioning, target users, success criteria, competitive landscape, and constraints.
|
||||
|
||||
## Key Elements to Cover
|
||||
This workflow establishes the strategic foundation by exploring:
|
||||
- Vision & positioning (core strategic direction)
|
||||
- Target users (ICP) - who we're designing for
|
||||
- Success criteria (how we'll measure success)
|
||||
- Competitive landscape (what alternatives exist)
|
||||
- Constraints & context (real-world limitations)
|
||||
|
||||
## Instructions
|
||||
Welcome the user and explain that this is their strategic foundation. Set time expectations (30-60 minutes) and ask about any existing context that should be considered.
|
||||
|
||||
## Next Step
|
||||
When user confirms readiness, proceed to step-02-vision.md
|
||||
|
||||
## State Update
|
||||
Update frontmatter of output file:
|
||||
```yaml
|
||||
stepsCompleted: ["step-01-init.md"]
|
||||
```
|
||||
|
|
@ -1,37 +0,0 @@
|
|||
# Step 2: Capture Vision
|
||||
|
||||
## Purpose
|
||||
Help user articulate their vision for the product.
|
||||
|
||||
## Context for Agent
|
||||
You are exploring the big picture with the user. Your goal is to help them crystallize their aspirational vision into a clear statement that will guide all decisions.
|
||||
|
||||
## Key Elements
|
||||
This step captures the high-level, aspirational direction that will guide all decisions.
|
||||
|
||||
## Instructions
|
||||
|
||||
1. **Ask vision question**
|
||||
- "What's your vision for this product?"
|
||||
- "If this project succeeds beyond your wildest dreams, what does that look like? Don't worry about being realistic yet - dream big."
|
||||
|
||||
2. **Listen for key elements**
|
||||
- Aspirational outcomes
|
||||
- Impact on users
|
||||
- Market position
|
||||
- Emotional drivers
|
||||
|
||||
3. **Reflect and crystallize**
|
||||
- Reflect back what you heard
|
||||
- Help crystallize into a clear vision statement
|
||||
- Use collaborative language: "What I'm hearing is..." or "It sounds like..."
|
||||
|
||||
## Next Step
|
||||
After capturing vision, proceed to step-03-positioning.md
|
||||
|
||||
## State Update
|
||||
Update frontmatter of output file:
|
||||
```yaml
|
||||
stepsCompleted: ["step-01-init.md", "step-02-vision.md"]
|
||||
vision: "[captured vision statement]"
|
||||
```
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
# Step 3: Define Positioning
|
||||
|
||||
## Purpose
|
||||
Help user define clear positioning statement for their product.
|
||||
|
||||
## Context for Agent
|
||||
You are helping the user clarify how their product fits in the market and what makes it unique.
|
||||
|
||||
## Key Elements
|
||||
This step establishes market positioning and differentiation.
|
||||
|
||||
## Key Framework
|
||||
Positioning statement format: "For [target customer] who [need/opportunity], [product name] is a [category] that [key benefit]. Unlike [alternatives], we [differentiator]."
|
||||
|
||||
## Instructions
|
||||
Guide user through positioning framework. Ask them to complete the positioning statement, and break it down into components if they struggle. Help craft a clear statement that defines who the product is for and how it's different.
|
||||
|
||||
## Next Step
|
||||
After defining positioning, proceed to step-04-business-model.md
|
||||
|
||||
## State Update
|
||||
Update frontmatter of output file:
|
||||
```yaml
|
||||
stepsCompleted: ["step-01-init.md", "step-02-vision.md", "step-03-positioning.md"]
|
||||
positioning: "[captured positioning statement]"
|
||||
```
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
# Step 4: Determine Business Model
|
||||
|
||||
## Goal
|
||||
Help user identify whether their product is B2B, B2C, or both.
|
||||
|
||||
## Key Elements
|
||||
Business model determines who buys/uses the product and affects all strategic decisions.
|
||||
|
||||
## Instructions
|
||||
Ask user whether their product is B2B, B2C, or both. Present clear options and explain the implications of each choice.
|
||||
|
||||
## Next Step
|
||||
After determining business model, proceed to step-05-business-customers.md if B2B or Both, or step-06-target-users.md if B2C
|
||||
|
||||
## State Update
|
||||
Update frontmatter of output file:
|
||||
```yaml
|
||||
stepsCompleted: ["step-01-init.md", "step-02-vision.md", "step-03-positioning.md", "step-04-business-model.md"]
|
||||
business_model: "[b2b/b2c/both]"
|
||||
```
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue