{"id":51261091,"url":"https://github.com/openpeeps/powpow","last_synced_at":"2026-06-29T12:01:24.621Z","repository":{"id":365240176,"uuid":"1269990056","full_name":"openpeeps/powpow","owner":"openpeeps","description":"PowPow 💥 A high-performance event notification library. Supporting UDP, TCP, HTTP/1.1 and WebSockets","archived":false,"fork":false,"pushed_at":"2026-06-28T12:45:11.000Z","size":971,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-28T14:20:27.773Z","etag":null,"topics":["epoll","event-driven","http","iocp","kqueue","nim","nim-package","openpeeps","posix","server","tcp","tcp-server","udp","udp-server","websocket"],"latest_commit_sha":null,"homepage":"https://openpeeps.github.io/powpow/","language":"Nim","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openpeeps.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-06-15T09:25:37.000Z","updated_at":"2026-06-28T12:44:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/openpeeps/powpow","commit_stats":null,"previous_names":["openpeeps/powpow"],"tags_count":1,"template":false,"template_full_name":"openpeeps/pistachio","purl":"pkg:github/openpeeps/powpow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fpowpow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fpowpow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fpowpow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fpowpow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openpeeps","download_url":"https://codeload.github.com/openpeeps/powpow/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fpowpow/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34925718,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["epoll","event-driven","http","iocp","kqueue","nim","nim-package","openpeeps","posix","server","tcp","tcp-server","udp","udp-server","websocket"],"created_at":"2026-06-29T12:01:23.676Z","updated_at":"2026-06-29T12:01:24.605Z","avatar_url":"https://github.com/openpeeps.png","language":"Nim","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/openpeeps/powpow/blob/main/.github/powpow_logo.png\" width=\"80px\"\u003e\u003cbr\u003e\n  PowPow 💥  A high-performance event notification library for Nim\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ccode\u003enimble install powpow\u003c/code\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://openpeeps.github.io/powpow\"\u003eAPI reference\u003c/a\u003e\u003cbr\u003e\n  \u003cimg src=\"https://github.com/openpeeps/powpow/workflows/test/badge.svg\" alt=\"Github Actions\"\u003e  \u003cimg src=\"https://github.com/openpeeps/powpow/workflows/docs/badge.svg\" alt=\"Github Actions\"\u003e\n\u003c/p\u003e\n\n## 😍 Key Features\n- High-performance, event-driven networking library for Nim\n- Support for low-level **UDP, TCP sockets**\n- Built-in HTTP/1.1 server implementation\n- Built-in **WebSocket support** with standalone and upgrade modes\n- **HTTP over Unix Domain Sockets** (UDS) support for super fast local IPC\n- **Zero-copy file transmission** using `sendfile` (Unix) and `TransmitFile` (Windows)\n- Chunked Request Body support for streaming uploads and large payloads\n- Memory-efficient Multipart Form Data parsing and Raw Body handling for file uploads\n- SIMD-accelerated parsing and formatting of HTTP messages\n- Built on top of `epoll` (Linux), and `kqueue` (BSD, macOS), `IOCP` (Windows)\n- Support for edge-triggered and level-triggered event notification\n- Support for multiple event loops and multi-threaded applications\n- Support for MIME type detection based on file extensions\n- FileSystem Monitoring via `inotify` (Linux) and `kqueue` (BSD, macOS) (Windows - not yet implemented)\n\n\u003e [!NOTE]\n\u003e 💥 PowPow is experimental and under active development. The API may change without deprecation. If you are looking for a more stable and mature library, consider using [supranim](https://github.com/supranim/supranim) instead (based on LibEvent). 💥\n\n\u003e [!WARNING]\n\u003e 💥 This library is not production-ready and may contain bugs and security vulnerabilities. It has been tested on Linux and macOS, but may not work on all platforms. **Use it, test it, and do not hesitate to report any issues you find!** 💥 \n\n## Examples\nCheck examples in the `examples/` directory, or see the [API reference](https://openpeeps.github.io/powpow) for more details.\n\n\n## Dummy Benchmarks\n**Pow Pow is the #1 fastest HTTP server** from [Web Framework Benchmarks](https://web-frameworks-benchmark.netlify.app/result). Here you can find some wrk-based benchmarks I manually ran via Github Actions (see [latest results here](https://github.com/openpeeps/powpow/actions/runs/27644007710/job/81751133711))\n\n- Single-threaded (keep-alive)\n```\n⚡ powpow HTTP server listening on http://localhost:9000\n  Press Ctrl+C to stop\nRunning 5s test @ http://127.0.0.1:9000/\n  4 threads and 100 connections\n  Thread Stats   Avg      Stdev     Max   +/- Stdev\n    Latency     1.02ms   61.67us   3.25ms   81.86%\n    Req/Sec    24.63k   818.23    26.67k    68.00%\n  489946 requests in 5.00s, 277.55MB read\nRequests/sec:  97965.24\nTransfer/sec:     55.50MB\n```\n\n- Single-threaded (connection close)\n```\n⚡ powpow HTTP server listening on http://localhost:9000\n  Press Ctrl+C to stop\nRunning 5s test @ http://127.0.0.1:9000/\n  4 threads and 100 connections\n  Thread Stats   Avg      Stdev     Max   +/- Stdev\n    Latency     1.97ms  202.12us   4.22ms   80.09%\n    Req/Sec     9.13k     3.62k   18.16k    71.43%\n  184469 requests in 5.10s, 103.62MB read\nRequests/sec:  36174.22\nTransfer/sec:     20.32MB\n```\n\n- Multi-threaded (keep-alive)\n```\n  worker #0 ready\n  worker #2 ready\n⚡ powpow accepting on 0.0.0.0:9000 with 4 workers (SO_REUSEPORT)\n  worker #1 ready\n  worker #3 ready\nRunning 5s test @ http://127.0.0.1:9000/\n  4 threads and 100 connections\n  Thread Stats   Avg      Stdev     Max   +/- Stdev\n    Latency   786.79us    1.11ms  11.73ms   84.24%\n    Req/Sec    50.98k     3.97k   86.53k    91.50%\n  1018820 requests in 5.03s, 526.62MB read\nRequests/sec: 202743.27\nTransfer/sec:    104.80MB\n\n```\n\n- Multi-threaded (connection close)\n```\n  worker #0 ready\n  worker #2 ready\n⚡ powpow accepting on 0.0.0.0:9000 with 4 workers (SO_REUSEPORT)\n  worker #3 ready\n  worker #1 ready\nRunning 5s test @ http://127.0.0.1:9000/\n  4 threads and 100 connections\n  Thread Stats   Avg      Stdev     Max   +/- Stdev\n    Latency     1.31ms    0.95ms  15.44ms   67.66%\n    Req/Sec    13.24k   614.80    14.91k    81.50%\n  264133 requests in 5.01s, 135.27MB read\nRequests/sec:  52687.29\nTransfer/sec:     26.98MB\n\n```\n\n### ❤ Contributions \u0026 Support\n- 🐛 Found a bug? [Create a new Issue](https://github.com/openpeeps/powpow/issues)\n- 👋 Wanna help? [Fork it!](https://github.com/openpeeps/powpow/fork)\n\n|  |  |\n|---|---|\n| \u003ca href=\"https://opencode.ai/go?ref=BHMEEK48QX\"\u003e\u003cimg src=\"https://github.com/openpeeps/pistachio/blob/main/.github/opencode.png\" alt=\"OpenCode\"\u003e\u003c/a\u003e | Switch to **Open-Source LLM models** via OpenCode AI, choosing from a variety of powerful models such as DeepSeek, Qwen, Kimi, GLM-5, MiniMax, MiMo. 🍕 [Use our referral link to get started!](https://opencode.ai/go?ref=BHMEEK48QX)|\n\n### 🎩 License\nLGPLv3 license. [Made by Humans from OpenPeeps](https://github.com/openpeeps).\u003cbr\u003e\nCopyright OpenPeeps \u0026 Contributors \u0026mdash; All rights reserved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenpeeps%2Fpowpow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenpeeps%2Fpowpow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenpeeps%2Fpowpow/lists"}