Skip to content

Conversation

@sam-goodwin
Copy link
Contributor

Summary

  • Add scripts/generate-docs.ts to automatically generate API reference docs from JSDoc comments
  • Parses TypeScript to extract Props/Attrs interfaces and their descriptions
  • Links capabilities and event sources to their parent resources
  • Generated 23 initial docs covering AWS (S3, Lambda, DynamoDB, SQS, EC2) and Cloudflare (KV, R2)
  • Update AGENTS.md to document that code is the single source of truth; add npm run generate:docs script

Test plan

  • Run bun run generate:docs successfully
  • Verify generated docs in alchemy-effect/docs/ are well-formatted
  • Verify JSDoc extraction works for well-documented resources (S3 Bucket, VPC)
  • Verify sparse documentation displays minimally (DynamoDB Table, capabilities)

🤖 Generated with Claude Code

sam-goodwin and others added 4 commits January 11, 2026 18:15
Add scripts/generate-docs.ts to automatically generate API reference documentation from JSDoc comments in source code. The script discovers all resources, parses TypeScript to extract Props/Attrs interfaces and their JSDoc comments, links capabilities and event sources to resources, and generates one markdown file per resource in alchemy-effect/docs/{cloud}/{service}/.

Generated 23 initial resource docs covering AWS (S3, Lambda, DynamoDB, SQS, EC2) and Cloudflare (KV, R2). Update AGENTS.md to document that code is the single source of truth for all API documentation. Add generate:docs npm script.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Add support for organizing examples in generated docs with table of contents:
- @section creates navigation headings in Quick Reference
- @example creates code example blocks under sections
- Updated AGENTS.md with documentation conventions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Replace ts.isJSDocText with "text" in c check (API doesn't exist)
- Use Array.from(docs.entries()) for Map iteration compatibility

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Extract resourceInfo and capabilityInfo values to local constants
before nested visit functions to help TypeScript understand they
are defined after the early return check.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@pkg-pr-new
Copy link

pkg-pr-new bot commented Jan 12, 2026

Open in StackBlitz

npm i https://pkg.pr.new/alchemy-run/alchemy-effect@33

commit: 43e2c27

@sam-goodwin sam-goodwin merged commit 9ddb0d2 into main Jan 12, 2026
2 checks passed
@sam-goodwin sam-goodwin deleted the sam-goodwin/docs-generator branch January 12, 2026 02:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants