# Calendar App A full-stack calendar application built with Rust, featuring a Yew frontend and Axum backend with CalDAV integration. ## Features - Interactive calendar interface - Event creation and management - CalDAV server integration - User authentication with JWT - iCal format support - Weekly recurrence patterns - Responsive web design ## Architecture - **Frontend**: Yew (Rust WebAssembly) - **Backend**: Axum (Rust async web framework) - **Protocol**: CalDAV for calendar synchronization - **Database**: SQLite (via migrations) - **Build Tool**: Trunk for frontend bundling ## Getting Started ### Prerequisites - Rust (latest stable version) - Trunk (`cargo install trunk`) ### Development 1. Start the backend server: ```bash cd backend cargo run ``` 2. Start the frontend development server: ```bash trunk serve ``` 3. Open your browser to `http://localhost:8080` ### Building for Production ```bash trunk build --release ``` ## Project Structure - `src/` - Frontend Yew application - `backend/` - Axum backend server - `migrations/` - Database schema migrations - `dist/` - Built frontend assets