My personal dotfiles for macOS with Catppuccin Mocha theme.
- Zsh Configuration - Custom
.zshrcwith Oh My Zsh, plugins, and aliases - Neovim Configuration - Full Neovim setup with Lazy.nvim
- Git Configuration - Global git settings
- Neofetch Configuration - Custom system information display
- Catppuccin Theme - Beautiful pastel theme for ZSH
- Brewfile - All Homebrew packages, casks, and Mac App Store apps
- VS Code Settings - Settings, keybindings, and snippets (extensions synced via GitHub)
- Oh My Zsh with useful plugins (git, z, fzf, macos, sudo, yarn, node, vscode, brew)
- Catppuccin Mocha theme for a beautiful terminal
- Syntax highlighting with zsh-syntax-highlighting
- Auto-suggestions with zsh-autosuggestions
- Custom aliases for common tasks
- SSH tunnel management functions
- Modern Neovim configuration with Lazy.nvim package manager
- Custom plugins including Neo-tree with tabs support
- macOS (tested on Apple Silicon)
- Git
-
Clone this repository:
git clone https://github.com/yourusername/dotfiles.git ~/Documents/GitHub/dotfiles cd ~/Documents/GitHub/dotfiles
-
Run the installation script:
./install.sh
The script will:
- Install Homebrew (if not already installed)
- Install Oh My Zsh
- Install all packages from Brewfile (includes zsh-syntax-highlighting, zsh-autosuggestions, fzf, neofetch, nvm, and more)
- Clone and setup Catppuccin ZSH theme
- Create symlinks from this repo to your home directory
- Backup any existing files before overwriting
-
Restart your terminal or source your zshrc:
source ~/.zshrc
| Source | Destination |
|---|---|
git/.gitconfig |
~/.gitconfig |
zsh/.zshrc |
~/.zshrc |
zsh/.zsh |
~/.zsh |
nvim/ |
~/.config/nvim |
neofetch/ |
~/.config/neofetch |
Brewfile |
~/Brewfile |
vscode/settings.json |
~/Library/Application Support/Code/User/settings.json |
vscode/keybindings.json |
~/Library/Application Support/Code/User/keybindings.json |
vscode/snippets/ |
~/Library/Application Support/Code/User/snippets/ |
Before using, update your git user information in git/.gitconfig:
[user]
name = Your Name
email = [email protected]The default theme is Catppuccin Mocha. To change the flavor, edit zsh/.zshrc:
CATPPUCCIN_FLAVOR="mocha" # Options: latte, frappe, macchiato, mochaThe .zshrc includes some work-specific SSH tunnel functions. You can:
- Remove them if not needed
- Customize them for your own use
- Add your own aliases and functions
Extensions are synced via GitHub's built-in Settings Sync feature. The repository only includes:
settings.json- All VS Code settingskeybindings.json- Custom keyboard shortcutssnippets/- Code snippets
To update your dotfiles:
-
Pull the latest changes:
cd ~/Documents/GitHub/dotfiles git pull
-
Since the files are symlinked, changes take effect immediately (you may need to restart your terminal or source
.zshrc)
To update Catppuccin theme:
cd ~/.config/catppuccin-zsh
git pullThe install script automatically backs up existing files before creating symlinks. Backups are named with timestamps (e.g., .zshrc.backup.20251126_143000).
To uninstall, simply remove the symlinks:
rm ~/.zshrc ~/.gitconfig ~/.config/nvim ~/.config/neofetch ~/.zsh
rm ~/.oh-my-zsh/custom/themes/catppuccin.zsh-themeThen restore your backups if desired.
The Brewfile contains all your Homebrew packages, casks, and Mac App Store apps. Key packages include:
zsh-syntax-highlighting- Syntax highlighting for ZSHzsh-autosuggestions- Fish-like autosuggestionsfzf- Fuzzy finderneofetch- System information toolnvm- Node Version Manager- And many more development tools and applications
Your terminal will look beautiful with the Catppuccin Mocha theme! 🎨
Feel free to use and modify these dotfiles for your own setup.
- Catppuccin - Soothing pastel theme
- Oh My Zsh - ZSH framework
- Neovim - Hyperextensible Vim-based text editor