//! Home page component
use crate::components::loading::Loading;
use leptos::prelude::*;
/// Home page component
///
/// The main dashboard view showing project overview and recent activity.
/// This is the landing page of the application.
#[component]
pub fn HomePage() -> impl IntoView {
// Signal to track loading state (for future API integration)
let (loading, _set_loading) = signal(false);
view! {
"Welcome to Syntaxis Dashboard"
"Monitor and manage your projects in real-time"
}
>
"Recent Activity"
"No recent activity to display"
"Getting Started"
- "• Dashboard foundation is ready (Phase 1 complete)"
- "• API integration coming in Phase 2"
- "• Real-time updates via WebSocket in Phase 3"
}
}
/// Statistics card component
///
/// Displays a single statistic with an icon and colored accent.
#[component]
fn StatCard(
/// Card title
title: &'static str,
/// Main value to display
value: &'static str,
/// Emoji icon
icon: &'static str,
/// Color theme (blue, green, yellow, etc.)
color: &'static str,
) -> impl IntoView {
let border_class = format!("border-l-4 border-{}-500", color);
let icon_bg_class = format!("bg-{}-100 dark:bg-{}-900/50", color, color);
view! {
}
}