A beautiful terminal calendar for your daily life.
- Browse months with arrow keys, jump to any date
- Create, edit, and delete events
- See holidays for your country
- Get a fun "On This Day" historical fact each time you open it
git clone https://github.com/rtvkiz/cal.git
cd cal
python -m venv venv
source venv/bin/activate
pip install -e .Then just run:
calTo use cal from any directory:
mkdir -p ~/.local/bin
ln -sf $(pwd)/venv/bin/cal ~/.local/bin/calMake sure ~/.local/bin is in your PATH (add to your .bashrc or .zshrc):
export PATH="$HOME/.local/bin:$PATH"| Key | What it does |
|---|---|
| Arrow keys | Move around the calendar |
| Enter | Open the selected day |
| Escape | Go back |
a |
Add a new event |
e |
Edit an event |
x |
Delete an event |
n / p |
Next / Previous month |
t |
Jump to today |
1 2 3 |
Switch views (Month, Day, Agenda) |
q |
Quit |
- Press
a - Type a title
- Set the date (YYYY-MM-DD)
- Optionally add a time (HH:MM) and description
- Save
Your events are stored in ~/.cal/events.json.
The calendar shows holidays based on your country. Edit ~/.cal/config.json to change it:
{
"country": "US",
"subdivision": null,
"show_holidays": true
}Use any two-letter country code (US, GB, DE, IN, etc.). Set subdivision for state-specific holidays.
- Python 3.10+
MIT