Skip to content

Commit 0488b8b

Browse files
committed
chore: polish registry documentation
Refresh the docs to reflect current recipes, readiness states, install order, conventions, and registry scale after the SaaS recipe expansion.
1 parent 78e232f commit 0488b8b

6 files changed

Lines changed: 82 additions & 15 deletions

File tree

README.md

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,10 @@ Current source registry coverage:
8282
<details>
8383
<summary>Current scale</summary>
8484

85-
- 200+ module manifests
85+
- 294 module manifests
8686
- 36 canonical categories
87-
- 9 preset bundles
87+
- 13 preset bundles
88+
- 9 architecture recipes
8889
- provider adapters for Vercel, Cloudflare, Clerk, Supabase, Neon, Upstash, Resend, PostHog, Sentry, Axiom, Unkey, Knock, Tinybird, Trigger.dev, Inngest, GitHub, and more
8990

9091
</details>
@@ -102,6 +103,9 @@ Current source registry coverage:
102103
| `vercel-native` | Vercel deployment, storage, workflows, edge config, and observability path |
103104
| `cloudflare-native` | Workers, D1, R2, KV, Queues, Workflows, Turnstile, and Cloudflare-native adapters |
104105
| `provider-adapters` | Concrete optional provider adapter examples |
106+
| `api-saas-starter` | API-first SaaS workflow with keys, usage, rate limits, billing, webhooks, docs, and observability |
107+
| `enterprise-saas` | Enterprise layer with SSO, SCIM, audit, access review, security, SLA, and support workflows |
108+
| `ai-saas-starter` | AI SaaS workflow with chat, model routing, prompts, evals, RAG, usage metering, and billing |
105109

106110
```bash
107111
pnpm registry:presets
@@ -158,6 +162,8 @@ registry/
158162
tests/checklist.md
159163
presets/
160164
<preset>.json
165+
recipes/
166+
<recipe>.json
161167
skills/
162168
<technology>/SKILL.md
163169
```
@@ -172,6 +178,8 @@ public/r/
172178
provider-adapters.json # installable aggregate preset block
173179
presets/
174180
next-saas.json # StackFoundry preset manifest for tooling/inspection
181+
recipes/
182+
api-saas-starter.json # recipe manifest with staged install order
175183
```
176184

177185
Generated installable items are `registry:block` payloads with:
@@ -256,16 +264,20 @@ See [`docs/repository.md`](./docs/repository.md) for ownership rules.
256264
- [Registry](./docs/registry.md)
257265
- [Modules](./docs/modules.md)
258266
- [Providers](./docs/providers.md)
267+
- [Recipes](./docs/recipes.md)
268+
- [Install order](./docs/install-order.md)
269+
- [Readiness](./docs/readiness.md)
270+
- [Conventions](./docs/conventions.md)
259271
- [Maintenance skills](./docs/maintenance.md)
260272
- [Repository map](./docs/repository.md)
261273
- [Registry compatibility](./docs/registry-compat.md)
262274

263275
## Where This Is Going
264276

265-
- More modules graduating from planned to installable source payloads
277+
- More stub modules graduating to ready installable source payloads
266278
- Better diff/update workflows for installed modules
267279
- More provider adapters without making providers base dependencies
268-
- More production smoke paths for presets
280+
- More production smoke paths for presets and recipes
269281
- Stronger docs around migration, removal, and maintenance ownership
270282

271283
## Status

docs/index.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,9 @@
1313

1414
## Start Here
1515

16-
1. Read the [Registry](./registry.md) docs.
16+
1. Read the [Registry](./registry.md), [Readiness](./readiness.md), and [Conventions](./conventions.md) docs.
1717
2. Inspect the [Recipes](./recipes.md) and [Install order](./install-order.md) docs.
18-
3. Inspect the first modules in `registry/modules`.
19-
4. Run `pnpm registry:doctor`.
20-
5. Try `pnpm stackfoundry add api-keys --target /tmp/app --dry-run`.
18+
3. Run `pnpm stackfoundry recipes` and `pnpm stackfoundry recipe api-saas-starter`.
19+
4. Inspect the first modules in `registry/modules`.
20+
5. Run `pnpm registry:doctor`.
21+
6. Try `pnpm stackfoundry add api-keys --target /tmp/app --dry-run`.

docs/modules.md

Lines changed: 49 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# Modules
22

3-
Modules are the unit of value in StackFoundry.
3+
Modules are the unit of value in StackFoundry. Recipes are the workflow layer that explains how modules fit together.
44

55
The first installable production modules were:
66

77
- `drizzle-postgres`
88
- `api-keys`
99
- `stripe-billing`
1010

11-
The registry now includes core modules, provider adapter examples, and registry-compatible public blocks. Each module should be installable into an existing app as editable source code. Presets are only bundles of modules.
11+
The registry now includes ready source modules, stub roadmap modules, provider adapter examples, recipes, and registry-compatible public blocks. Each ready module should be installable into an existing app as editable source code. Presets are bundles of modules; recipes are opinionated architecture paths.
1212

1313
Use [Recipes](./recipes.md) and [Install order](./install-order.md) when you want a complete workflow instead of individual blocks.
1414

@@ -38,6 +38,19 @@ See [Readiness](./readiness.md) for the meaning of `ready`, `stub`, `planned`, `
3838
- `quality-tooling`
3939
- `playwright-e2e`
4040

41+
### Interface Grammar
42+
43+
- `metric-card-grid`
44+
- `kpi-trend-card`
45+
- `activity-feed`
46+
- `timeline`
47+
- `resource-header`
48+
- `filter-bar`
49+
- `saved-views`
50+
- `bulk-actions-bar`
51+
- `status-badge-system`
52+
- `danger-zone-card`
53+
4154
### Data
4255

4356
- `drizzle-postgres`
@@ -83,6 +96,10 @@ See [Readiness](./readiness.md) for the meaning of `ready`, `stub`, `planned`, `
8396
- `webhook-inbox`
8497
- `webhook-delivery`
8598
- `developer-portal`
99+
- `api-playground`
100+
- `request-log-explorer`
101+
- `usage-event-explorer`
102+
- `webhook-delivery-detail`
86103

87104
### Growth and Analytics
88105

@@ -110,6 +127,10 @@ See [Readiness](./readiness.md) for the meaning of `ready`, `stub`, `planned`, `
110127

111128
- `background-jobs`
112129
- `rate-limits`
130+
- `operator-dashboard`
131+
- `customer-360`
132+
- `account-health`
133+
- `customer-timeline`
113134
- `sentry-monitoring`
114135
- `axiom-logging`
115136
- `audit-log`
@@ -118,6 +139,8 @@ See [Readiness](./readiness.md) for the meaning of `ready`, `stub`, `planned`, `
118139
- `system-health`
119140
- `incident-management`
120141
- `data-import-export`
142+
- `replay-center`
143+
- `job-run-detail`
121144

122145
### Provider Adapter Examples
123146

@@ -131,6 +154,30 @@ See [Readiness](./readiness.md) for the meaning of `ready`, `stub`, `planned`, `
131154
- `posthog-analytics`
132155
- `arcjet-security`
133156

157+
### Integration Marketplace
158+
159+
- `integration-catalog`
160+
- `integration-detail-page`
161+
- `integration-install-flow`
162+
- `integration-health`
163+
- `integration-sync-logs`
164+
165+
### Security And Compliance
166+
167+
- `security-center`
168+
- `security-scorecard`
169+
- `security-events`
170+
- `access-review`
171+
- `api-key-risk-review`
172+
- `trusted-devices`
173+
174+
### Conventions
175+
176+
- `schema-conventions`
177+
- `event-taxonomy`
178+
- `tenant-isolation-policy`
179+
- `money-and-credits-conventions`
180+
134181
### Optional AI
135182

136183
- `ai-chat`

docs/recipes.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Recipes
22

3-
Recipes are opinionated install paths through the registry. A recipe answers "what should I install together, and in what order?" Presets remain installable bundles; recipes explain the product architecture behind those bundles.
3+
Recipes are opinionated install paths through the registry. A recipe answers "what should I install together, and in what order?" Presets remain installable bundles; recipes explain the product architecture behind those bundles and can be installed with `stackfoundry add recipe <name>`.
44

55
## Available Recipes
66

@@ -26,6 +26,8 @@ pnpm stackfoundry add recipe api-saas-starter --target ./my-app --dry-run
2626

2727
Recipe definitions live in `registry/recipes/*.json` and are mirrored to `public/r/recipes/*.json` for public inspection.
2828

29+
The most product-ready recipe path today is `api-saas-starter`, which ties together identity, API keys, usage metering, quotas, docs, webhooks, billing, and request visibility. Stub recipes intentionally include stub modules to show the direction of a complete SaaS operating system before every source payload is ready.
30+
2931
## Recipe Shape
3032

3133
Each recipe includes:

docs/registry.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Recipes live in `registry/recipes/*.json` and describe install order across modu
2424
- `files`: files installed into the target app
2525
- `drizzle`: schema/migration metadata
2626
- `maintenance`: maintenance skill and review metadata
27-
- `status`: planned, experimental, stable
27+
- `status`: ready, stub, planned, experimental, stable, or deprecated
2828

2929
## Registry Model
3030

@@ -52,10 +52,12 @@ Installers must not overwrite modified user files silently. The installer should
5252
```bash
5353
pnpm registry:list
5454
pnpm registry:presets
55+
pnpm stackfoundry recipes
56+
pnpm stackfoundry recipe api-saas-starter
5557
pnpm registry:doctor
5658
pnpm registry:build
5759
pnpm stackfoundry add drizzle-postgres --target /path/to/app
58-
pnpm stackfoundry add preset next-saas --target /path/to/app
60+
pnpm stackfoundry add recipe api-saas-starter --target /path/to/app --dry-run
5961
pnpm stackfoundry diff drizzle-postgres --target /path/to/app
6062
```
6163

@@ -82,4 +84,6 @@ Generated public module and aggregate preset items are registry-compatible `regi
8284

8385
Files under `/r/presets/*.json` are StackFoundry preset manifests for tooling and inspection. They are not installable registry item payloads; use `/r/<preset>.json` to install a preset bundle.
8486

87+
Files under `/r/recipes/*.json` are StackFoundry recipe manifests for human-readable architecture, outcomes, and staged install order. Recipes can also be installed through the StackFoundry command with `stackfoundry add recipe <name>`.
88+
8589
The build writes canonical generated output to `public/r` and mirrors it to `apps/web/public/r`. Vercel serves `/r/*.json` directly from the Next app as static JSON; no redirect is required.

docs/repository.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ StackFoundry is a source registry. Every directory should either own product sou
99
- `examples/` contains install targets and walkthroughs used to prove registry modules in realistic app shapes.
1010
- `packages/` is reserved for extracted library packages when command behavior, registry loading, schema validation, and shared utilities outgrow `apps/cli`.
1111
- `public/r/` contains generated registry output. Do not edit it by hand.
12-
- `registry/` contains source modules and presets. This is the product surface.
12+
- `registry/` contains source modules, presets, recipes, and shared skills. This is the product surface.
1313
- `scripts/` is reserved for standalone maintenance scripts that should not live inside the StackFoundry command.
1414

1515
## Applications
@@ -25,14 +25,15 @@ StackFoundry is a source registry. Every directory should either own product sou
2525
- `registry/modules/<module>/skill/SKILL.md` gives maintainer guidance.
2626
- `registry/modules/<module>/tests/checklist.md` defines verification expectations.
2727
- `registry/presets/*.json` composes modules into installable bundles.
28+
- `registry/recipes/*.json` describes staged install order and workflow outcomes.
2829

2930
## Generated Output
3031

3132
Run `pnpm registry:build` to regenerate `public/r`.
3233

3334
`public/r/registry.json` is the shadcn-compatible registry index and is not an installable item. Generated module files such as `public/r/api-keys.json` are `registry:block` item JSON files. They include file contents, target paths, package dependencies, registry dependency URLs, environment variables, docs, and metadata.
3435

35-
Generated aggregate preset blocks live at `public/r/<preset>.json`. Raw preset manifests live under `public/r/presets/*.json` for StackFoundry tooling and are not shadcn registry item documents.
36+
Generated aggregate preset blocks live at `public/r/<preset>.json`. Raw preset manifests live under `public/r/presets/*.json` for StackFoundry tooling and are not shadcn registry item documents. Recipe manifests are mirrored under `public/r/recipes/*.json` for inspection and install-order guidance.
3637

3738
## Verification
3839

0 commit comments

Comments
 (0)