api-forge

Solid

Design REST/GraphQL APIs with OpenAPI 3.1, error handling, pagination, rate limiting, webhooks, and idempotency. Use when user asks to design an API, create endpoints, define REST/GraphQL schema, or generate OpenAPI spec. Do NOT use for database schema design, frontend API integration, or non-HTTP protocols (gRPC, WebSocket, MQTT).

API & Backend 96 stars 12 forks Updated yesterday MIT

Install

View on GitHub

Quality Score: 91/100

Stars 20%
66
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# API Forge Design APIs that developers love. Based on patterns from Stripe, GitHub, Twilio, Slack, and the OpenAPI 3.1 specification. ## Sub-Commands | Command | Category | Description | |---------|----------|-------------| | `design` | Build | Design an API from user requirements. Generate OpenAPI 3.1 spec. | | `endpoint` | Build | Design a single endpoint with all methods, parameters, responses, and error codes. | | `audit` | Evaluate | Audit an existing API against design rules, security checklist, and anti-patterns. | | `document` | Document | Generate API documentation from OpenAPI spec or route handlers. | | `extract` | Document | Extract OpenAPI spec from existing route handlers. | | `webhook` | Build | Design webhook delivery, retry, and signature verification. | ## Workflow ### Step 1: Determine API type | Type | Use Case | Spec | |------|----------|------| | REST | CRUD, resource-oriented | OpenAPI 3.1 | | GraphQL | Complex queries, multiple resources | Schema Definition Language | | Webhook | Event-driven, async notifications | Standard webhooks (Stripe pattern) | ### Step 2: Define resources and naming | Pattern | Example | Notes | |---------|---------|-------| | Nouns, plural | `/users`, `/orders` | Never verbs | | Nested (max 2 levels) | `/users/{id}/orders` | Flat preferred over deep nesting | | Actions as sub-resources | `/orders/{id}/cancel` | Only for non-CRUD operations | | Query for filters | `/users?role=admin` | Not `/users/admins` | | kebab-cas...

Details

Author
EliasOulkadi
Repository
EliasOulkadi/shokunin
Created
1 months ago
Last Updated
yesterday
Language
HTML
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category