An HTTP server is too broad a program; anything the host system can do (calling another program, doing some calculations, db ops, fs ops, etc.,) the server may need to do. That's why the main goal of this framework is to give the user smaller individual components that integrate well together (and preferably with external libs/crates) and let them write their own server implementations.
[WARN] This readme is a work in progress.
This framework aims to be:
- fully functional in a no_std state
- moderately low level a backend web framework
| crate | features |
|---|---|
| prologue | http primitive types (Method, Protocol, Status), http/1.1 client/server request/response parsing |
| uri | URL parser and URN parser |
| services | Various middlewares, server/services pattern traits |
| socket | safe low level socket api bindings only AF_UNIX and AF_INET addresses currently supported |
| sys | c-ffi calls, currently only has the socket module |
This includes all the framework crates.
cargo add pheasant# replace * with the crate you need
cargo add pheasant_*pheasant aims to be compatible with at least this version of the rust compiler / cargo package manager: 1.88.0
MIT only.