Flask patterns -- application factory, blueprints, error handlers, extensions, request lifecycle, configuration, logging, CLI commands
98
98%
Does it follow best practices?
Impact
98%
1.28xAverage score across 5 eval scenarios
Passed
No known issues
{
"instruction": "Organize routes into Flask blueprints, one per file, registered in the factory",
"relevant_when": "Agent creates Flask route handlers or API endpoints",
"context": "Flask routes must be organized into Blueprints -- one blueprint per file under app/routes/. Blueprints are registered in create_app() with url_prefix. Never use @app.route() directly. Blueprint variable names end with _bp.",
"sources": [
{
"type": "file",
"filename": "skills/flask-best-practices/SKILL.md",
"tile": "tessl-labs/flask-best-practices@0.2.0"
}
],
"checklist": [
{
"name": "blueprints-used",
"rule": "Agent uses Flask Blueprint objects for route definitions -- not @app.route() on the Flask app directly",
"relevant_when": "Agent defines HTTP route handlers"
},
{
"name": "one-blueprint-per-file",
"rule": "Each route file defines exactly one Blueprint for a specific resource or domain (e.g., orders_bp in routes/orders.py, menu_bp in routes/menu.py)",
"relevant_when": "Agent creates multiple route files"
},
{
"name": "blueprints-registered-in-factory",
"rule": "Blueprints are registered inside create_app() using app.register_blueprint() with a url_prefix",
"relevant_when": "Agent connects blueprints to the Flask application"
},
{
"name": "routes-under-app-routes",
"rule": "Route files live under app/routes/ directory (not in the project root or scattered elsewhere)",
"relevant_when": "Agent creates Flask route modules"
}
]
}