{"id":48823057,"url":"https://github.com/de4oult/autumn","last_synced_at":"2026-04-17T20:02:48.038Z","repository":{"id":350936646,"uuid":"1141159090","full_name":"De4oult/Autumn","owner":"De4oult","description":"Modern Python ASGI web framework","archived":false,"fork":false,"pushed_at":"2026-04-14T09:05:09.000Z","size":483,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-14T16:32:17.304Z","etag":null,"topics":["asgi","async","autumn","dependency-injection","framework","openapi","package","pip","pip3","pypi","python","rest","restful","web","websocket"],"latest_commit_sha":null,"homepage":"https://autumnframework.web.app","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/De4oult.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-24T11:06:32.000Z","updated_at":"2026-04-14T13:33:19.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/De4oult/Autumn","commit_stats":null,"previous_names":["de4oult/autumn"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/De4oult/Autumn","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/De4oult%2FAutumn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/De4oult%2FAutumn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/De4oult%2FAutumn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/De4oult%2FAutumn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/De4oult","download_url":"https://codeload.github.com/De4oult/Autumn/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/De4oult%2FAutumn/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31943882,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-17T17:29:20.459Z","status":"ssl_error","status_checked_at":"2026-04-17T17:28:47.801Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asgi","async","autumn","dependency-injection","framework","openapi","package","pip","pip3","pypi","python","rest","restful","web","websocket"],"created_at":"2026-04-14T16:01:37.472Z","updated_at":"2026-04-17T20:02:48.033Z","avatar_url":"https://github.com/De4oult.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Autumn\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://i.imgur.com/1bXTXQe.png\" alt=\"Autumn logo\" width=\"120\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cstrong\u003eA modern ASGI web framework focused on typed controllers, dependency injection, and clean configuration.\u003c/strong\u003e\n\u003c/p\u003e\n\n__Autumn__ is a Python web framework for building HTTP APIs and WebSocket applications with a small, explicit core. It leans on Python's type system instead of large decorator stacks: route parameters are typed, request bodies are inferred from Pydantic models, dependencies are injected from signatures, and responses can be serialized automatically.\n\nIf you want class-based controllers, typed configuration, built-in dependency injection, OpenAPI/Dependencies docs generation, and CORS support, Autumn is built for that style.\n\n## Highlights\n- ASGI-first application object that works with standard ASGI servers such as `uvicorn`\n- Class-based REST controllers with typed path parameters like `{id:int}` and `{file:path}`\n- Signature-driven dependency injection with `@service` and `@leaf`\n- Automatic request body validation from Pydantic annotations\n- Automatic JSON serialization for Pydantic return values\n- Built-in configuration system with environment, JSON, and YAML sources\n- Built-in configs for application settings, CORS, and WebSocket tuning\n- OpenAPI and dependencies documentation generation with built-in viewer\n- Middleware hooks, lifespan hooks, file responses, redirects, and streaming\n- WebSocket routes with dependency injection support\n\n## Why Autumn\n__Autumn__ tries to keep the ergonomic parts of modern Python frameworks while staying direct:\n- Controllers are just Python classes.\n- Dependencies come from constructor or method signatures.\n- Request bodies are inferred from type annotations instead of extra decorators.\n- Configs are plain Python classes with typed fields.\n- The framework stays close to raw ASGI concepts when you need to drop lower.\n\nThat makes the happy path concise, while still keeping the codebase readable when the application grows.\n\n## Benchmarks\nLatest local benchmark run: `2026-04-17`\n\nEnvironment:\n- Windows\n- Python `3.12`\n- `uvicorn --workers 1 --loop asyncio --http h11 --lifespan off`\n- Concurrency: `64`\n- Warmup: `2s`\n- Measurement duration: `5s`\n\nAverage across `plaintext`, `json`, `path_parameter`, and `body` scenarios:\n\n| Framework   | Avg RPS | Avg P95 (ms) |\n| ----------- | ------: | -----------: |\n| Falcon      | 4471.53 | 16.66        |\n| __Autumn__  | 4006.67 | 17.38        |\n| FastAPI     | 3644.17 | 19.49        |\n| Flask       | 2149.76 | 33.06        |\n\nIn this run, Autumn is:\n- `86.37%` faster than Flask on average\n- `9.95%` faster than FastAPI on average\n- `10.39%` slower than Falcon on average\n\n## Philosophy\n\n__Autumn__ favors:\n\n- strong typing over implicit magic\n- signatures over decorator-heavy ceremony\n- built-in primitives over mandatory third-party integration\n- readable application structure over framework cleverness\n\nThe goal is to make small apps pleasant and larger apps maintainable.\n\n## Author\n```\n     _      _  _               _ _   \n  __| | ___| || |   ___  _   _| | |_ \n / _` |/ _ \\ || |_ / _ \\| | | | | __|\n| (_| |  __/__   _| (_) | |_| | | |_ \n \\__,_|\\___|  |_|  \\___/ \\__,_|_|\\__|\n```\n\n## __Thank you a lot!__\n\n\u003cbr\u003e\n\n## How to reach me\n\u003ca href=\"https://t.me/kayra_dev\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Telegram-informational?style=for-the-badge\u0026logo=telegram\" alt=\"Telegram Badge\" height=\"30\" /\u003e\n\u003c/a\u003e\n\u003cimg src=\"https://img.shields.io/badge/-kayra.dist@gmail.com-informational?style=for-the-badge\u0026logo=gmail\" alt=\"Gmail Badge\" height=\"30\" /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fde4oult%2Fautumn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fde4oult%2Fautumn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fde4oult%2Fautumn/lists"}