Your Calendar.
From the terminal.

A native macOS Calendar CLI. Powered by EventKit, built with Go.

Terminal
$ |

Designed for how you work

Manage your macOS Calendar entirely from the command line.

3000x Faster Reads

Direct EventKit bindings via cgo. No AppleScript, no IPC overhead. Native memory access to the Calendar store.

Single Binary

EventKit compiled directly into the Go binary via cgo. No external dependencies. Just go install and go.

Natural Language Dates

"tomorrow at 3pm", "next friday", "in 2 hours", "eod" — a built-in parser understands 20+ date patterns.

Interactive Mode

Guided forms for creating and editing events. Searchable event picker for quick selection without memorizing IDs.

Import & Export

JSON, CSV, and ICS export. JSON and CSV import with dry-run preview. Back up or migrate your calendar data.

Full CRUD + Recurrence

Create, read, update, and delete events. Daily, weekly, monthly, yearly recurrence with flexible day selection.

Install in seconds

One command. No dependencies.

Recommended
$ curl -fsSL https://ical.sidv.dev/install | bash
Downloads the latest release binary and installs to /usr/local/bin.
Requires Go 1.21+ & Xcode CLT
$ go install github.com/BRO3886/ical/cmd/ical@latest
Compiles from source via cgo. Needs Xcode CLT for EventKit framework headers.
Apple Silicon
$ curl -LO https://github.com/BRO3886/ical/releases/latest/download/ical-darwin-arm64.tar.gz tar xzf ical-darwin-arm64.tar.gz sudo mv ical /usr/local/bin/ical
Replace arm64 with amd64 for Intel Macs.