mit einem Klick
api-documentation-generator
// Auto-activates when user mentions API documentation, endpoint docs, API reference, or OpenAPI spec. Generates comprehensive API documentation from code.
// Auto-activates when user mentions API documentation, endpoint docs, API reference, or OpenAPI spec. Generates comprehensive API documentation from code.
Use when adapting Droidz framework or creating custom workflows. Guide for customizing droids, skills, and commands for specific project needs.
Auto-activates when user mentions CI/CD, GitHub Actions, pipeline, continuous integration, deployment automation, or workflow files. Creates automated testing and deployment pipelines.
Auto-activates when user mentions Clerk, authentication, user management, or auth flows. Expert in Clerk authentication including Next.js integration, user management, and session handling.
Auto-activates when user mentions Cloudflare Workers, edge functions, or serverless deployment. Expert in Cloudflare Workers including deployment, KV storage, and Durable Objects.
Auto-activates when user mentions code review, reviewing code, PR review, or checking code quality. Provides systematic code review process with TodoWrite checklist.
Auto-activates when user mentions UI design, design systems, or component design. Expert in design principles, accessibility, and component architecture.
| name | api-documentation-generator |
| description | Auto-activates when user mentions API documentation, endpoint docs, API reference, or OpenAPI spec. Generates comprehensive API documentation from code. |
| category | documentation |
Automatically generates professional API documentation from your code, including OpenAPI/Swagger specs.
openapi: 3.0.0
info:
title: Your API Name
version: 1.0.0
description: API for [purpose]
contact:
name: API Support
email: api@example.com
servers:
- url: https://api.example.com/v1
description: Production
- url: https://api-staging.example.com/v1
description: Staging
paths:
/users:
get:
summary: List all users
description: Returns a paginated list of users
tags:
- Users
parameters:
- name: page
in: query
schema:
type: integer
default: 1
- name: limit
in: query
schema:
type: integer
default: 20
maximum: 100
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/User'
pagination:
$ref: '#/components/schemas/Pagination'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
components:
schemas:
User:
type: object
required:
- id
- email
- name
properties:
id:
type: string
format: uuid
example: "123e4567-e89b-12d3-a456-426614174000"
email:
type: string
format: email
example: "user@example.com"
name:
type: string
example: "John Doe"
createdAt:
type: string
format: date-time
example: "2025-01-01T00:00:00Z"
# API Reference
## Authentication
All API requests require authentication via Bearer token:
\`\`\`bash
Authorization: Bearer YOUR_API_KEY
\`\`\`
## Base URL
- Production: `https://api.example.com/v1`
- Staging: `https://api-staging.example.com/v1`
## Endpoints
### List Users
`GET /users`
Returns a paginated list of users.
**Query Parameters:**
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `page` | integer | 1 | Page number |
| `limit` | integer | 20 | Items per page (max 100) |
| `sort` | string | `createdAt` | Sort field |
| `order` | string | `desc` | Sort order (`asc` or `desc`) |
**Response:**
\`\`\`json
{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"email": "user@example.com",
"name": "John Doe",
"createdAt": "2025-01-01T00:00:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 100,
"totalPages": 5
}
}
\`\`\`
**Error Responses:**
| Status | Description |
|--------|-------------|
| 400 | Invalid query parameters |
| 401 | Unauthorized (missing or invalid token) |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
**Example:**
\`\`\`bash
curl -H "Authorization: Bearer YOUR_API_KEY" \\
"https://api.example.com/v1/users?page=1&limit=20"
\`\`\`
Scan API files:
Extract metadata:
Generate documentation:
Validate:
// Detected pattern:
app.get('/api/users', authMiddleware, async (req, res) => {
// Auto-document: GET /api/users, requires auth
});
// Detected pattern:
export async function GET(request: Request) {
// Auto-document: GET endpoint in Next.js
}
# Detected pattern:
@app.get("/users", response_model=List[User])
async def list_users(page: int = 1, limit: int = 20):
# Auto-generate from FastAPI annotations
Generate working examples for every endpoint:
# cURL
curl -X GET "https://api.example.com/v1/users?page=1" \\
-H "Authorization: Bearer YOUR_TOKEN"
# JavaScript/Fetch
fetch('https://api.example.com/v1/users?page=1', {
headers: { 'Authorization': 'Bearer YOUR_TOKEN' }
})
.then(res => res.json())
.then(data => console.log(data));
# Python/Requests
import requests
response = requests.get(
'https://api.example.com/v1/users',
params={'page': 1},
headers={'Authorization': 'Bearer YOUR_TOKEN'}
)
print(response.json())
If using OpenAPI spec, recommend tools:
# Generate interactive docs with Swagger UI
npx swagger-ui-watcher openapi.yaml
# Or Redoc
npx redoc-cli serve openapi.yaml
# Or Stoplight Elements
npx @stoplight/elements-dev-portal openapi.yaml
✅ DO:
❌ DON'T:
docs/
├── api/
│ ├── openapi.yaml # OpenAPI 3.0 spec
│ ├── reference.md # Markdown reference
│ └── examples/
│ ├── authentication.md
│ ├── users.md
│ └── pagination.md
## 📌 API Documentation Checklist
When adding new endpoints:
- [ ] Update openapi.yaml
- [ ] Add to reference.md
- [ ] Include curl example
- [ ] Document error responses
- [ ] Test example requests
- [ ] Update changelog
Auto-update docs when API changes detected.