{"id":13630269,"url":"https://github.com/savsgio/atreugo","last_synced_at":"2025-05-14T04:09:19.170Z","repository":{"id":37359271,"uuid":"134266604","full_name":"savsgio/atreugo","owner":"savsgio","description":"High performance and extensible micro web framework. Zero memory allocations in hot paths.","archived":false,"fork":false,"pushed_at":"2025-01-01T23:10:55.000Z","size":462,"stargazers_count":1268,"open_issues_count":3,"forks_count":75,"subscribers_count":25,"default_branch":"master","last_synced_at":"2025-04-10T22:31:05.707Z","etag":null,"topics":["atreugo","extensible","fast","fasthttp","go","golang","micro-framework","performance","zero"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/savsgio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":"https://www.buymeacoffee.com/savsgio"}},"created_at":"2018-05-21T12:32:23.000Z","updated_at":"2025-04-07T07:45:28.000Z","dependencies_parsed_at":"2023-02-19T04:55:28.034Z","dependency_job_id":"9017bd6b-5e20-44c9-bd5a-49671c68ed10","html_url":"https://github.com/savsgio/atreugo","commit_stats":{"total_commits":447,"total_committers":14,"mean_commits":"31.928571428571427","dds":"0.36241610738255037","last_synced_commit":"fcff52152120ffb70ac877694a878358008895ab"},"previous_names":[],"tags_count":101,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savsgio%2Fatreugo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savsgio%2Fatreugo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savsgio%2Fatreugo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savsgio%2Fatreugo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/savsgio","download_url":"https://codeload.github.com/savsgio/atreugo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254070106,"owners_count":22009559,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["atreugo","extensible","fast","fasthttp","go","golang","micro-framework","performance","zero"],"created_at":"2024-08-01T22:01:36.643Z","updated_at":"2025-05-14T04:09:14.158Z","avatar_url":"https://github.com/savsgio.png","language":"Go","funding_links":["https://www.buymeacoffee.com/savsgio"],"categories":["Web Frameworks","Go","Web frameworks","Repositories","Web框架"],"sub_categories":["Utility/Miscellaneous","实用程序/Miscellaneous"],"readme":"# Atreugo\n\n[![Test status](https://github.com/savsgio/atreugo/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/savsgio/atreugo/actions?workflow=test)\n[![Coverage Status](https://coveralls.io/repos/github/savsgio/atreugo/badge.svg?branch=master)](https://coveralls.io/github/savsgio/atreugo?branch=master)\n[![Go Report Card](https://goreportcard.com/badge/github.com/savsgio/atreugo/v11)](https://goreportcard.com/report/github.com/savsgio/atreugo/v11)\n[![GoDev](https://img.shields.io/badge/go.dev-reference-007d9c?logo=go\u0026logoColor=white)](https://pkg.go.dev/github.com/savsgio/atreugo/v11)\n[![GitHub release](https://img.shields.io/github/release/savsgio/atreugo.svg)](https://github.com/savsgio/atreugo/releases)\n\nHigh performance and extensible micro web framework with zero memory allocations in hot paths.\n\nIt's built on top of [fasthttp](https://github.com/valyala/fasthttp).\n\n## Install\n\n```bash\ngo get github.com/savsgio/atreugo/v11\n```\n\n## Supported Go versions:\n\n- 1.23.x\n- 1.22.x\n- 1.21.x\n\n## Documentation\n\nSee: [docs](https://github.com/savsgio/atreugo/tree/master/docs)\n\n## Organization\n\nFind useful libraries like middlewares, websocket, etc.\n\n- See: [Organization](https://github.com/atreugo)\n\n## Feature Overview\n\n- Optimized for speed. Easily handles more than 100K qps and more than 1M concurrent keep-alive connections on modern hardware.\n\n- Optimized for low memory usage.\n\n- Easy 'Connection: Upgrade' support via RequestCtx.Hijack.\n\n- Server provides anti-DoS limits.\n\n- Middlewares support:\n\n  - Before view execution.\n  - After view execution.\n\n- Easy routing:\n\n  - Path parameters (mandatories and optionals).\n  - Views with timeout.\n  - Group paths and middlewares.\n  - Static files.\n  - Serve one file like pdf, etc.\n  - Middlewares for specific views.\n  - fasthttp handlers support.\n  - net/http handlers support.\n\n- Common responses (also you could use your own responses):\n  - JSON\n  - HTTP\n  - Text\n  - Raw\n  - File\n  - Redirect\n\n## Examples:\n\nGo to [examples](https://github.com/atreugo/examples) to see how to use Atreugo.\n\n## Note:\n\n`*atreugo.RequestCtx` is equal to `*fasthttp.RequestCtx`, but with extra functionalities, so you can use\nthe same functions of `*fasthttp.RequestCtx`. Don't worry :smile:\n\n## Benchmark\n\n**Best Performance:** Atreugo is **one of the fastest** go web frameworks in the [go-web-framework-benchmark](https://github.com/smallnest/go-web-framework-benchmark).\n\n- Basic Test: The first test case is to mock 0 ms, 10 ms, 100 ms, 500 ms processing time in handlers.\n\n![](https://raw.githubusercontent.com/smallnest/go-web-framework-benchmark/master/benchmark.png)\n\n- Concurrency Test (allocations): In 30 ms processing time, the test result for 100, 1000, 5000 clients is:\n\n\\* _Smaller is better_\n\n![](https://raw.githubusercontent.com/smallnest/go-web-framework-benchmark/master/concurrency_alloc.png)\n\n# Contributing\n\n**Feel free to contribute or fork me...** :wink:\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsavsgio%2Fatreugo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsavsgio%2Fatreugo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsavsgio%2Fatreugo/lists"}