render.rs
warp
render.rs | warp | |
---|---|---|
1 | 66 | |
225 | 9,172 | |
2.2% | - | |
0.0 | 6.4 | |
7 months ago | about 1 month ago | |
Rust | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
render.rs
-
Hyper β A fast and correct HTTP implementation for Rust
Any recommendations for rust template engines? I'd like something that can easily render labeled fragments of a template instead of requiring me to split a page into a dozen little files. Kinda like inline {{block}} definitions in Go's html/template. Speed is also nice.
From template-benchmark-rs [0] I found sailfish [1] (fast, but no fragments(?)). render-rs [2] and syn-rsx [3] (2022) both let you write html in rust macros which is cool (maybe that can substitute for fragments?). Then there's gtmpl-rust [4] which is just Go templates reimplemented in rust.
[0]: https://github.com/rosetta-rs/template-benchmarks-rs
[1]: https://github.com/rust-sailfish/sailfish
[2]: https://github.com/render-rs/render.rs last updated Jul 2020
[3]: https://github.com/stoically/syn-rsx last updated Nov 2022
[4]: https://github.com/fiji-flo/gtmpl-rust
warp
-
Hyper β A fast and correct HTTP implementation for Rust
I tried warp [0] and I am unimpressed so far. Pretty complex, limited documentation, buggy. The builder paradigm they used feels pretty constrained and, in my opinion, achieve the opposite of the simplicity it is supposed to bring. I was surprised it is so popular.
Maybe I need more time or a favorable comparison to another framework to appreciate it.
[0] https://github.com/seanmonstar/warp
-
How in hell can Warp be considered "super easy"?
Have you gone through the (examples)[https://github.com/seanmonstar/warp/blob/master/examples/]? There's actually a lot of explicit instructions here on how to use Warp, and all of them are very straightforward to read (e.g., (this example with route parameters and a POST'ed body)[https://github.com/seanmonstar/warp/blob/master/examples/body.rs])
-
Custom Warp error messages
There are numerous guides how to do custom error messages using the routes .recover() method (including the official one ), but it seems quite inflexible since I can't (seem to?) pass the actual error messages back to user.
-
Rendering a Rust project's file dependency tree in the terminal
$ brew install gabotechs/taps/dep-tree $ git clone https://github.com/seanmonstar/warp $ dep-tree render warp/src/lib.rs lib.rsβββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬βββββββ¬β β β β ββ ββ·filter/and.rsββββββββββββββββββββββββββββββ β ββ ββ·βfilter/map_err.rsβββββββββββββββββββββββββ€ β ββ ββ·ββfilter/or.rsβββββββββββββββββββββββββββββ€ β ββ ββ·βββfilters/mod.rsβββββββββββββββ¬βββββββ¬ββββββββββββββββββββΌβ€ ββ·ββββtest.rsββββββββ β β β β ββ β βββββ β β β β ββ β ββββββ·filters/addr.rs β β β β ββ β ββββββ·βfilters/any.rs β β β β ββ β ββββββ·ββfilters/body.rs β β β β ββ β ββββββ·βββfilters/compression.rsβ β β β ββ β ββββββ·ββββfilters/cookie.rsβββββ β β β ββ β ββββββ·βββββfilters/cors.rs β β β ββ β ββββββ·ββββββfilters/ext.rs β β β ββ β ββββββ·βββββββfilters/fs.rs β β β ββ β ββββββ·ββββββββfilters/header.rs β β β ββ β ββββββ·βββββββββfilters/host.rs β β β ββ β ββββββ·ββββββββββfilters/log.rs β β β ββ β ββββββ·βββββββββββfilters/method.rs β β β ββ β ββββββ·ββββββββββββfilters/multipart.rsβ β β ββ β ββββββ·βββββββββββββfilters/path.rsβββββ€ β β ββ β ββββββ·ββββββββββββββfilters/query.rs β β β ββ β ββββββ·βββββββββββββββfilters/reply.rs β β β ββ β ββββββ·ββββββββββββββββfilters/sse.rsβββ β β ββ β ββββββ·βββββββββββββββββfilters/trace.rs β β ββ β βββββ ββββββββββββββββββ β β ββ βββββββββββββββββββββββββββ·filter/boxed.rsβββ€ β ββ βββββββββββββββββββββββββββ·βfilter/map.rsββββ€ β ββ βββββββββββββββββββββββββββ·ββfilter/wrap.rsββΌββββββββββββββββΌββ β βββββ ββββββββββββββββββ βββ β β βββ βββββββββββββββββββββββββββββββ·filter/mod.rsββββββββ¬β¬βΌββββββββ€β β βββββ ββββββββββββββββ ββ β βββ βββ β βββββ ββββββββββββββββ ββ ββ·filter/and_then.rsβ€ββ βββ β βββββ ββββββββββββββββ ββ ββ·βfilter/or_else.rsβββ βββ β βββββ ββββββββββββββββ ββ ββ·ββfilter/recover.rsββ βββ βββββββββββββββββββββββββββββββββ·βββfilter/service.rsββββββββΌββ€ β βββββ ββββββββββββββββ ββ ββ·ββββfilter/then.rsβββ€ βββ β βββββ ββββββββββββββββ ββ ββ·βββββfilter/unify.rsβ βββ β βββββ ββββββββββββββββ ββ ββ·ββββββfilter/untuple_one.rsβ€ββ β βββββ ββββββββββββββββ ββ β βββββββ βββ βββββββββββββββββββββββββββββββββββββββββ·reply.rsβββββ¬βββββββββββ βββββββββββββββββββββββββββββββββββββββββ·βroute.rsβββββββββββ€ββ β β βββββ ββββββββββββββββ ββ β βββββββ β β βββ β ββββββββββββββββββββββββββββββββββββββββββββ·server.rsββββββββββ€ β β βββββ ββββββββββββββββ ββ β βββββββ β β β βββ β ββββββββββββββββββββββββββββββββββββββββββββββ·tls.rsββ΄βββββββββ β β βββββ ββββββββββββββββ ββ β βββββββ β β β ββ β ββββββββββββββββββββββββββββββββββββββββββββββββ·filters/ws.rsββ β ββββββββββββββββββββββββββββββββββββββββββββββββ·βtransport.rsββ β β βββ β ββββββββββββββββ ββ β βββββββ β β β β ββ β βββββββββββββββββββββββββββββββββββββββββββββββββββ·generic.rsββ β βββββββββββββββββββββββββββββββββββββββββββββββββββ·reject.rsββ΄β β β β β β β βββββββββββββββββββββββββββββββββββββββββββββββββββββ·error.rs β βββββββββββββββββββββββββββββββββββββββββββββββββββββ·redirect.rsβ
-
Is there a more practical way to let warp respond to incoming requests?
What I see on the examples for the warp crate is that the examples do this:
-
I turned The Rust Book into a crate
You might want to consider using Alacritty instead of Warp. Warp is VC-funded, macOS only, closed source, and it phones home. They also kinda stole the name of a web framework.
-
I made rust-webapp-template
warp server,
-
Help with warp routes
Hello, I'd need some help with warp routes since I'm not familiar with the framework. If somebody knows how to do this I'd appreciate very much.
-
Any Rust based forum software?
If one were to undertake a project of developing something like this, which is the best web framework for it. I did some cursory research and discovered these back-end frameworks - actix, axum, poem, salvo, warp, gotham and rocket.
-
shuttle v0.7.1 has been released (improved isolation, new supported frameworks, QOL improvements)
We've added support for the warp, salvo & thruster frameworks
What are some alternatives?
syn-rsx - syn-powered parser for JSX-like TokenStreams
axum - Ergonomic and modular web framework built with Tokio, Tower, and Hyper
go-htmx - Sample application that uses go and htmx
actix-web - Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.
gtmpl-rust - golang text/template for rust
Rocket - A web framework for Rust.
hyper - An HTTP library for Rust
template-benchmarks-rs - Collected benchmarks for templating crates written in Rust
hyperterm - A terminal built on web technologies
kitty - Cross-platform, fast, feature-rich, GPU based terminal