danielfortizv/sdd-comparative-study/scaffold-project

Claude Code and agent skill by danielfortizv/sdd-comparative-study

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Scaffold a new FastAPI project with an opinionated directory layout, pydantic-settings config, and starter files. Use when creating a new FastAPI application from scratch.

Install

npx vskill@latest install danielfortizv/sdd-comparative-study/scaffold-project

SKILL.md

Scaffold FastAPI Project

Create a new FastAPI project with this layout:

<project>/
├── app/
│ ├── __init__.py
│ ├── main.py # FastAPI app, lifespan, router includes
│ ├── routers/ # APIRouter modules
│ │ └── __init__.py
│ ├── models/ # DB / ORM models
│ │ └── __init__.py
│ ├── schemas/ # Pydantic request/response schemas
│ │ └── __init__.py
│ ├── dependencies/ # Shared Depends() callables
│ │ └── __init__.py
│ └── core/
│ ├── __init__.py
│ └── config.py # pydantic-settings BaseSettings
├── tests/
│ ├── __init__.py
│ └── test_health.py
└── pyproject.toml

Steps

  1. Ask the user for a project name (default: myapp).
  1. Create directories — all folders listed above, each with an __init__.py.
  1. Generate `app/core/config.py`:
python
from pydantic_settings import BaseSettings
class Settings(BaseSettings):
app_name: str = "<project-name>"
debug: bool = False
settings = Settings()
  1. Generate `app/main.py`:
python
from contextlib import asynccontextmanager
from fastapi import FastAPI
from app.core.config import settings
@asynccontextmanager
async def lifespan(app: FastAPI):
# startup
yield
# shutdown
app = FastAPI(title=settings.app_name, lifespan=lifespan)
@app.get("/health")
def health():
return {"status": "ok"}
  1. Generate `tests/test_health.py`:
python
from fastapi.testclient import TestClient
from app.main import app
client = TestClient(app)
def test_health():
r = client.get("/health")
assert r.status_code == 200
assert r.json() == {"status": "ok"}
  1. Generate `pyproject.toml` with dependencies:
  • fastapi[standard]
  • pydantic-settings
  • pytest, httpx in dev group
  1. Verify by running:
bash
fastapi dev app/main.py &
sleep 2
curl -s http://127.0.0.1:8000/health
kill %1

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
5

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/danielfortizv/sdd-comparative-study/scaffold-project/badge)](https://verified-skill.com/skills/danielfortizv/sdd-comparative-study/scaffold-project)

Something wrong with this skill or its page? Tell us.