← ClaudeAtlas

express--fastapi-route-builderlisted

Generates enterprise-grade RESTful API routes in Node.js (Express) or Python (FastAPI) complete with payload validation, unified error handling, and automated Swagger specs.
RMAzrim/opencode-artes · ★ 2 · API & Backend · score 76
Install: claude install-skill RMAzrim/opencode-artes
# Express & FastAPI Route Builder ## 1. System Architecture & Prerequisites - Node.js >= 18 LTS (runtime), npm >= 9 (package manager), TypeScript >= 5.5 compiler, `ts-node` >= 10 for `ts-node`/commonjs execution. - Python >= 3.10 (runtime), pip >= 23 (package manager), uv >= 0.4 optional for faster installs. - Express variant core deps: `express@^4.19.2`, `zod@^3.23.8`, `swagger-jsdoc@^6.2.8`, `swagger-ui-express@^5.0.1`, `cors@^2.8.5`, `helmet@^7.1.0`, `dotenv@^16.4.5`. - FastAPI variant core deps: `fastapi@^0.111.0`, `uvicorn[standard]@^0.30.1`, `pydantic@^2.7.4`, `pydantic-settings@^2.3.4`. - No external database is required: both variants use an in-memory store so the code runs end-to-end with zero infrastructure. ## 2. Input/Output Data Contracts ### Request body (POST/PATCH /todos) — JSON Schema draft-07 ```json { "type": "object", "properties": { "title": { "type": "string", "minLength": 1, "maxLength": 120 }, "description": { "type": "string", "maxLength": 1000 }, "status": { "enum": ["PENDING", "IN_PROGRESS", "COMPLETED"], "default": "PENDING" }, "dueAt": { "type": "string", "format": "date-time" } }, "required": ["title"], "additionalProperties": false } ``` ### Response envelopes - Success: `{"success": true, "data": <Todo>|<Todo[]>|null}` - Error: `{"success": false, "error": {"code": string, "message": string, "details"?: object}}` - HTTP statuses: 200 (read/update), 201 (create), 204 (delete), 400 (validation), 404 (not found), 4