Back to skills
SkillHub ClubShip Full StackFull Stack

fastapi-endpoint-scaffolder

Imported from https://github.com/okgoogle13/careercopilot.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
1
Hot score
77
Updated
March 20, 2026
Overall rating
C2.8
Composite score
2.8
Best-practice grade
S96.0

Install command

npx @skill-hub/cli install okgoogle13-careercopilot-fastapi-endpoint-scaffolder

Repository

okgoogle13/careercopilot

Skill path: .claude/skills/_legacy_archive/fastapi-endpoint-scaffolder

Imported from https://github.com/okgoogle13/careercopilot.

Open repository

Best for

Primary workflow: Ship Full Stack.

Technical facets: Full Stack.

Target audience: everyone.

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: okgoogle13.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install fastapi-endpoint-scaffolder into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/okgoogle13/careercopilot before adding fastapi-endpoint-scaffolder to shared team environments
  • Use fastapi-endpoint-scaffolder for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: fastapi-endpoint-scaffolder
description: "Scaffolds a new FastAPI endpoint with Pydantic models, router registration, and tests. Use when creating new backend API endpoints. Related: pydantic-model-scaffolder for complex model validation."
---

# FastAPI Endpoint Scaffolder Workflow

This skill creates a complete FastAPI endpoint with proper structure, type safety, and testing scaffolding.

## Workflow Steps

1. **Ask for endpoint details:**
   - Endpoint name (e.g., `notifications`, `email_templates`)
   - HTTP methods needed (GET, POST, PUT, DELETE, PATCH)
   - URL path (e.g., `/notifications`, `/email/templates`)
   - Brief description of what this endpoint does

2. **Ask for model fields:**
   - Request model fields (e.g., `email: str, subject: str, body: str`)
   - Response model fields (e.g., `id: str, status: str, sent_at: datetime`)
   - Optional fields (mark with `Optional[type]`)

3. **Generate endpoint file:**
   - Read template: `.claude/skills/fastapi-endpoint-scaffolder/templates/endpoint.py.tpl`
   - Replace placeholders:
     - `{{ENDPOINT_NAME}}` - Snake_case name (e.g., `notifications`)
     - `{{ENDPOINT_PATH}}` - URL path (e.g., `/notifications`)
     - `{{ENDPOINT_DESCRIPTION}}` - Brief description
     - `{{REQUEST_MODEL}}` - PascalCase request model name
     - `{{RESPONSE_MODEL}}` - PascalCase response model name
     - `{{HTTP_METHOD}}` - HTTP method (post, get, put, delete)
   - Write to: `backend/app/api/endpoints/{{ENDPOINT_NAME}}.py`

4. **Generate models file:**
   - Read template: `.claude/skills/fastapi-endpoint-scaffolder/templates/models.py.tpl`
   - Replace placeholders:
     - `{{MODEL_NAME}}` - PascalCase model name
     - `{{REQUEST_FIELDS}}` - Request model fields
     - `{{RESPONSE_FIELDS}}` - Response model fields
   - Write to: `backend/app/models/{{ENDPOINT_NAME}}_schemas.py`

5. **Update router registration:**
   - Read: `backend/app/api/router.py`
   - Add import: `from .endpoints import {{ENDPOINT_NAME}}`
   - Add router tuple: `({{ENDPOINT_NAME}}.router, "/{{ENDPOINT_PATH}}", "{{TAG_NAME}}")`
   - Write updated file

6. **Update models **init**.py:**
   - Read: `backend/app/models/__init__.py`
   - Add imports from new schema file
   - Add to `__all__` list
   - Write updated file

7. **Generate test file:**
   - Read template: `.claude/skills/fastapi-endpoint-scaffolder/templates/test_endpoint.py.tpl`
   - Replace placeholders
   - Write to: `backend/app/tests/api/test_{{ENDPOINT_NAME}}.py`

8. **Report success:**
   - List all created/modified files
   - Show example curl command for testing
   - Remind user to implement business logic in the endpoint

## Example Usage

```
User: Create a new endpoint for managing user notifications
```