#product-os #websocket-server #server-sent-events #https-server #router #socket-server #axum

no-std product-os-router

Product OS : Router provides a fully featured router leveraging Axum and Tower with a suite of helper methods to make it easier to create an HTTP server, HTTPS server, web socket server and even server-sent events server

13 releases

new 0.0.16 Apr 21, 2024
0.0.15 Apr 19, 2024
0.0.9 Nov 30, 2023
0.0.5 Oct 21, 2023
0.0.2 Aug 21, 2023

#181 in HTTP server

Download history 41/week @ 2023-12-24 2/week @ 2023-12-31 43/week @ 2024-01-07 31/week @ 2024-01-14 20/week @ 2024-01-21 11/week @ 2024-01-28 24/week @ 2024-02-04 30/week @ 2024-02-11 21/week @ 2024-02-18 129/week @ 2024-02-25 45/week @ 2024-03-03 73/week @ 2024-03-10 50/week @ 2024-03-17 75/week @ 2024-03-24 85/week @ 2024-03-31 278/week @ 2024-04-07

501 downloads per month
Used in 17 crates (10 directly)

AGPL-3.0-only

71KB
827 lines

Product OS : Router

Product OS : Router provides a fully featured router leveraging Axum and Tower with a suite of helper methods to make it easier to create an HTTP server, HTTPS server, web socket server and even server-sent events server.

What is Product OS?

Product OS is a collection of packages that provide different tools and features that can work together to build products more easily for the Rust ecosystem.

Installation

Use the Rust crate package manager cargo to install Product OS : Router.

cargo add product-os-router

or add Product OS : Router to your cargo.toml [packages] section.

product-os-router = { version = "0.0.16", features = [], default-features = true, optional = false }

Features

Product OS Router supports a number of features leveraging the existing Rust libraries of Axum and Tower including:

  • Set of endpoint route and fallback helper methods
  • Explicit cors endpoint helper method
  • WebSocket (ws) helper method
  • Server-side Events (sse) helper method
  • Add multiple handlers in one go
  • Add middleware with a bit more ease
  • Define default headers
  • Create services (collections of handlers) more easily
// Feature samples TODO

Usage

// Examples TODO

Contributing

Contributions are not currently available but will be available on a public repository soon.

License

GNU AGPLv3

Dependencies

~1–4.5MB
~84K SLoC