#product-os #websocket-server #server-sent-events #socket-server #axum #tower

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

22 releases

0.0.25 Jun 12, 2024
0.0.24 May 17, 2024
0.0.16 Apr 21, 2024
0.0.9 Nov 30, 2023
0.0.2 Aug 21, 2023

#150 in HTTP server

Download history 31/week @ 2024-08-18 52/week @ 2024-08-25 38/week @ 2024-09-01 36/week @ 2024-09-08 49/week @ 2024-09-15 78/week @ 2024-09-22 34/week @ 2024-09-29 5/week @ 2024-10-06 17/week @ 2024-10-13 25/week @ 2024-10-20 36/week @ 2024-10-27 28/week @ 2024-11-03 8/week @ 2024-11-10 22/week @ 2024-11-17 39/week @ 2024-11-24 31/week @ 2024-12-01

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

AGPL-3.0-only

79KB
1K SLoC

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.25", 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

~0.8–9MB
~100K SLoC