| aim-terminal | ||
| .gitignore | ||
| LICENSE.txt | ||
| README.md | ||
AIM Messenger
A customized fork of zulip-terminal with Warframe 1999 KIM sound effects and (very vaguely) color palette.
(Tech) Disclaimer(s)
- This will likely not be updated past zulip-term 0.7.0, but as it hasn't been updated since 2022, I assume that doesn't have that heavy a risk of happening.
- This is absolutely worse than zulip-terminal in terms of actually being functional, lightweight, and unintrusive.
- The performance is worse, and it does not close and open on a dime.
- Note however, that it is not meant to be those things, it's meant to be fun.
- A large portion of the coding for this was done using Anthropic's Claude Code.
- If that makes you not want to use it, that is your call to make. My job is to be transparent.
(Legal) Disclaimer
While this is not in any way covered by any copyright protection, I will pray for the good graces of DE and the Warframe team to consider this fanart/transformative work, and not smite me to smithereens for pulling sound effects from ther game. This project will absolutely never make any money, and the files for the sound effects were sourced externally. No datamining, or anything similar, was done by me or by my request.
Installation
git clone https://git.arcsnet.dev/arc/aim
cd aim/aim-terminal
./install.sh
Then add aim to your PATH if prompted (one-time setup):
export PATH="$HOME/.local/bin:$PATH"
Add that line to your ~/.bashrc or ~/.zshrc to make it permanent.
Usage
aim
Uninstallation
cd aim/aim-terminal
./uninstall.sh
Updating
cd aim/aim-terminal
./uninstall.sh
git pull
./install.sh
Changes from zulip-terminal
| Feature | zulip-terminal | AIM Messenger |
|---|---|---|
| Package Name | zulip-term |
aim-zulip-term |
| CLI Command | zulip-term |
aim |
| Theme | Multiple themes | Custom "Messenger" theme |
| Color Palette | Standard | Modified...? |
| Sound Effects | None | Full sound system (pygame) |
| Notification Sound | System only | Custom notification chime |
| Exit Animation | Instant close | Animated "Logging off..." fade |
| Exit Prompt | "Exit Zulip Terminal?" | "Exit AIM?" |
Notifications
Notifications are disabled by default. When enabled, they fire for all incoming private messages, stream messages where you're mentioned, and stream messages on channels with desktop notifications toggled on. The notification sound always plays alongside the desktop notification.
Enable for a single session:
aim --notify
To enable permanently, add to ~/.zuliprc:
[zterm]
notify = enabled
There is no in-app toggle that saves the setting — the zuliprc entry is the only persistent option.
Sound System
The sound system uses pygame for cross-platform audio:
| Sound Type | Trigger |
|---|---|
| Login | App startup |
| Logout | App exit |
| Loop | Background ambient (3s delay, fades in) |
| Hover | Navigation between items/panels |
| Select | Opening compose box, menu selections |
| Open | Opening channels/users |
| Close | Closing channels (escape) |
| Notification | New message notifications |
Volume Control
| Action | Key |
|---|---|
| Volume down (−5%) | [ |
| Volume up (+5%) | ] |
| Toggle ambient loop | \ |
Volume is saved automatically to ~/.zuliprc and persists across sessions. To set a startup default, either use the key bindings once or add to ~/.zuliprc:
[zterm]
volume = 75
Or pass it on launch:
aim --volume 75
Color Palette
| Color | Hex | Usage |
|---|---|---|
| Sage | #6f8b7c |
User names, non-white UI |
| Dark Sage | #3e4d45 |
Borders, outlines |
| Silver | #c8c8c8 |
Main text |
| Indigo | #5050b9 |
Headers, highlights |
| Dark Indigo | #3a3a8a |
Selection highlighting |
| Burgundy | #792c23 |
Errors, reactions |
| Light Burgundy | #a04a40 |
Help menu, mentions |
| Note: this is... not 100% accurate 100% of the time, both documentation-wise, and color-wise. |
Credits
- Zulip - For creating zulip-terminal, the actual functional software this project wraps with bloat. Oh, and for... creating the platform that the software is for.
- Warframe - For inspiration to make this, and the sound effects from the Kinemantic Instant Messenger (KIM). THE GREAT DESPAIR and The Great KIM are collectively eating away my gray matter.
- Claude Code – For amending the fact I am dogshit at coding, as I am good at planning and understanding exactly what has to be done and why, but not how.
- Discord, for enshittifying beyond use and letting me find a notably more fun communication medium.
- Windows 11, for being dogshit and wasting 2 hours of my time trying to make this run on that godforsaken OS.
License
Apache License 2.0 (inherited from zulip-terminal)