diff --git a/src/html/books.rs b/src/html/books.rs new file mode 100644 index 0000000..d436130 --- /dev/null +++ b/src/html/books.rs @@ -0,0 +1,24 @@ +use axum::{ + response::IntoResponse, + routing::{get, Router}, +}; + +use super::templates::{ + BooksTemplate, HtmlTemplate, MonkAndRobotTemplate, +}; + +pub fn get_router() -> Router { + Router::new() + .route("/", get(books)) + .route("/monk&robot", get(monk_robot)) +} + +async fn books() -> impl IntoResponse { + let books_page = BooksTemplate {}; + HtmlTemplate(books_page) +} + +async fn monk_robot() -> impl IntoResponse { + let monk_robot = MonkAndRobotTemplate {}; + HtmlTemplate(monk_robot) +} diff --git a/src/html/mod.rs b/src/html/mod.rs index 4b08e1a..a11514d 100644 --- a/src/html/mod.rs +++ b/src/html/mod.rs @@ -3,6 +3,7 @@ use serde::Deserialize; pub mod admin; pub mod posts; pub mod projects; +pub mod books; pub mod root; pub mod templates; diff --git a/src/html/root.rs b/src/html/root.rs index de0583b..6be9b55 100644 --- a/src/html/root.rs +++ b/src/html/root.rs @@ -22,12 +22,9 @@ use crate::{ }; use super::{ - admin, - posts::{self, get_articles_date_sorted}, - projects, - templates::{ - AboutTemplate, AiTemplate, BlogrollTemplate, BooksTemplate, ContactTemplate, CookingTemplate, CreationTemplate, GiftsTemplate, HomeTemplate, HtmlTemplate, InterestsTemplate, LinksPageTemplate, LoginTemplate, MoneyTemplate, NowTemplate, ResumeTemplate, SignupTemplate, TechnologyTemplate, TimeTemplate, UsesTemplate, WorkTemplate - }, + admin, books, posts::{self, get_articles_date_sorted}, projects, templates::{ + AboutTemplate, AiTemplate, BlogrollTemplate, ContactTemplate, CookingTemplate, CreationTemplate, GiftsTemplate, HomeTemplate, HtmlTemplate, InterestsTemplate, LinksPageTemplate, LoginTemplate, MoneyTemplate, NowTemplate, ResumeTemplate, SignupTemplate, TechnologyTemplate, TimeTemplate, UsesTemplate, WorkTemplate + } }; pub fn get_router(pool: PgPool) -> Router { @@ -39,6 +36,7 @@ pub fn get_router(pool: PgPool) -> Router { Router::new() .nest("/posts", posts::get_router()) .nest("/projects", projects::get_router()) + .nest("/books", books::get_router()) .nest("/admin", admin::get_router()) .nest_service( "/assets", @@ -56,7 +54,6 @@ pub fn get_router(pool: PgPool) -> Router { .route("/resume", get(resume)) .route("/gifts", get(gifts)) .route("/hire", get(work)) - .route("/books", get(books)) .route("/time", get(time)) .route("/cooking", get(cooking)) .route("/creation", get(creation)) @@ -173,11 +170,6 @@ pub async fn get_signup() -> impl IntoResponse { HtmlTemplate(SignupTemplate {}) } -async fn books() -> impl IntoResponse { - let books_page = BooksTemplate {}; - HtmlTemplate(books_page) -} - async fn time() -> impl IntoResponse { let time_page = TimeTemplate {}; HtmlTemplate(time_page) diff --git a/src/html/templates.rs b/src/html/templates.rs index ce16e75..243d94e 100644 --- a/src/html/templates.rs +++ b/src/html/templates.rs @@ -162,3 +162,7 @@ pub struct AdminTemplate {} #[derive(Template)] #[template(path = "money.html")] pub struct MoneyTemplate {} + +#[derive(Template)] +#[template(path = "monk&robot.html")] +pub struct MonkAndRobotTemplate {} diff --git a/templates/books.html b/templates/books.html index da23ceb..778a057 100755 --- a/templates/books.html +++ b/templates/books.html @@ -14,11 +14,15 @@

Currently Reading

- A Prayer for the Crown Shy - Becky Chambers + Capitalism Vs Freedom - Rob Larson +

+

+ Hitchiker's Guide to the Galaxy - Douglas Adams

Read so far in 2025