From 92890986c20197238ef9cda08dbc5ce9ed232811 Mon Sep 17 00:00:00 2001 From: Ever Ruiz Diaz Date: Fri, 21 Jun 2024 02:10:56 +0200 Subject: [PATCH] feat: entry blog of home component created --- src/components/home/entry.rs | 48 ++++++++++++++++++++++++++++++++ src/layouts/components/header.rs | 4 +-- src/lib.rs | 1 + src/pages/home.rs | 37 ++++++++++++++++++++++-- 4 files changed, 86 insertions(+), 4 deletions(-) create mode 100644 src/components/home/entry.rs diff --git a/src/components/home/entry.rs b/src/components/home/entry.rs new file mode 100644 index 0000000..32d015f --- /dev/null +++ b/src/components/home/entry.rs @@ -0,0 +1,48 @@ +use icondata as i; +use leptos::*; +use leptos_icons::*; +use crate::components::common::link::Link; + +#[component] +pub fn Entry( + title: String, + description: String, + uri: String, + time: u8, + date: String, + categories: Vec +) -> impl IntoView { + view! { +
+ +
+
+ +
+ + {time} min read +
+
+

+ {description} +

+
+
+ {categories.iter().map(|category| { + view! { + + {category} + + } + }).collect::>()} +
+ {date} +
+
+
+ } +} diff --git a/src/layouts/components/header.rs b/src/layouts/components/header.rs index 7177a39..202ddc8 100644 --- a/src/layouts/components/header.rs +++ b/src/layouts/components/header.rs @@ -11,8 +11,8 @@ pub fn Header() -> impl IntoView { diff --git a/src/lib.rs b/src/lib.rs index ab2df06..ba973ec 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -37,6 +37,7 @@ pub mod components { pub mod home { pub mod experience; pub mod project_card; + pub mod entry; } pub mod common { diff --git a/src/pages/home.rs b/src/pages/home.rs index 7c9e6a0..3b5cbf5 100644 --- a/src/pages/home.rs +++ b/src/pages/home.rs @@ -1,5 +1,6 @@ use crate::components::common::values::Icon; use crate::components::home::{experience::Experience, project_card::Project}; +use crate::components::home::entry::Entry; use crate::layouts::layout::Layout; use leptos::*; @@ -45,6 +46,18 @@ pub fn Home() -> impl IntoView { Icon::Docker.to_view(), ]; + let categories_portfolio = vec![ + "Project".to_string(), + "Rust".to_string(), + "Astro".to_string(), + ]; + + let categories_cookies = vec![ + "GraphQL".to_string(), + "Rust".to_string(), + "Axum".to_string() + ]; + view! { // Childrens @@ -53,7 +66,7 @@ pub fn Home() -> impl IntoView {
{SUB_DESCRIPTION}

-

Projects

+

Projects

impl IntoView { {berli_icons}
-

Experience

+ + // Blog +

Blog

+ + + +

Experience