This hub is early. Feedback from real Azure Functions Python users is very welcome. Share yours →
A DX toolkit for Azure Functions Python: OpenAPI, validation, logging, diagnostics, scaffolding, and recipes.
Azure Functions Python is powerful, but once you move beyond simple examples, the developer experience can feel fragmented.
This is not a framework. This is a missing DX layer around Azure Functions Python.
In real projects, developers solve the same problems repeatedly:
- How do I generate OpenAPI / Swagger docs for HTTP-triggered functions?
- How do I validate request bodies, query parameters, and responses?
- How do I make logs easier to search in Application Insights?
- How do I check common configuration issues before deployment?
- How should I structure a production-style project?
- Where can I find practical examples beyond the official quickstarts?
This toolkit organizes those missing pieces into small, focused open-source projects.
| Tool | Purpose | Status |
|---|---|---|
| azure-functions-openapi-python | Generate OpenAPI / Swagger docs for HTTP triggers | Usable |
| azure-functions-doctor-python | Run pre-deployment diagnostics | Usable |
| azure-functions-validation-python | Request and response validation | Usable |
| azure-functions-logging-python | Invocation-aware structured logging | Usable |
| Tool | Purpose | Status |
|---|---|---|
| azure-functions-scaffold-python | Scaffold production-style projects | Early |
| azure-functions-cookbook-python | Recipes, examples, and integration patterns | Early |
| Tool | Purpose | Status |
|---|---|---|
| azure-functions-db-python | DB helper and pseudo-trigger patterns | Experimental |
| azure-functions-langgraph-python | LangGraph integration patterns | Experimental |
Scaffold → Validation → OpenAPI → Logging → Doctor → Deploy
For HTTP APIs, start with OpenAPI + Validation + Logging.
For deployment readiness, start with Doctor.
For new projects, start with Scaffold + Cookbook.
Experimental packages such as DB and LangGraph are for pattern exploration.
Use openapi + validation + logging for: OpenAPI / Swagger UI, typed request validation, consistent error responses, invocation-aware logs.
Use doctor for: Python version checks, dependency checks, host.json checks, common misconfiguration detection, CI-friendly diagnostics.
Use scaffold + cookbook for: project templates, recommended folder structure, practical examples, reusable patterns.
Use db + langgraph for: DB-oriented workflow experiments, pseudo-trigger patterns, LangGraph workflow hosting patterns.
Some packages are already usable for real projects. Others are experimental and still being shaped.
| Status | Meaning |
|---|---|
| Usable | Stable enough for real projects and feedback |
| Early | Usable but evolving quickly |
| Experimental | Pattern exploration. APIs and behavior may change. Not recommended as a production dependency yet. |
- Stay close to Azure Functions — enhance, don't replace the programming model.
- Small focused packages — adopt only the parts you need.
- Production-style examples — reflect real project needs, not just hello-world.
- CI/CD friendly — works with GitHub Actions, Azure Developer CLI, Azure CLI.
- Clear boundaries — experimental packages are clearly marked.
See ROADMAP.md for the full roadmap.
See docs/positioning.md for:
- Why not just use FastAPI?
- Why not just use the official Azure Functions SDK?
- Azure Functions documentation
- Azure Functions Python developer guide
- Azure Functions Core Tools
- Azure Functions Python library
See CONTRIBUTING.md.
If you are using Azure Functions Python and have a recurring pain point, please open an issue.