//! Home page component. use leptos::prelude::*; use crate::components::{Card, PageLayout}; /// Home page. #[component] pub fn HomePage() -> impl IntoView { view! { // Hero section "Welcome to " "Chattyness" "Create and explore virtual spaces where communities come alive. " "Build your own realm, customize it, and invite others to join." "Create Your Realm" "Explore Realms" // Features section "Why Chattyness?" // CTA section "Ready to get started?" "Create your first realm in just a few clicks. No experience needed." "Create a Realm" } } /// Feature card component. #[component] fn FeatureCard(icon: &'static str, title: &'static str, description: &'static str) -> impl IntoView { let icon_symbol = match icon { "castle" => "castle", "users" => "users", "palette" => "palette", _ => "star", }; view! { {title} {description} } }
"Create and explore virtual spaces where communities come alive. " "Build your own realm, customize it, and invite others to join."
"Create your first realm in just a few clicks. No experience needed."
{description}