@withmata/blueprints 0.3.5 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/.claude/skills/audit/SKILL.md +4 -4
  2. package/.claude/skills/blueprint-catalog/SKILL.md +17 -7
  3. package/.claude/skills/copywrite/SKILL.md +187 -0
  4. package/.claude/skills/copywrite-landing/SKILL.md +489 -0
  5. package/.claude/skills/design-system/SKILL.md +970 -0
  6. package/.claude/skills/new-project/SKILL.md +168 -112
  7. package/.claude/skills/scaffold-auth/SKILL.md +9 -9
  8. package/.claude/skills/scaffold-db/SKILL.md +14 -14
  9. package/.claude/skills/scaffold-env/SKILL.md +4 -4
  10. package/.claude/skills/scaffold-foundation/SKILL.md +15 -15
  11. package/.claude/skills/scaffold-tailwind/SKILL.md +17 -3
  12. package/.claude/skills/scaffold-ui/SKILL.md +155 -36
  13. package/ENGINEERING.md +2 -2
  14. package/blueprints/discovery/design-system/BLUEPRINT.md +1479 -0
  15. package/blueprints/discovery/marketing-copywriting/BLUEPRINT.md +664 -0
  16. package/blueprints/features/auth-better-auth/BLUEPRINT.md +20 -22
  17. package/blueprints/features/db-drizzle-postgres/BLUEPRINT.md +12 -12
  18. package/blueprints/features/db-drizzle-postgres/files/db/src/example-entity.ts +1 -1
  19. package/blueprints/features/db-drizzle-postgres/files/db/src/scripts/seed.ts +1 -1
  20. package/blueprints/features/env-t3/BLUEPRINT.md +1 -1
  21. package/blueprints/features/tailwind-v4/BLUEPRINT.md +9 -2
  22. package/blueprints/features/tailwind-v4/files/tailwind-config/shared-styles.css +80 -1
  23. package/blueprints/features/ui-shared-components/BLUEPRINT.md +411 -78
  24. package/blueprints/features/ui-shared-components/files/ui/components/ui/alert-dialog.tsx +192 -0
  25. package/blueprints/features/ui-shared-components/files/ui/components/ui/avatar.tsx +71 -0
  26. package/blueprints/features/ui-shared-components/files/ui/components/ui/badge.tsx +52 -0
  27. package/blueprints/features/ui-shared-components/files/ui/components/ui/breadcrumb.tsx +122 -0
  28. package/blueprints/features/ui-shared-components/files/ui/components/ui/button.tsx +56 -0
  29. package/blueprints/features/ui-shared-components/files/ui/components/ui/card-select.tsx +72 -0
  30. package/blueprints/features/ui-shared-components/files/ui/components/ui/card.tsx +100 -0
  31. package/blueprints/features/ui-shared-components/files/ui/components/ui/collapsible.tsx +34 -0
  32. package/blueprints/features/ui-shared-components/files/ui/components/ui/combobox.tsx +301 -0
  33. package/blueprints/features/ui-shared-components/files/ui/components/ui/dropdown-menu.tsx +264 -0
  34. package/blueprints/features/ui-shared-components/files/ui/components/ui/empty-state.tsx +43 -0
  35. package/blueprints/features/ui-shared-components/files/ui/components/ui/entity-select.tsx +110 -0
  36. package/blueprints/features/ui-shared-components/files/ui/components/ui/field.tsx +237 -0
  37. package/blueprints/features/ui-shared-components/files/ui/components/ui/form-field.tsx +217 -0
  38. package/blueprints/features/ui-shared-components/files/ui/components/ui/input-group.tsx +161 -0
  39. package/blueprints/features/ui-shared-components/files/ui/components/ui/input.tsx +20 -0
  40. package/blueprints/features/ui-shared-components/files/ui/components/ui/label.tsx +20 -0
  41. package/blueprints/features/ui-shared-components/files/ui/components/ui/org-switcher.tsx +114 -0
  42. package/blueprints/features/ui-shared-components/files/ui/components/ui/page-header.tsx +45 -0
  43. package/blueprints/features/ui-shared-components/files/ui/components/ui/pagination.tsx +52 -0
  44. package/blueprints/features/ui-shared-components/files/ui/components/ui/pill-select.tsx +151 -0
  45. package/blueprints/features/ui-shared-components/files/ui/components/ui/popover.tsx +41 -0
  46. package/blueprints/features/ui-shared-components/files/ui/components/ui/search-input.tsx +49 -0
  47. package/blueprints/features/ui-shared-components/files/ui/components/ui/select.tsx +205 -0
  48. package/blueprints/features/ui-shared-components/files/ui/components/ui/selected-entity-card.tsx +47 -0
  49. package/blueprints/features/ui-shared-components/files/ui/components/ui/separator.tsx +25 -0
  50. package/blueprints/features/ui-shared-components/files/ui/components/ui/sidebar.tsx +389 -0
  51. package/blueprints/features/ui-shared-components/files/ui/components/ui/status-filter.tsx +43 -0
  52. package/blueprints/features/ui-shared-components/files/ui/components/ui/tag-input.tsx +131 -0
  53. package/blueprints/features/ui-shared-components/files/ui/components/ui/textarea.tsx +18 -0
  54. package/blueprints/features/ui-shared-components/files/ui/components/ui/user-menu.tsx +149 -0
  55. package/blueprints/features/ui-shared-components/files/ui/components.json +11 -8
  56. package/blueprints/features/ui-shared-components/files/ui/package.json +20 -11
  57. package/blueprints/foundation/monorepo-turbo/BLUEPRINT.md +19 -20
  58. package/blueprints/foundation/monorepo-turbo/files/root/package.json +1 -1
  59. package/dist/index.js +27 -10
  60. package/package.json +1 -1
  61. package/blueprints/features/tailwind-v4/files/tailwind-config/package.json +0 -20
  62. package/blueprints/foundation/monorepo-turbo/files/root/pnpm-workspace.yaml +0 -5
@@ -12,19 +12,14 @@ Take a product from idea to running code. This command walks through the full li
12
12
  Load all available blueprints so you understand what's possible:
13
13
 
14
14
  ```
15
- ~/.withmata/blueprints/blueprints/discovery/product-discovery/BLUEPRINT.md
15
+ ~/.withmata/blueprints/blueprints/discovery/*/BLUEPRINT.md
16
16
  ~/.withmata/blueprints/blueprints/discovery/product-discovery/templates/*
17
17
  ~/.withmata/blueprints/blueprints/foundation/monorepo-turbo/BLUEPRINT.md
18
18
  ~/.withmata/blueprints/blueprints/foundation/monorepo-turbo/files/**/*
19
- ```
20
-
21
- Also scan for available feature blueprints:
22
-
23
- ```
24
19
  ~/.withmata/blueprints/blueprints/features/*/BLUEPRINT.md
25
20
  ```
26
21
 
27
- Only consider a feature blueprint "available" if its BLUEPRINT.md has `Status: Complete` (not a placeholder). If not found, run `npx @withmata/blueprints` to install.
22
+ Only consider a blueprint "available" if its BLUEPRINT.md has `Status: Complete`. If not found, run `npx @withmata/blueprints` to install.
28
23
 
29
24
  ## Step 2: Assess Current State
30
25
 
@@ -33,39 +28,107 @@ Before doing anything, understand where this project stands.
33
28
  **Check `.project-context.md`** in the target project root. This file tracks what has already been done:
34
29
 
35
30
  - **Has a `## Product Discovery` section?** Discovery is complete.
31
+ - **Has `marketing-copywriting` under `## Installed Blueprints`?** Marketing copy exists.
32
+ - **Has `design-system` under `## Installed Blueprints`?** Design system is defined.
36
33
  - **Has a `## Foundation` section?** Foundation is scaffolded.
37
- - **Has entries under `## Installed Blueprints`?** Some features are already installed.
34
+ - **Has other entries under `## Installed Blueprints`?** Features are installed.
38
35
 
39
36
  **Explore the target directory:**
40
37
 
41
- - Empty directory? Fresh start — begin from Stage 1.
42
- - Has `docs/product/`? Discovery was done (even without a context file).
38
+ - Empty directory? Fresh start.
39
+ - Has `docs/product/`? Discovery was done.
40
+ - Has `docs/pages/`? Marketing copy was written.
41
+ - Has `docs/design/`? Design system was defined.
43
42
  - Has `package.json`, `turbo.json`, workspace dirs? Foundation was done.
44
- - Has auth files, DB packages, etc.? Features were installed.
43
+ - Has auth files, DB packages, UI components, etc.? Features were installed.
44
+
45
+ ## Step 3: Choose a Pathway
46
+
47
+ Based on what you found, present the appropriate options. Lead with the product, not the tech.
48
+
49
+ ---
45
50
 
46
- ## Step 3: Determine Starting Point
51
+ ### If nothing exists (fresh start):
47
52
 
48
- Based on what you found, tell the user where things stand. Lead with the product, not the tech:
53
+ "This is a fresh start. What kind of project are you kicking off?
49
54
 
50
- - **Nothing exists**: "This is a blank slate. Let's start by figuring out what you're building and who it's for — then we'll set up the codebase to support it."
55
+ 1. **Build a product** (recommended)
56
+ Define what you're building, write the marketing, design the look, then set up the codebase and wire in features. The full journey from idea to running code.
57
+ *Stages: Discovery → Marketing Copy → Design System → Foundation → Features*
51
58
 
52
- - **Discovery done, nothing else**: "You've already defined [product name] — [problem statement in one line]. We've got a clear picture of the product. Let's turn that into something you can ship."
59
+ 2. **Quick start with design**
60
+ Skip product discovery — jump straight to defining the visual identity and setting up the codebase. Best when you already know what you're building but want it to look unique.
61
+ *Stages: Design System → Foundation → Features*
53
62
 
54
- - **Discovery + Foundation done**: "The product is defined and the codebase is ready. Based on what [primary archetype] needs, let's wire in the right capabilities."
63
+ 3. **Quick start**
64
+ Skip straight to code. Set up the codebase and start adding features immediately. Best for tinkering, prototyping, or experiments.
65
+ *Stages: Foundation → Features*
55
66
 
56
- - **Everything done**: "This project looks fully set up. Want to add more capabilities, or revisit any of the product decisions?"
67
+ You can always add product docs (`/discover`), marketing copy (`/copywrite`), or a design system (`/design-system`) later."
57
68
 
58
- If the user wants to start at a specific stage, let them. If they want to redo a completed stage, confirm before proceeding (it may be destructive).
69
+ - **Build a product** Stage 1 2 3 4 5 6
70
+ - **Quick start with design** → Stage 3 → 4 → 5 → 6
71
+ - **Quick start** → Stage 4 → 5 → 6
72
+
73
+ For quick start modes, create a minimal `.project-context.md`:
74
+ ```yaml
75
+ ## Foundation
76
+ quick_start: true
77
+ ```
59
78
 
60
79
  ---
61
80
 
62
- ## Stage 1: Discovery
81
+ ### If discovery exists but no code:
63
82
 
64
- > "Before we write any code, let's get clear on what we're building and why it matters."
83
+ "You've already defined [product name] [problem statement]. Here's what we can do next:
84
+
85
+ 1. **Continue the journey** — Write marketing copy, define visual identity, then set up the codebase.
86
+ *Next: Marketing Copy → Design System → Foundation → Features*
87
+
88
+ 2. **Jump to code** — Set up the codebase now, come back to marketing and design later.
89
+ *Next: Foundation → Features*"
90
+
91
+ If marketing copy also exists, adjust to show design system and/or foundation as next options. Always show what's already done and what's available.
92
+
93
+ ---
94
+
95
+ ### If codebase exists (foundation or single-repo detected):
96
+
97
+ "This project has a codebase already. Here's what's available:
98
+
99
+ **Discovery & Design** (produce docs, not code):
100
+ - `/discover` — Product discovery [done ✓ / not started]
101
+ - `/copywrite` — Marketing page copy [done ✓ / not started]
102
+ - `/design-system` — Visual identity & tokens [done ✓ / not started]
103
+
104
+ **Features** (wire into the codebase):
105
+ - `/scaffold-env` — Environment variables [installed ✓ / available]
106
+ - `/scaffold-tailwind` — Tailwind design system [installed ✓ / available]
107
+ - `/scaffold-ui` — UI component library [installed ✓ / available]
108
+ - `/scaffold-db` — Database [installed ✓ / available]
109
+ - `/scaffold-auth` — Authentication [installed ✓ / available]
110
+
111
+ What do you want to work on?"
112
+
113
+ This is the **existing project** pathway — no forced order, just a menu of what's available with status indicators.
114
+
115
+ ---
116
+
117
+ ### If everything is done:
118
+
119
+ "This project looks fully set up — [list what's installed]. Want to add more capabilities, revisit any decisions, or start building?"
120
+
121
+ ---
122
+
123
+ ## Stages
65
124
 
66
- This is the most important stage. Everything downstream the architecture, the features, the trade-offs flows from what we define here. Don't rush it.
125
+ Each stage is self-contained. The skill runs them in order for the full lifecycle, but any stage can be entered independently based on the pathway chosen.
67
126
 
68
- Follow the full discovery process from the product-discovery blueprint. This is a rigorous product conversation — challenge assumptions, research the market, and push until the product thesis is sharp. You'll work through:
127
+ ### Stage 1: Product Discovery
128
+
129
+ > "Before we write any code, let's get clear on what we're building and why it matters."
130
+
131
+ Follow the full discovery process from the product-discovery blueprint. This is a rigorous product conversation — challenge assumptions, research the market, push until the product thesis is sharp.
69
132
 
70
133
  1. **Initial Framing** — What are you building? Who is it for? Why does it need to exist?
71
134
  2. **Problem Deep Dive** — 5 Whys to get past symptoms to root cause
@@ -73,163 +136,156 @@ Follow the full discovery process from the product-discovery blueprint. This is
73
136
  4. **Solution Positioning** — Competitive landscape, differentiation, "why now?"
74
137
  5. **Synthesis** — Distill everything into a defensible product thesis
75
138
 
76
- Use the templates from the blueprint to generate:
77
-
139
+ Output:
78
140
  ```
79
141
  docs/product/
80
- ├── product-thesis.md # The 2-minute read — pillars, metrics, positioning
81
- ├── product-brief.md # Supporting research and detail
142
+ ├── product-thesis.md
143
+ ├── product-brief.md
82
144
  └── users/
83
- ├── archetype-[name].md # Vivid portraits of who you're building for
84
- └── research-summary.md # Evidence and sources
145
+ ├── archetype-[name].md
146
+ └── research-summary.md
85
147
  ```
86
148
 
87
149
  Create or update `.project-context.md` with the `## Product Discovery` section.
88
150
 
89
- ### Pause Point
151
+ **Pause:** "We've defined [product name] around [N] core pillars: [list them]. The primary user is [archetype]. Ready for the next stage, or want to stop here?"
90
152
 
91
- After discovery is complete, connect what was defined to what comes next:
153
+ ### Stage 2: Marketing Copy (Optional)
92
154
 
93
- "We've defined [product name] around [N] core pillars: [list them]. The primary user is [archetype] — [one-line description of their world]. This gives us a clear foundation to build on. Want to set up the codebase now, or let this sit and come back to it?"
155
+ > "Now that we know what we're building, let's write the words that sell it."
94
156
 
95
- If stopping: "Whenever you're ready, run `/scaffold-foundation` to set up the project, or `/new-project` again to pick up where we left off."
157
+ Read the marketing-copywriting BLUEPRINT.md at `~/.withmata/blueprints/blueprints/discovery/marketing-copywriting/BLUEPRINT.md`.
96
158
 
97
- ---
159
+ The `/copywrite-landing` skill is best for the first page (usually a homepage or main landing page). After that, offer additional pages via `/copywrite` (pricing, about, features, etc.).
98
160
 
99
- ## Stage 1.5: Project Type
161
+ Output: `docs/pages/` with structured copy files.
100
162
 
101
- After discovery is complete, determine the project type:
163
+ **Pause:** "We've got copy for [list pages]. Ready to define the visual identity, or move to code?"
102
164
 
103
- "Now let's set up the codebase. Are you building a:
104
- 1. **Monorepo** — multiple packages, shared config, Turborepo (recommended for larger products with separate frontend/backend/packages)
105
- 2. **Single-repo** — one application, everything in one package.json (simpler for smaller products or standalone apps)"
165
+ ### Stage 3: Design System (Optional)
106
166
 
107
- Record the choice in `.project-context.md` under `## Foundation`:
108
- ```yaml
109
- project_type: monorepo # or single-repo
110
- ```
167
+ > "Let's make your product look like YOUR product, not a template."
111
168
 
112
- - If **monorepo**: proceed to Stage 2 (Foundation)
113
- - If **single-repo**: skip Stage 2 entirely, proceed to Stage 3 (Features). Note in context: "Foundation skipped — single-repo project."
169
+ Read the design-system BLUEPRINT.md at `~/.withmata/blueprints/blueprints/discovery/design-system/BLUEPRINT.md`.
114
170
 
115
- ---
116
-
117
- ## Stage 2: Foundation
171
+ Walk through: creative direction → colors → typography → spacing → layout → components → shadows → animation → generate outputs.
118
172
 
119
- > "The product is defined. Let's build the structure to support it."
173
+ Output: `docs/design/design-system.md` + `docs/design/shared-styles.css`
120
174
 
121
- > **Note:** Skip this stage for single-repo projects proceed directly to Stage 3.
175
+ **Pause:** "Your visual identity is defined[creative north star]. Custom tokens are ready. When we scaffold Tailwind, these will be used automatically."
122
176
 
123
- Read the discovery context from `.project-context.md` to inform technical decisions:
177
+ ### Stage 4: Project Type
124
178
 
125
- - Derive the npm scope from the product name (e.g., "Acme Dashboard" -> `@acme`)
126
- - Use the product pillars and archetype needs to inform any trade-offs
127
- - Apply technical constraints from discovery if any were noted
179
+ "Are you building a:
180
+ 1. **Monorepo** multiple packages, shared config, Turborepo (recommended for larger products)
181
+ 2. **Single-repo** one application, one package.json (simpler for standalone apps)"
128
182
 
129
- Follow the foundation blueprint process. Only three questions — skip any already answered by project context:
130
-
131
- 1. **npm scope** — defaults from product name
132
- 2. **Project name** — human-readable, for metadata and page titles
133
- 3. **Node.js version** — defaults to `>=22`
183
+ Record in `.project-context.md` under `## Foundation`:
184
+ ```yaml
185
+ project_type: monorepo # or single-repo
186
+ ```
134
187
 
135
- Scaffold the monorepo skeleton: root configs, TypeScript config package, Tailwind config package, Next.js app shell, and empty workspace directories for future blueprints.
188
+ - **Monorepo** proceed to Stage 5
189
+ - **Single-repo** → skip Stage 5, proceed to Stage 6. Note: "Foundation skipped — single-repo project."
136
190
 
137
- After scaffolding:
191
+ ### Stage 5: Foundation (Monorepo Only)
138
192
 
139
- 1. Run `pnpm install` to verify the workspace is valid
140
- 2. Briefly verify the dev server boots: `pnpm dev`
141
- 3. Append the `## Foundation` section to `.project-context.md`
193
+ > "Let's build the structure to support the product."
142
194
 
143
- ### Pause Point
195
+ Skip for single-repo projects.
144
196
 
145
- After foundation is complete, bridge to features by referencing the product:
197
+ Read discovery context to inform technical decisions:
198
+ - Derive npm scope from product name
199
+ - Apply technical constraints from discovery
146
200
 
147
- "The codebase is ready [scope] monorepo with Turborepo, Biome, and a Next.js app shell. Now let's think about what [product name] needs to actually work. Want to look at what's available, or stop here for now?"
201
+ Three questions (skip any already answered):
202
+ 1. **npm scope** — defaults from product name
203
+ 2. **Project name** — human-readable
204
+ 3. **Node.js version** — defaults to `>=22`
148
205
 
149
- If stopping: "You can add capabilities anytime. Run `/scaffold-auth` for authentication, or `/new-project` to see all available blueprints."
206
+ Scaffold the monorepo skeleton. After scaffolding:
207
+ 1. Run `bun install`
208
+ 2. Verify `bun dev` boots
209
+ 3. Append `## Foundation` to `.project-context.md`
150
210
 
151
- ---
211
+ **Pause:** "The codebase is ready. Want to add features now?"
152
212
 
153
- ## Stage 3: Features
213
+ ### Stage 6: Features
154
214
 
155
- > "Let's wire in what [product name] needs to deliver on its core pillars."
215
+ > "Let's wire in what the product needs."
156
216
 
157
- If discovery was completed, reference the product pillars and archetype needs when presenting features. Connect each blueprint back to the product — don't just list technical capabilities.
217
+ If discovery was completed, reference product pillars when presenting features. If not, present a straightforward capability list.
158
218
 
159
- List the available feature blueprints. Read each `BLUEPRINT.md` under `blueprints/features/*/` and show only those with `Status: Complete`.
219
+ Read each `BLUEPRINT.md` under `blueprints/features/*/` and show only those with `Status: Complete`.
160
220
 
161
- **Present features in dependency order** — blueprints that others depend on should be listed first. Check each blueprint's `## Blueprint Dependencies` section. For example, db should be listed before auth (since auth requires db).
221
+ **Present in dependency order** (db before auth, tailwind before UI):
162
222
 
163
- For each available blueprint, show:
164
- - **Name** — human-readable
165
- - **What it enables for the product** — tie it to a pillar or user need when possible
166
- - **Dependencies** — note if it requires another blueprint (e.g., "requires Database")
167
- - **Command** — the slash command to run it individually
223
+ ```
224
+ Available features:
168
225
 
169
- Example:
226
+ 1. Environment Variables — /scaffold-env
227
+ Type-safe validated env vars. Standalone.
170
228
 
171
- ```
172
- Based on what [product name] needs:
229
+ 2. Tailwind Design System — /scaffold-tailwind
230
+ Full token system. Auto-detects custom design if /design-system was run.
173
231
 
174
- 1. Authentication (Better Auth + Drizzle) — /scaffold-auth
175
- User accounts, login flows, route protection. Required for [relevant pillar].
176
- If org plugin: team/workspace management for [archetype need].
177
- ```
232
+ 3. UI Component Library — /scaffold-ui
233
+ 31 base components. Auto-installs Tailwind first.
178
234
 
179
- Ask: "Which of these does [product name] need? We'll set them up one at a time."
235
+ 4. Database /scaffold-db
236
+ Drizzle ORM + PostgreSQL with schema groups.
180
237
 
181
- If no discovery context exists, fall back to a straightforward capability list without the product framing.
238
+ 5. Authentication /scaffold-auth
239
+ Better Auth + organizations. Requires Database.
182
240
 
183
- ### For Each Selected Feature
241
+ Which of these does the project need?
242
+ ```
184
243
 
185
- 1. Read the feature's BLUEPRINT.md and all its files
186
- 2. Read `.project-context.md` to understand current state
187
- 3. Follow the blueprint's scaffolding process (ask its configuration questions, adapt files, etc.)
188
- 4. Append the feature's entry to `## Installed Blueprints` in .project-context.md
244
+ For each selected feature:
245
+ 1. Read the BLUEPRINT.md and all template files
246
+ 2. Read `.project-context.md` for current state
247
+ 3. Follow the scaffold process
248
+ 4. Append to `## Installed Blueprints`
189
249
 
190
- After each feature is installed, ask: "[Feature] is wired in. Want to add another, or is [product name] ready to start building on?"
250
+ After each: "[Feature] is wired in. Want to add another?"
191
251
 
192
252
  ---
193
253
 
194
- ## Step 7: Final Summary
254
+ ## Final Summary
195
255
 
196
- Once the user is done (whether after one stage or all three), provide a summary that connects the product to the technical foundation:
256
+ Once the user is done (whether after one stage or all six):
197
257
 
198
258
  ### What We Built
199
-
200
- - **The product** (if discovery ran) — what it is, who it's for, the core pillars it delivers on
201
- - **The codebase** (if foundation ran) — how the project structure supports the product
202
- - **The capabilities** (if features ran) — what's wired in and how it maps to product needs
259
+ - **The product** (if discovery ran) — what it is, who it's for, the core pillars
260
+ - **The marketing** (if copy ran) — what pages were created
261
+ - **The visual identity** (if design ran) — the creative north star, key design decisions
262
+ - **The codebase** (if foundation ran) — how the structure supports the product
263
+ - **The capabilities** (if features ran) — what's wired in
203
264
 
204
265
  ### Getting Started
205
-
206
266
  ```
207
- pnpm dev # Start the development server
267
+ bun dev # Start the development server
208
268
  ```
209
269
 
210
270
  ### Environment Variables to Set
211
-
212
271
  List any env vars that need values (aggregated from all stages).
213
272
 
214
273
  ### Manual Steps Remaining
215
-
216
- List anything that can't be automated (aggregated from all stages).
274
+ List anything that can't be automated.
217
275
 
218
276
  ### What's Next
219
-
220
- Suggest next steps in terms of product progress, not just technical tasks. Reference specific commands:
221
-
222
- - "The product thesis identified [pillar] as a core pillar — `/scaffold-auth` wires in the user accounts and access control to support that."
277
+ Suggest next steps in terms of product progress:
223
278
  - "Run `/audit` to see all available blueprints and what would benefit your project."
224
279
  - "Start building the core product experience — the [archetype]'s primary workflow."
280
+ - Reference specific commands for capabilities not yet installed.
225
281
 
226
282
  ---
227
283
 
228
284
  ## Important Notes
229
285
 
230
- - **Resumable** — this command always checks `.project-context.md` before starting. Run it again anytime to pick up where you left off, or use the individual stage commands (`/discover`, `/scaffold-foundation`, `/scaffold-auth`).
286
+ - **Resumable** — this command always checks `.project-context.md` before starting. Run it again anytime to pick up where you left off, or use individual commands (`/discover`, `/copywrite`, `/design-system`, `/scaffold-foundation`, `/scaffold-auth`).
231
287
  - **Non-destructive** — never overwrite existing files without asking. If a stage was already completed, confirm before redoing it.
232
288
  - **Product-first** — every technical decision should trace back to the product definition. When in doubt, reference the pillars, the archetype, and the problem statement.
233
- - **Conversational** — this is a guided conversation, not a script. Adapt to the user's pace. If they want to skip ahead, let them. If they want to dig deeper into a stage, follow their lead.
234
- - **Project context is the source of truth** — every stage reads it, every stage appends to it. This is how stages communicate with each other across sessions.
235
- - **Maintenance rules accumulate** — each stage injects its maintenance rules into the project's rules file(s). These rules tell the AI coding tool what actions to take after certain types of changes. They accumulate as more blueprints are installed — the monorepo rules from foundation, plus auth rules, plus database rules, etc. The tool reads these at the start of every session.
289
+ - **Conversational** — this is a guided conversation, not a script. Adapt to the user's pace. If they want to skip ahead, let them. If they want to dig deeper, follow their lead.
290
+ - **Project context is the source of truth** — every stage reads it, every stage appends to it. This is how stages communicate across sessions.
291
+ - **Any stage can be run independently** the individual skills (`/discover`, `/copywrite`, `/design-system`, `/scaffold-tailwind`, etc.) work standalone. `/new-project` orchestrates them, but they don't depend on it.
@@ -104,7 +104,7 @@ Before making any changes, explore the target project to understand:
104
104
 
105
105
  Check `.project-context.md` for `project_type`. If not present, detect:
106
106
 
107
- - **Monorepo indicators**: `pnpm-workspace.yaml`, `turbo.json`, `nx.json`, `lerna.json`, or `"workspaces"` in root `package.json`
107
+ - **Monorepo indicators**: `turbo.json`, `"workspaces"` in root `package.json`, `pnpm-workspace.yaml`, `nx.json`, or `lerna.json`
108
108
  - **Single-repo indicators**: Single `package.json` at root, `src/` directory, no workspace config
109
109
 
110
110
  Confirm with user: "This looks like a [monorepo|single-repo] project. Is that right?"
@@ -235,7 +235,7 @@ Based on the project structure, project context, and user answers, adapt the blu
235
235
  - Add scripts directly to root `package.json`:
236
236
  - `auth:generate` -> `npx @better-auth/cli@latest generate --config ./src/lib/auth/index.ts --output ./src/db/auth/schema.ts --yes`
237
237
  - `auth:migrate` -> `drizzle-kit generate --config ./drizzle/auth/drizzle.config.ts && drizzle-kit migrate --config ./drizzle/auth/drizzle.config.ts`
238
- - `auth:setup` -> `pnpm auth:generate && pnpm auth:migrate`
238
+ - `auth:setup` -> `bun auth:generate && bun auth:migrate`
239
239
  - No Turbo tasks needed
240
240
 
241
241
  ## Step 5: Update Project Context
@@ -286,9 +286,9 @@ Then append:
286
286
 
287
287
  ```markdown
288
288
  ### auth-better-auth maintenance
289
- - After modifying Better Auth server config, plugins, or providers: run `pnpm auth:generate && pnpm auth:migrate`
290
- - After updating `better-auth` package: run `pnpm auth:generate`, check for schema changes, migrate if needed
291
- - After adding/changing env vars: update all `.env` files and verify `pnpm dev` starts clean
289
+ - After modifying Better Auth server config, plugins, or providers: run `bun auth:generate && bun auth:migrate`
290
+ - After updating `better-auth` package: run `bun auth:generate`, check for schema changes, migrate if needed
291
+ - After adding/changing env vars: update all `.env` files and verify `bun dev` starts clean
292
292
  - After changing `BETTER_AUTH_URL` or `FRONTEND_DOMAIN`: verify CORS config and OAuth callback URLs
293
293
  - After any auth changes: verify `{BETTER_AUTH_URL}/api/auth/ok` responds
294
294
  - Never edit the auto-generated auth schema directly — modify the Better Auth config and regenerate
@@ -306,13 +306,13 @@ List every package that needs to be installed, grouped by workspace:
306
306
 
307
307
  ```
308
308
  # Server (apis/server or wherever auth lives)
309
- pnpm add better-auth drizzle-orm pg resend @t3-oss/env-core zod dotenv
309
+ bun add better-auth drizzle-orm pg resend @t3-oss/env-core zod dotenv
310
310
 
311
311
  # Client (apps/web)
312
- pnpm add better-auth swr react-hook-form @hookform/resolvers zod @t3-oss/env-nextjs
312
+ bun add better-auth swr react-hook-form @hookform/resolvers zod @t3-oss/env-nextjs
313
313
 
314
314
  # DB package (packages/db) — dev deps
315
- pnpm add -D drizzle-kit pg
315
+ bun add -d drizzle-kit pg
316
316
  ```
317
317
 
318
318
  Adjust based on what's already installed in the project.
@@ -343,7 +343,7 @@ List anything that can't be automated:
343
343
  1. **Create a PostgreSQL database** for auth (if using separate auth DB)
344
344
  2. **Set up Google OAuth** — create OAuth 2.0 credentials in Google Cloud Console, add redirect URI
345
345
  3. **Set up Resend** — create an account, verify your domain, get API key
346
- 4. **Run auth setup** — `pnpm auth:setup` (generates schema + runs migrations)
346
+ 4. **Run auth setup** — `bun auth:setup` (generates schema + runs migrations)
347
347
  5. **Build auth UI pages** — follow the Auth Flows section in BLUEPRINT.md to create the pages matching your design system
348
348
  6. **Test the auth flow** — sign up, verify email, sign in, create org (if applicable)
349
349
 
@@ -78,7 +78,7 @@ Before making any changes, explore the target project to understand:
78
78
 
79
79
  Check `.project-context.md` for `project_type`. If not present, detect:
80
80
 
81
- - **Monorepo indicators**: `pnpm-workspace.yaml`, `turbo.json`, `nx.json`, `lerna.json`, or `"workspaces"` in root `package.json`
81
+ - **Monorepo indicators**: `turbo.json`, `"workspaces"` in root `package.json`, `pnpm-workspace.yaml`, `nx.json`, or `lerna.json`
82
82
  - **Single-repo indicators**: Single `package.json` at root, `src/` directory, no workspace config
83
83
 
84
84
  Confirm with user: "This looks like a [monorepo|single-repo] project. Is that right?"
@@ -93,7 +93,7 @@ Record the project type in `.project-context.md` if not already there (add `proj
93
93
  3. What npm scope is used? Check root or any workspace `package.json`.
94
94
  4. What is the shared TypeScript config package name? Check `config/typescript-config/` or similar.
95
95
  5. Does `turbo.json` exist? Are there any existing db-related tasks?
96
- 6. Does `pnpm-workspace.yaml` include `packages/*`?
96
+ 6. Does the root `package.json` `workspaces` field include `packages/*`? (Or does `pnpm-workspace.yaml` if using pnpm?)
97
97
 
98
98
  **If single-repo:**
99
99
  1. Does `src/db/` already exist? If so, what's in it?
@@ -102,7 +102,7 @@ Record the project type in `.project-context.md` if not already there (add `proj
102
102
  4. Is there an existing `.env` or `.env.local`?
103
103
 
104
104
  **Both:**
105
- - Package manager — pnpm, npm, yarn, or bun?
105
+ - Package manager — bun (default), pnpm, npm, or yarn?
106
106
 
107
107
  Skip exploration for anything already documented in `.project-context.md`.
108
108
 
@@ -183,7 +183,7 @@ If `packages/db/` already exists:
183
183
  - `db:migrate` -> `turbo run {{GROUP}}:migrate --filter={{SCOPE}}/db --no-cache`
184
184
  - `db:studio` -> `turbo run drizzle:studio:{{GROUP}} --filter={{SCOPE}}/db --no-cache`
185
185
  - `db:seed` -> `turbo run seed --filter={{SCOPE}}/db --no-cache`
186
- - Verify `pnpm-workspace.yaml` includes `packages/*`
186
+ - Verify root `package.json` `workspaces` field includes `packages/*` (or `pnpm-workspace.yaml` if using pnpm)
187
187
 
188
188
  **If single-repo:**
189
189
  - Add scripts directly to root `package.json` (direct drizzle-kit calls, no Turbo):
@@ -248,7 +248,7 @@ Then append:
248
248
  ```markdown
249
249
  ### db-drizzle-postgres maintenance
250
250
  - After creating a new schema file: add it to `drizzle/<group>/drizzle.config.ts` schema array AND the group's `index.ts` barrel export
251
- - After any schema change: run `pnpm <group>:generate && pnpm <group>:migrate`
251
+ - After any schema change: run `bun <group>:generate && bun <group>:migrate`
252
252
  - After adding a new schema group: create drizzle config, add package.json export, add scripts (see BLUEPRINT.md "Adding a New Schema Group")
253
253
  - After updating drizzle-orm/drizzle-kit: run generate and check migration diff for unexpected changes
254
254
  - Never use glob patterns in drizzle.config.ts schema — always list files explicitly, excluding index.ts
@@ -267,15 +267,15 @@ List every package that needs to be installed. Adjust based on project type and
267
267
  **If monorepo:**
268
268
  ```bash
269
269
  # In packages/db/
270
- pnpm add drizzle-orm dotenv
271
- pnpm add -D drizzle-kit pg @types/pg tsx typescript
270
+ bun add drizzle-orm dotenv
271
+ bun add -d drizzle-kit pg @types/pg tsx typescript
272
272
  ```
273
273
 
274
274
  **If single-repo:**
275
275
  ```bash
276
276
  # At project root
277
- pnpm add drizzle-orm dotenv
278
- pnpm add -D drizzle-kit pg @types/pg tsx
277
+ bun add drizzle-orm dotenv
278
+ bun add -d drizzle-kit pg @types/pg tsx
279
279
  ```
280
280
 
281
281
  ### Environment Variables
@@ -289,11 +289,11 @@ pnpm add -D drizzle-kit pg @types/pg tsx
289
289
 
290
290
  1. **Create a PostgreSQL database** — `createdb {{GROUP}}_db` (or use your database hosting provider)
291
291
  2. **Set DATABASE_URL** — update the `.env` file with your actual connection string
292
- 3. **Install dependencies** — `pnpm install` from the project root
293
- 4. **Generate initial migration** — `pnpm db:generate`
294
- 5. **Apply migration** — `pnpm db:migrate`
295
- 6. **Verify** — `pnpm db:studio` (should open Drizzle Studio showing your tables)
296
- 7. **(Optional) Run seed** — `pnpm db:seed` (inserts sample data)
292
+ 3. **Install dependencies** — `bun install` from the project root
293
+ 4. **Generate initial migration** — `bun db:generate`
294
+ 5. **Apply migration** — `bun db:migrate`
295
+ 6. **Verify** — `bun db:studio` (should open Drizzle Studio showing your tables)
296
+ 7. **(Optional) Run seed** — `bun db:seed` (inserts sample data)
297
297
 
298
298
  ### Files Created
299
299
 
@@ -78,7 +78,7 @@ Before making any changes, explore the target project to understand:
78
78
 
79
79
  Check `.project-context.md` for `project_type`. If not present, detect:
80
80
 
81
- - **Monorepo indicators**: `pnpm-workspace.yaml`, `turbo.json`, `nx.json`, `lerna.json`, or `"workspaces"` in root `package.json`
81
+ - **Monorepo indicators**: `turbo.json`, `"workspaces"` in root `package.json`, `pnpm-workspace.yaml`, `nx.json`, or `lerna.json`
82
82
  - **Single-repo indicators**: Single `package.json` at root, `src/` directory, no workspace config
83
83
 
84
84
  Confirm with user: "This looks like a [monorepo|single-repo] project. Is that right?"
@@ -226,12 +226,12 @@ After scaffolding, provide the user with a clear summary:
226
226
 
227
227
  **Next.js apps:**
228
228
  ```bash
229
- pnpm add @t3-oss/env-nextjs zod
229
+ bun add @t3-oss/env-nextjs zod
230
230
  ```
231
231
 
232
232
  **Backend apps:**
233
233
  ```bash
234
- pnpm add @t3-oss/env-core zod dotenv
234
+ bun add @t3-oss/env-core zod dotenv
235
235
  ```
236
236
 
237
237
  ### Files Created
@@ -255,7 +255,7 @@ import { env } from "./env.js";
255
255
 
256
256
  - Fill in `.env.local` with your actual values (use `.env.example` as reference)
257
257
  - As you add features, add their env vars to the schema files and `.env.example`
258
- - Run `pnpm dev` to verify env validation passes
258
+ - Run `bun dev` to verify env validation passes
259
259
 
260
260
  ## Important Notes
261
261