README
Some checks failed
CI / Check typos (push) Failing after 8s
CI / Check links (push) Failing after 11s
CI / Clippy (push) Successful in 57s
CI / Build and test (push) Successful in 1m19s
CI / Build container (push) Has been skipped
CI / Deploy on waypoint (push) Has been skipped
Some checks failed
CI / Check typos (push) Failing after 8s
CI / Check links (push) Failing after 11s
CI / Clippy (push) Successful in 57s
CI / Build and test (push) Successful in 1m19s
CI / Build container (push) Has been skipped
CI / Deploy on waypoint (push) Has been skipped
This commit is contained in:
23
README.md
Normal file
23
README.md
Normal file
@@ -0,0 +1,23 @@
|
||||
[utoipa]: https://docs.rs/utoipa/latest/utoipa/
|
||||
[axum]: https://docs.rs/axum/latest/axum/
|
||||
[betalupi.com]: https://betalupi.com
|
||||
|
||||
# Mark's webpage
|
||||
|
||||
This is the source code behind [betalupi.com], featuring a very efficient mini web framework written from scratch in Rust. It uses...
|
||||
- [Axum](https://github.com/tokio-rs/axum) as an http server
|
||||
- [Maud](https://maud.lambda.xyz/) for html templates
|
||||
- [Grass](https://github.com/connorskees/grass) to parse and compile [sass](https://sass-lang.com/)
|
||||
- [markdown-it](https://github.com/markdown-it-rust/markdown-it) to convert md to html
|
||||
|
||||
|
||||
## Overview & Arch:
|
||||
- [`bin/webpage`](./crates/bin/webpage/): Simple cli that starts `service-webpage`
|
||||
- [`lib/libservice`](./crates/lib/libservice): Provides the `Service` trait. A service is a group of http routes with an optional [utoipa] schema. \
|
||||
This library decouples compiled binaries from the services they provide, and makes sure all services are self-contained.
|
||||
- [`lib/page`](./crates/lib/page): Provides `PageServer`, which builds an [axum] router that provides a caching and headers for resources served through http.
|
||||
- Also provides `Servable`, which is a trait for any resource that may be served.
|
||||
- the `Page` servable serves html generated by a closure.
|
||||
- the `StaticAsset` servable serves static assets (css, images, misc files), and provides transformation utilties for image assets (via [`pixel-transform`](./crates/lib/pixel-transform)).
|
||||
|
||||
- [`service/service-webpage`](./crates/service/service-webpage): A `Service` that runs a `PageServer` that provides the content on [betalupi.com]
|
||||
Reference in New Issue
Block a user