From 7a53228ec8f4e6722e9b3072eec7d9328f00a622 Mon Sep 17 00:00:00 2001 From: Connor Johnstone Date: Fri, 29 Aug 2025 08:36:23 -0400 Subject: [PATCH] Added readme --- README.md | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..05923ac --- /dev/null +++ b/README.md @@ -0,0 +1,56 @@ +# 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 \ No newline at end of file