microasynchttpserver

A thin asynchronous HTTP server library, API compatible with Nim's built-in asynchttpserver.

Pure Nim score 15/100 · tests present · no docs generated

Summary

Latest Version Unknown
License MIT
CI Status Failing
Downloads 0
Last Indexed 2026-07-21 05:24

Installation

nimble install microasynchttpserver
choosenim install microasynchttpserver
git clone https://github.com/philip-wernersbach/microasynchttpserver

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
microasynchttpserver - - - - - - -

README

microasynchttpserver

microasynchttpserver is a thin asynchronous HTTP server library for Nim. It is API-compatible with Nim's built-in asynchttpserver, and allows programs greater control over the HTTP connection than asynchttpserver does.

Features

  • Production-ready
  • Uses nim-picohttpparser for HTTP header parsing
  • Acts as a thin HTTP server library
    • Only parses HTTP method, protocol version, URL, and headers
    • Everything else is up to the application

Usage

microasynchttpserver is mostly API compatible with asynchttpserver. Use the newMicroAsyncHttpServer proc to instantiate a MicroAsyncHttpServer, and use it just like an AsyncHttpServer.

MicroAsyncHttpServer will only fill in the client, reqMethod, headers, protocol, url, and hostname fields of Request objects. HTTP request bodies/data must be handled by your application, and read directly from the client socket.

As a convenience, you can use the readBody proc provided by this library to read the entire request body to memory. Note that this will not set the Request object's body field; it will only return the body that was read.

License

This project is licensed under the MIT License. For full license text, see LICENSE.