Pattern library discovery for pattern-first development. Use BEFORE implementing any new feature, creating components, writing API routes, or adding database operations...
Enforce pattern-first development by checking the Pattern library before implementing new functionality. This reduces code duplication, ensures consistency, and leverages battle-tested solutions.
Invoke this skill when:
ALWAYS follow this sequence before writing new code:
Search patterns_library/ for existing patterns:
# Find patterns by category
ls patterns_library/api/ # API route patterns
ls patterns_library/ui/ # UI component patterns
ls patterns_library/database/ # Database operation patterns
ls patterns_library/testing/ # Testing patterns
Check patterns_library/README.md for the complete pattern index:
| Category | Patterns Available |
|---|---|
| API | User Context, Admin Context, Webhook Handler, Zod Validation, Bonus Content |
| UI | Authenticated Page, Form with Validation, Data Table, Marketing Page |
| Database | RLS Migration, Prisma Transaction, Server Component Access |
| Testing | API Integration Test, E2E User Flow |
| Security | Input Sanitization, Rate Limiting, Secrets Management |
| CI | GitHub Actions Workflow, Deployment Pipeline |
| Config | Environment Config, Structured Logging |
If pattern exists:
If pattern is missing:
patterns_library/
βββ README.md # Pattern index and usage guide
βββ api/
β βββ user-context-api.md
β βββ admin-context-api.md
β βββ webhook-handler.md
β βββ zod-validation-api.md
β βββ bonus-content-delivery.md
βββ ui/
β βββ authenticated-page.md
β βββ form-with-validation.md
β βββ data-table.md
β βββ marketing-page.md
βββ database/
β βββ rls-migration.md
β βββ prisma-transaction.md
β βββ server-component-direct-access.md
βββ testing/
β βββ api-integration-test.md
β βββ e2e-user-flow.md
βββ security/
β βββ input-sanitization.md
β βββ rate-limiting.md
β βββ secrets-management.md
βββ ci/
β βββ github-actions-workflow.md
β βββ deployment-pipeline.md
βββ config/
βββ environment-config.md
βββ structured-logging.md
| If you need to... | Use this pattern |
|---|---|
| Create authenticated API endpoint | api/user-context-api.md |
| Create admin-only API endpoint | api/admin-context-api.md |
| Handle external webhooks | api/webhook-handler.md |
| Validate API input with Zod | api/zod-validation-api.md |
| Serve private downloadable content | api/bonus-content-delivery.md |
| Create protected page | ui/authenticated-page.md |
| Build form with validation | ui/form-with-validation.md |
| Display paginated data | ui/data-table.md |
| Create marketing/landing page | ui/marketing-page.md |
| Add new table with RLS | database/rls-migration.md |
| Run multi-step DB operations | database/prisma-transaction.md |
| Test API endpoints | testing/api-integration-test.md |
| Write E2E user flow tests | testing/e2e-user-flow.md |
| Sanitize user input | security/input-sanitization.md |
| Add API rate limiting | security/rate-limiting.md |
| Manage secrets/env vars | security/secrets-management.md |
| Set up CI/CD pipeline | ci/github-actions-workflow.md |
| Configure deployment stages | ci/deployment-pipeline.md |
| Load environment configuration | config/environment-config.md |
| Add structured logging | config/structured-logging.md |
All patterns enforce:
withUserContext, withAdminContext, or withSystemContextAfter applying a pattern, run:
yarn lint && yarn type-check # All patterns
yarn test:integration # API patterns
yarn test:e2e # UI patterns
patterns_library/README.mdrls-patterns skill for database securityfrontend-patterns skill for UI conventions