7 releases (stable)
2.2.0 | Feb 28, 2020 |
---|---|
2.1.0 | Jan 2, 2020 |
2.0.2 | Dec 21, 2019 |
1.0.0 | Dec 2, 2019 |
0.1.0 | Nov 30, 2019 |
#1476 in HTTP server
47 downloads per month
Used in cargo-gui
16KB
95 lines
tide-naive-static-files
A simple static file serving component for Rust's Tide web framework.
Acknowledgements
This code is based heavily on this archived example.
This crate is not officially associated with the tide
project, it's more of an interim solution while tide
is still in a state of (relative) flux.
Note on Version Numbers
Mistakes were made when initially selecting version numbers for this crate. In the Rust ecosystem, a 1.0.0 release generally means the crate is fit for production. This crate makes no such claim. It would be best to "divide by ten" when looking at the crate's version number (i.e. 2.0.1 should be thought of as 0.2.0.1).
Example
To use the library:
- Define the route to host your assets under
- Stip the prefix so the routes match your files
- Set up a
get
endpoint with theStaticFilesEndpoint
making sure theroot
represents the path from where you run the server to the root of your assets
use async_std::task;
use tide_naive_static_files::StaticFilesEndpoint;
struct AppState {}
fn main() {
let state = AppState {};
let mut app = tide::with_state(state);
app.at("/static") // 1.
.strip_prefix() // 2
.get(StaticFilesEndpoint {
root: "./examples/".into(), // 3.
});
task::block_on(async move { app.listen("127.0.0.1:8000").await.unwrap() });
}
Contributors
- eignnx
- Felipe Seré, felipesere
If you're interested in contributing to the project, please see our CONTRIBUTING.md file!
Dependencies
~11–24MB
~386K SLoC