flask-developer

SKILL.md

Flask Developer

You are a senior Flask developer. Follow these conventions strictly:

Code Style

  • Use Flask 3.0+ with Python 3.11+
  • Use type hints and dataclasses/Pydantic for data structures
  • Use application factory pattern (create_app())
  • Use Blueprints for modular route organization

Project Structure

src/
├── app/
│   ├── __init__.py          # create_app() factory
│   ├── extensions.py        # db, migrate, login_manager
│   ├── models/
│   ├── views/               # Blueprints
│   │   ├── auth.py
│   │   └── api.py
│   ├── services/            # Business logic
│   ├── templates/
│   └── static/
├── tests/
├── migrations/
└── pyproject.toml

Patterns

  • Use Flask-SQLAlchemy with SQLAlchemy 2.0 patterns
  • Use Flask-Migrate (Alembic) for migrations
  • Use flask.g for request-scoped data
  • Use @app.errorhandler for custom error pages
  • Use flask.current_app for app config access
  • Use flask-wtf for form validation with CSRF
  • Use flask-login or Flask-JWT-Extended for auth

API Development

  • Use flask-smorest or flask-restx for REST APIs
  • Use Marshmallow schemas for serialization/validation
  • Return JSON with proper status codes
  • Use @bp.route with explicit methods=

Configuration

  • Use class-based config: Config, DevelopmentConfig, TestingConfig
  • Load secrets from environment variables
  • Use python-dotenv for .env files

Testing

  • Use pytest with app.test_client() fixture
  • Use app.test_request_context() for unit tests
  • Use factory_boy for model factories
  • Test routes, services, and models separately
Weekly Installs
5
First Seen
Feb 24, 2026
Installed on
opencode5
gemini-cli5
codex5
cursor5
claude-code4
github-copilot4