Web-standards-first Python for applications that run across ASGI, Cloudflare Workers, and AWS Lambda.
Hayate keeps one WHATWG Request/Response application core while runtime
adapters and optional features are mounted around it. Use the same application
logic on a conventional Python server or directly inside Cloudflare workerd.
- Read the unified Hayate documentation.
- Build the first application on ASGI, native Cloudflare Workers, or AWS Lambda.
- Use the executable production golden app for Cloudflare Access, OpenAPI, MCP, checked SQL, operational administration, SQLite/D1, and deployment.
- Check the generated compatibility evidence before selecting versions or runtimes.
Building a real API, MCP backend, or Workers application? Help shape the v1 contract through the bounded design-partner program.
Hayate is strongest when one Python application must combine typed HTTP, MCP, authorization, and checked data access across conventional ASGI servers, native Cloudflare Workers, and AWS Lambda.
The recorded 2026-07-28 same-workload HTTP baseline measured:
| Boundary | Hayate 0.15.1 | FastAPI 0.140.0 | Django 6.0.7 | Hono 4.12.32 |
|---|---|---|---|---|
| Cold start | 149.0 ms | 471.4 ms | 392.6 ms | 61.3 ms |
| Production packages | 5 | 13 | 6 | 2 |
| gzip payload | 298.1 KiB | 2,802.2 KiB | 5,147.2 KiB | 281.5 KiB |
| Throughput | 14,906 req/s | 10,086 req/s | 2,557 req/s | 59,187 req/s |
| Common HTTP contract | 14/14 | 12/14 | 12/14 | 12/14 |
On this workload Hayate delivered 1.48x FastAPI's and 5.83x Django's throughput. Hono delivered 3.97x Hayate's throughput and retained the best startup, dependency-count, and deployment-payload results.
The 14-point contract is a shared-workload result, not a universal standards score. Feature breadth is evaluated separately and without a weighted winner:
- Portable Python agent API — Hayate advantaged. Hayate has the clearest first-party path when one Python application must run on ASGI, native Cloudflare Workers, and buffered or response-streaming AWS Lambda HTTP payload v2 while combining typed HTTP contracts, cached dependency graphs, MCP 2025-11-25, authorization, and checked SQLite/D1 access.
- Conventional typed Python API — competitive. Hayate now meets FastAPI's central typed request/response, OpenAPI, dependency-graph, direct-test, realtime, lifecycle, and sub-application composition capabilities. FastAPI retains a much larger adoption ecosystem; that is a material adoption advantage, not a missing Hayate endpoint feature.
- Traditional database-backed full stack — competitor advantaged. Django remains functionally ahead for its model-driven ORM/migrations, integrated forms/templates, bundled localization breadth, and mature extension ecosystem. Hayate now has a first-party explicit operational admin with bounded CRUD, bulk actions, redacted history, searchable relationships, inline editing, saved views, keyset continuations, bounded CSV export, application-scoped localization, constrained branding, and a real-browser accessibility audit on SQLite and native Workers/D1, while retaining a Django admin/ORM application under an ASGI prefix during incremental migration.
- JavaScript and TypeScript edge application — competitor advantaged. Hono remains functionally ahead for multi-JavaScript-runtime reach and route-inferred TypeScript RPC, and its JavaScript Workers runtime has materially better startup, memory, CPU, and upload size than Python Workers.
Read the immutable benchmark publication and the dated, source-backed capability matrix for methodology, raw artifacts, profile verdicts, and limitations.
| I want to… | Start with |
|---|---|
| Build a web API on ASGI, Workers, or Lambda | hayate |
| Generate OpenAPI 3.1 and typed clients | hayate-openapi |
| Expose MCP 2025-11-25 tools | hayate-mcp |
| Add sessions, API keys, OAuth, or an authorization server | hayate-auth |
| Use checked SQL with PostgreSQL, SQLite, or D1 | hayate-sql |
| Make portable outbound requests | hayate-fetch |
| Generate an integrated application | create-hayate |
- The golden app runs direct tests, a real Uvicorn/SQLite flow, and a real workerd/D1 flow. HTTP, identity, OpenAPI, MCP, and operational admin share one application core.
- The core compatibility gate installs an unpublished Hayate wheel into auth, fetch, MCP, OpenAPI, and generated application repositories before release.
- The feature-complete Workers default is a
WorkerEntrypointclass. The optional global handler is an explicitly HTTP-only compatibility mode. - Public releases include locked inputs, SPDX SBOMs, and GitHub attestations.
All packages are pre-1.0. Use the compatibility page for the exact evidence snapshot rather than assuming every pre-1.0 line can be mixed freely.
See the organization-wide contributing guide. Report vulnerabilities privately through the affected repository's Security → Report a vulnerability flow.