Cross-workstation alias manager for bash and zsh
Project description
🚀 Turboalias
Cross-workstation alias manager for bash and zsh
Turboalias is a simple, powerful tool to manage your shell aliases across multiple workstations. Store your aliases in a clean JSON config, organize them by category, and sync them easily.
✨ Features
- 🎯 Simple CLI - Easy commands to add, remove, and list aliases
- ⚡ Auto-Reload - Changes apply instantly without manual shell reload
- 📁 Category Support - Organize aliases by category (git, docker, navigation, etc.)
- 📥 Import Existing - Import your current shell aliases
- 🔄 Git Sync - Sync aliases across machines using Git
- 🐚 Multi-shell - Works with both bash and zsh
- 📝 JSON Config - Clean, editable configuration file
- 🎨 Clean Output - Aliases organized by category in your shell
🖥️ Supported Platforms
| Platform | Shells | Status |
|---|---|---|
| macOS | bash, zsh | ✅ Fully supported |
| Linux | bash, zsh | ✅ Fully supported |
| Windows | WSL (bash, zsh) | ✅ Via WSL |
📦 Installation
Via pip (recommended)
pip install turboalias
### From source
```bash
git clone https://github.com/mcdominik/turboalias.git
cd turboalias
pip install -e .
🚀 Quick Start
1. Initialize turboalias
turboalias init
2. Add some aliases
turboalias add ll 'ls -lah'
turboalias add gst 'git status' --category git
turboalias add gco 'git checkout' --category git
turboalias add dps 'docker ps' --category docker
turboalias add hg 'history | grep'
3. Use your aliases!
ll
gst
dps
hg npm
📖 Usage
Initialize turboalias
turboalias init
Add an alias
turboalias add <name> <command> [--category <category>]
Examples:
turboalias add ll 'ls -lah'
turboalias add gst 'git status' -c git
Remove an alias
turboalias remove <name>
Example:
turboalias remove dps
⚡ Changes apply instantly! No need to reload your shell after removing aliases.
List aliases
# List all aliases
turboalias list
# List aliases in a category
turboalias list --category git
List categories
turboalias categories
Import existing aliases
turboalias import
Scans your current shell for aliases and imports them into turboalias
Clear all aliases
turboalias clear
Removes all turboalias-managed aliases (with confirmation)
Edit config directly
turboalias edit
Opens the config file in your $EDITOR (defaults to nano)
⚙️ Configuration
Turboalias stores its configuration in ~/.config/turboalias/:
| File | Purpose |
|---|---|
aliases.json |
Your aliases and categories |
aliases.sh |
Generated shell script (sourced by your shell) |
Config file format
{
"aliases": {
"ll": {
"command": "ls -lah",
"category": null
},
"gst": {
"command": "git status",
"category": "git"
}
},
"categories": {
"git": ["gst", "gco", "glog"]
}
}
You can edit this file directly with turboalias edit or manually.
💡 Why Turboalias?
| Benefit | Description |
|---|---|
| Instant Updates | Changes apply immediately without manual shell reload |
| Centralized Management | All your aliases in one place |
| Organized | Categories keep things tidy |
| Portable | Easy to backup and sync (just copy ~/.config/turboalias/) |
| Safe | Doesn't modify your existing aliases, creates a separate file |
| Transparent | Generated aliases.sh is human-readable |
| Cross-platform | Works seamlessly on macOS and Linux |
🗺️ Roadmap
- Git sync support for automatic syncing across machines
- Alias search functionality
- Shell completion support
- Export/import to different formats
- Alias templates and snippets
🤝 Contributing
Contributions welcome! Please feel free to submit a Pull Request.
📄 License
MIT License - see LICENSE file for details
👤 Author
Dominik - @mcdominik
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file turboalias-0.0.2.tar.gz.
File metadata
- Download URL: turboalias-0.0.2.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc27b80b6250fd2d1e548a1f9e491ff5656c6db0a85585bf2cc326ae457dee0c
|
|
| MD5 |
1647c84e0a1bf1f700db6971d82c43d5
|
|
| BLAKE2b-256 |
c866d6b04ea98017ad6c4ed7e36f2ce9a226f3298e5a5ba9432957f693c0e8b4
|
File details
Details for the file turboalias-0.0.2-py3-none-any.whl.
File metadata
- Download URL: turboalias-0.0.2-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
232a4cc9508c552cadebcd710eb67c091b25f148bdf8f4f2f3c31e10945398f6
|
|
| MD5 |
13214fd537a9acb4e0204cb7402a87d4
|
|
| BLAKE2b-256 |
773256e1009270052e1a96413d17b0c4b53e02d063392552fc10d842c602c35c
|