🌌 Elegant dotfiles for the modern developer | Powered by GNU stow
🎨 A meticulously crafted development environment featuring:
- 🚀 Blazing-fast ZSH setup with custom plugins
- 🎯 Neovim config with LSP & treesitter
- 🖥️ Beautiful terminal setup (Kitty, Tmux)
- 🎮 Git-centric workflow with LazyGit
- 🌟 Tokyo Night theme across all tools
✨ Zero-friction setup for macOS development environment
- Shell Configuration
.zshrc- ZSH shell configuration- Custom ZSH configurations in
.config/zsh/
- Development Tools
.gitconfig- Git configuration.vimrc- Vim configurationnvim/- Neovim configuration.tmux.conf- Tmux configuration
- Terminal Utilities
kitty/- Kitty terminal configurationstarship.toml- Starship prompt configurationbat/- Bat (cat alternative) configurationeza/- Eza (ls alternative) configurationlazygit/- LazyGit configurationyazi/- Yazi file manager configurationfastfetch/- System information tool configuration
Terminal Utilities
| Alias | Command | Description |
|---|---|---|
c |
clear |
Clear terminal screen |
t |
eza --color=always --long --git --icons=always --no-time --group-directories-first |
List files with git info and icons |
man |
batman |
Open man pages with bat |
Navigation
| Alias | Command | Description |
|---|---|---|
dev |
cd ~/Developer |
Navigate to Developer directory |
.. |
cd .. |
Navigate to parent directory |
Terminal Multiplexers
| Alias | Command | Description |
|---|---|---|
tm |
tmux |
Open Tmux |
tms |
tmux-sessionizer |
Open Tmux session picker |
Development Tools
| Alias | Command | Description |
|---|---|---|
lg |
lazygit |
Open LazyGit |
yz |
yazi |
Open Yazi file manager |
System Configuration
| Alias | Command | Description |
|---|---|---|
zs |
source ~/.zshrc |
Reload ZSH configuration |
| Function | Description | Usage |
|---|---|---|
nmg |
Migrate npm global packages to new Node.js version | nmg version |
These need to be installed manually:
- Zsh - Shell
- Zinit - Zsh plugin manager
- Kitty - Terminal emulator
- Tmux - Terminal multiplexer
- fzf - Fuzzy finder
- fd - File finder
- bat - Cat clone with syntax highlighting
- eza - Modern ls replacement
- zoxide - Smarter cd command
- starship - Cross-shell prompt
- fnm - Fast Node.js version manager
- gh - GitHub CLI
- git - Version control
- lazygit - Git TUI
- yazi - Terminal file manager
- 1Password CLI - Password manager CLI
- Neovim - Text editor
- ripgrep - Fast text search
Before installation, ensure you have:
- macOS installed
- Command Line Tools for Xcode:
xcode-select --install - Homebrew package manager
- GNU stow:
brew install stow
- Clone this repository:
git clone https://github.com/your-username/dot.files.git ~/.dotfiles
cd ~/.dotfiles- Create symlinks using GNU stow:
./link.shThis will:
- Back up any existing dotfiles
- Create symbolic links in your home directory
- Set up all configurations (zsh, tmux, neovim, etc.)
- Reload your shell:
source ~/.zshrc- Install Zinit for ZSH plugin management:
bash -c "$(curl --fail --show-error --silent --location https://raw.githubusercontent.com/zdharma-continuum/zinit/HEAD/scripts/install.sh)"- Install required dependencies:
brew install kitty tmux fzf fd bat eza zoxide starship fnm gh lazygit yaziRemove all symlinks created by GNU stow:
./unlink.sh- Remove Homebrew packages (optional):
# List all installed packages first
brew leaves
# Remove specific packages
brew uninstall kitty tmux fzf fd bat eza zoxide starship fnm gh lazygit yazi ...Clean up remaining configuration files:
# Remove ZSH configuration
rm -rf ~/.zshrc ~/.zsh_history ~/.zinit
# Remove tool-specific configs
rm -rf ~/.config/kitty
rm -rf ~/.config/nvim
rm -rf ~/.config/tmux
rm -rf ~/.config/yazi
rm -rf ~/.config/starship.toml
...