This crate is the primary dependency for building a trillium app or library. It contains a handful of core types and reexports a few others that you will necessarily need, but otherwise tries to stay small and focused. This crate will hopefully be the most stable within the trillium ecosystem. That said, trillium is still pre 1.0 and should be expected to evolve over time.
At a minimum to build a trillium app, you’ll also need a trillium runtime adapter.
Unwraps an Result::Ok or returns the conn with a 500 status.
Unwraps an Option::Some or returns the conn.
Macro for implementing Handler for simple newtypes that contain another handler.
A convenience macro for logging the contents of error variants.
The trillium representation of a http body. This can contain
&'static [u8] content,
Vec<u8> content, or a boxed
A Trillium HTTP connection.
The name of a http header. This can be either a
KnownHeaderName or a string representation of an unknown
A HeaderValue represents
Trillium’s header map type
This struct represents information about the currently connected server.
Provides support for asynchronous initialization of a handler after the server is started.
A handler for sharing state across an application.
A short nonehaustive enum of headers that trillium can represent as a u8. Use a KnownHeaderName variant instead of a &’static str anywhere possible, as it allows trillium to skip parsing the header entirely.
HTTP request methods.
HTTP response status codes.
The version of the HTTP protocol in use.
The building block for Trillium applications.
A HTTP protocol upgrade