Imported from yzx9/aim (
core/AGENTS.md). Install upstream withnpx skills add yzx9/aim --skill core. Copyright stays with the author.
Core Module
The core module is the foundation of the AIM calendar application, providing all the essential functionality for managing events and todos. It handles calendar operations, data persistence, configuration management, and integration with the iCalendar standard.
Main Components
Aim (src/aim.rs)
The central application interface that coordinates all calendar operations:
- Manages the application lifecycle and configuration
- Handles database initialization and connection
- Provides CRUD operations for events and todos
- Integrates with the file system for .ics file management
- Manages short ID assignment and lookup
- Implements calendar synchronization from disk
Event System (src/event.rs)
Manages calendar events and related operations:
Eventtrait for event abstractionEventDraftfor creating new eventsEventPatchfor partial event updatesEventStatusenum with standard iCalendar valuesEventConditionsfor filtering events
Todo System (src/todo.rs)
Manages todo items and related operations:
Todotrait for todo abstractionTodoDraftfor creating new todosTodoPatchfor partial todo updatesTodoStatusenum with standard iCalendar valuesTodoConditionsand sorting options for querying
Code Standards
- Extensive tracing instrumentation for debugging
- Strict adherence to iCalendar RFC 5545 standards
Common Development Tasks
# Add a new database migration
just migrate-add <name>
