aimcal

Crates.ioaimcal
lib.rsaimcal
version0.11.0
created_at2025-07-23 05:21:44.525808+00
updated_at2026-01-17 17:19:23.462536+00
descriptionAIM - Analyze. Interact. Manage Your Time, with calendar support
homepagehttps://github.com/yzx9/aim
repositoryhttps://github.com/yzx9/aim
max_upload_size
id1764365
size116,074
Zexin Yuan (yzx9)

documentation

https://docs.rs/aimcal/

README

AIM

Analyze. Interact. Manage Your Time, with calendar support

AIM is your intelligent assistant for managing time and tasks. It analyzes your schedule using AI-driven insights, interacts naturally to understand your needs and preferences, and enables you to manage your time with clarity, control, and confidence.

Built on the iCalendar standard (RFC 5545) and compatible with CalDAV servers like Radicale, AIM ensures interoperability and flexibility across systems. From smart reminders to personalized insights, AIM helps you work smarter, not harder.

What AIM Provides

AIM is more than just a calendar tool—it's a comprehensive platform consisting of:

Core Library

A comprehensive Rust library providing the foundation for calendar and task management, with:

  • Event and todo data models and management
  • Local SQLite storage with efficient querying
  • Timezone-aware datetime handling
  • Configuration management
  • Short ID mapping for efficient references

Comprehensive RFC 5545 Library

A robust Rust library for reading and writing iCalendar (RFC 5545) data with:

  • Full RFC 5545 specification compliance
  • RRULE (recurrence rule) support for recurring events
  • Type-safe parsing and serialization
  • Zero-copy parsing for optimal performance
  • Extensive error reporting

Command-Line Interface

An intuitive CLI for power users who prefer terminal-based workflows, featuring:

  • Quick event and todo management
  • Interactive TUI mode
  • Multiple output formats (table, JSON)
  • Shell completion support

Chat Interface (Planned)

Natural language interface for interacting with your calendar through conversation, powered by LLMs for intelligent command parsing and execution.

REST API (Planned)

A complete web API for programmatic access, enabling:

  • Third-party integrations
  • Webhook support
  • CalDAV synchronization
  • Cross-platform accessibility

Features

Built on top of the core libraries, AIM delivers these key capabilities:

  • RFC 5545 Compliance: Full iCalendar standard support ensuring compatibility with Google Calendar, Apple Calendar, Outlook, and other calendar applications
  • High-Performance Parsing: Zero-copy parsing with the aimcal-ical library for efficient iCalendar data processing
  • Recurring Events: RRULE support for complex recurring patterns (daily, weekly, monthly, yearly, and custom schedules)
  • Interactive TUI: Terminal-based user interface with keyboard navigation for efficient calendar management
  • Smart Queries: Filter and search events by date, location, summary, and custom properties with convenient short numeric IDs for quick event and todo references
  • Cross-Platform: Runs on Linux, macOS, and Windows with consistent behavior
  • Developer-Friendly: Modular library design lets you use individual components in your own Rust projects

Usage

▶️ Run with Cargo

To run the CLI using Cargo:

cargo install aimcal
aim --help

❄️ Run with Nix

nix run . -- --help

Goals

  • Enable command-line calendar management: Perform queries and manage events and todos directly from the CLI.
  • Leverage LLMs for intelligent assistance: Offer smart scheduling and reminder suggestions tailored to user preferences.
  • Integrate with external systems: Support CalDAV providers and expose Webhook/REST APIs for triggers and calendar access.

Roadmap

📅 Calendar Features

  • Listing events and todos
  • Creating and editing events and todos
  • Undo history editing
  • Full text search (grepping)
  • Recurring events
  • TUI: Markdown support

🤖 AI Capabilities

  • AI operations: parse and execute user commands on calendar
  • Intelligent suggestions
  • Personalized experience

🔌 Integrations

  • CalDAV support
  • Webhook/REST API

Acknowledgements

We'd like to thank all FOSS projects, particularly:

  • khal - A CLI calendar application
  • todoman - A simple task manager
  • icalendar - icalendar library, in Rust of course

Their work has been a significant inspiration for AIM's design and functionality.

Contribution

Any help in the form of descriptive and friendly issues or comprehensive pull requests are welcome!

Please check out CONTRIBUTING.md for guidelines.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in AIM by you, as defined in the Apache-2.0 license, without any additional terms or conditions.

Thanks goes to these wonderful people:

Contributors

LICENSE

This work is licensed under a Apache-2.0.

Copyright (c) 2025-2026, Zexin Yuan

Commit count: 582

cargo fmt