7 releases (breaking)
0.7.0 | May 24, 2024 |
---|---|
0.6.0 | Jun 27, 2023 |
0.5.0 | May 11, 2023 |
0.4.0 | Nov 9, 2022 |
0.1.0 | Jul 19, 2022 |
#2055 in Network programming
404 downloads per month
39KB
699 lines
quickie
quickie is a simple, low-level, and customizable implementation of a QUIC P2P node. Its design is inspired by pea2pea.
goals
- small, simple, non-framework codebase
- ease of use: few objects and traits, no "turboeels" or generics/references that would force all parent objects to adapt
- correctness: builds with stable Rust, there is no unsafe code
- low-level oriented: while the underlying
quinn
crate does the QUIC heavy-lifting, the user should have access to most of its functionalities
how to use it
- define a clonable struct containing a Node and any extra state you'd like to carry
- implement the
Quickie
trait for it - create that struct (or as many of them as you like)
That's it!
examples
- simple interop with libp2p-quic
status
- the core functionalities seem to work, but there can still be bugs
- not all the
quinn
features are exposed yet - some tests are already in place
- the crate follows semver, and API breakage is to be expected before
1.0
Dependencies
~11–21MB
~385K SLoC