π The easiest way to set up and manage your Zsh environment
Awesome-Lazy-Zsh is a powerful yet simple tool that automates your Zsh setup with plugins, themes, and configurations. Perfect for developers who want a beautiful, functional terminal without the hassle.
- π Smart Plugin Management - Install, update, and manage 40+ popular plugins
- π¨ Theme Customization - Choose from popular themes like Spaceship, Powerlevel10k
- πΎ Backup & Restore - Automatic
.zshrcbackups before any changes - π₯οΈ Interactive CLI - Beautiful, user-friendly setup wizard
- π§ Auto Dependencies - Installs Git, Node.js, Homebrew automatically
- ποΈ Database Services - MongoDB, PostgreSQL, MySQL, Redis, RabbitMQ, Elasticsearch, Memcached
- βοΈ Cloud CLI Tools - AWS, Google Cloud, Azure shortcuts
- π³ DevOps Tools - Kubernetes, Docker Compose, Terraform, Ansible
- π» Language Support - Python, Go, Rust, Node.js, Java
- π οΈ Productivity - Git extras, SSH manager, directory shortcuts, history search
- π Cross-Platform - Full support for macOS, Linux, and Windows (WSL)
- Quick Start
- Installation Options
- Available Plugins
- Available Themes
- System Requirements
- Contributing
brew install amjaradat01/awesome-lazy-zsh/awesome-lazy-zsh
awesome-lazy-zshgit clone https://github.com/AmJaradat01/awesome-lazy-zsh.git && cd awesome-lazy-zsh && ./setup.sh| Option | Description |
|---|---|
| π Fresh Installation | Choose your own plugins and themes |
| β‘ Default Installation | Pre-configured setup for developers |
| π Update Plugins | Keep everything current |
| π Manage Profiles | Switch between configurations |
| π Custom Plugins | Add plugins from any Git repository |
| Plugin | Description | Aliases |
|---|---|---|
mongodb |
MongoDB Community | mongo-start, mongo-stop, mongo-local |
postgresql |
PostgreSQL Server | pg-start, pg-stop, pg-local, pg-list |
mysql |
MySQL Server | mysql-start, mysql-stop, mysql-local |
redis |
Redis Server | redis-start, redis-stop, redis-ping |
rabbitmq |
RabbitMQ Server | rabbitmq-start, rabbitmq-queues |
elasticsearch |
Elasticsearch | es-start, es-health, es-indices |
memcached |
Memcached | memcached-start, mc-stats |
| Plugin | Description | Aliases |
|---|---|---|
aws |
AWS CLI | aws-whoami, aws-profile, ec2-list, s3-ls |
gcloud |
Google Cloud | gc-auth, gc-vms, gc-buckets |
azure |
Azure CLI | az-login, az-vms, az-aks |
| Plugin | Description | Aliases |
|---|---|---|
kubernetes |
Kubernetes/kubectl | kgp, kgs, kctx, kns, klogs |
docker-compose-extended |
Docker Compose | dcu, dcd, dcl, dcps |
terraform-extended |
Terraform | tfi, tfp, tfa, tfw |
ansible |
Ansible | ap, av, ag, aping |
| Plugin | Description | Aliases |
|---|---|---|
python |
Python/venv | venv-create, va, vd, pip-freeze |
golang |
Go | gob, gor, got, gomod |
rust |
Rust/Cargo | cb, cr, ct, cf |
node |
Node/NPM/Yarn | ni, nr, yi, pi |
java |
Java/Maven/Gradle | mci, gwb, java11, java17 |
| Plugin | Description | Aliases |
|---|---|---|
git-extras |
Extended Git | gst, grbi, gcp, gundo, gsync |
ssh |
SSH Manager | ssh-keygen-ed, ssh-copy-key, ssh-agent-start |
dotenv |
Dotenv Loader | dotenv, env-load, env-show |
directories |
Directory Shortcuts | .., ..., mkcd, bookmark, goto |
history-search |
History Search | hg, fh, htop10 |
extract |
Archive Extraction | extract, mktar, mkzip |
| Plugin | Description |
|---|---|
git |
Git shortcuts and info |
git-flow |
Git Flow workflow |
docker |
Docker commands |
docker-compose |
Docker Compose |
kubectl |
Kubernetes CLI |
terraform |
Terraform |
nvm |
Node Version Manager |
npm |
NPM shortcuts |
vscode |
VS Code integration |
| Plugin | Description |
|---|---|
zsh-autosuggestions |
Command suggestions |
zsh-syntax-highlighting |
Syntax highlighting |
zsh-autocomplete |
Auto-completion |
fzf |
Fuzzy finder |
z |
Smart directory jumping |
thefuck |
Correct previous commands |
| Theme | Description | Speed | Customization |
|---|---|---|---|
spaceship |
Modern, feature-rich | β‘β‘β‘ | π¨π¨π¨ |
powerlevel10k |
Fastest, most customizable | β‘β‘β‘β‘ | π¨π¨π¨π¨ |
starship |
Cross-shell, Rust-powered | β‘β‘β‘β‘ | π¨π¨π¨ |
agnoster |
Clean, git-aware | β‘β‘β‘ | π¨π¨ |
robbyrussell |
Simple, fast default | β‘β‘β‘β‘ | π¨ |
- β macOS (Intel & Apple Silicon)
- β Linux (Ubuntu, Debian, CentOS, Fedora, etc.)
- β Windows (WSL2, Git Bash, Cygwin)
All plugins automatically detect your OS and use the appropriate commands:
- macOS: Homebrew services (
brew services) - Linux: systemd (
systemctl) - Windows: Native services (
net start/stop)
- Git (for plugin management)
- Node.js (for CLI interface)
- Homebrew (macOS/Linux package manager)
- Oh My Zsh (Zsh framework)
- β iTerm2 (macOS)
- β Terminal.app (macOS)
- β GNOME Terminal (Linux)
- β Windows Terminal (Windows)
- β VS Code Terminal
- β Any Zsh-compatible terminal
Save and switch between different configurations:
# Save current setup as a profile
./setup.sh β "Manage profiles" β "Save current as profile"
# Switch between profiles
./setup.sh β "Manage profiles" β "Switch profile"Example Profiles:
- Work: docker, kubernetes, aws, terraform
- Personal: git, node, python, fzf
- Minimal: git, z, zsh-autosuggestions
- π΄ Fork the repo
- πΏ Create feature branch:
git checkout -b feature/amazing-feature - πΎ Commit changes:
git commit -m 'Add amazing feature' - π€ Push branch:
git push origin feature/amazing-feature - π Open Pull Request
Ideas Welcome:
- New plugin integrations
- Theme improvements
- System compatibility
- Documentation updates
MIT License - feel free to use in personal and commercial projects!
Made with β€οΈ for developers who love beautiful, functional terminals
β Star this repo if it helped you! β