Add CalDAV dependencies and secure configuration

- Added comprehensive CalDAV/calendar dependencies:
  - reqwest for HTTP requests
  - ical for calendar parsing
  - chrono for date/time handling
  - serde for serialization
  - anyhow/thiserror for error handling
  - uuid for event generation
- Implemented secure config management:
  - dotenvy for environment variable loading
  - base64 for Basic Auth encoding
  - .env.example template for development
  - .gitignore updated to exclude secret files
- Created config.rs module with extensive documentation:
  - CalDAVConfig struct for server credentials
  - Environment-based configuration loading
  - HTTP Basic Auth helper methods
  - Comprehensive error handling
  - Full rustdoc documentation with examples

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Connor Johnstone
2025-08-28 15:13:36 -04:00
parent 0f4b505acd
commit 01411f76c4
5 changed files with 232 additions and 2 deletions

13
.env.example Normal file
View File

@@ -0,0 +1,13 @@
# CalDAV Server Configuration
CALDAV_SERVER_URL=https://your-caldav-server.com/dav/
CALDAV_USERNAME=your-username
CALDAV_PASSWORD=your-password
# Optional: Calendar collection path (if different from default)
CALDAV_CALENDAR_PATH=/calendars/your-username/personal/
# Optional: Task/Todo collection path
CALDAV_TASKS_PATH=/calendars/your-username/tasks/
# Development settings
RUST_LOG=info