Personal dotfiles repository containing configurations for development tools, window managers, terminal emulators, and various CLI utilities.
This repository uses Dotter for managing symlinked configurations across macOS.
# Deploy all configurations
dotter deploy default
# Preview what would be deployed (dry run)
dotter deploy --dry-run- nvim/ - Neovim configuration with LazyVim framework
- cursor/ - Cursor editor settings and keybindings
- git/ - Git global configuration
- lazygit/ - Git TUI configuration
- prettier/ - Prettier formatting rules
- zsh/ - Zsh configuration with modular setup
- tmux/ - Tmux terminal multiplexer configuration
- ghostty/ - Ghostty terminal configuration
- yabai/ - Tiling window manager configuration
- skhd/ - Simple hotkey daemon for keyboard shortcuts
- hammerspoon/ - Lua-based automation and window management
- karabiner/ - Keyboard customization and key remapping
- raycast/ - Raycast launcher and productivity tool configuration
- homebrew/Brewfile - Package management with extensive tool collection
- espanso/ - Text expansion tool configuration
- ripgrep/ - Search tool configuration
- mitmproxy/ - HTTP/HTTPS proxy tool keybindings
The Neovim setup includes 100+ carefully curated plugins organized by category. See nvim/README.md for complete documentation.
# Deploy all configurations
dotter deploy default
# Preview what would be deployed (dry run)
dotter deploy --dry-run
# Undeploy configurations
dotter undeploy# Install/update all Homebrew packages
brew bundle --file=homebrew/Brewfile
# Install missing packages only
brew bundle check --file=homebrew/Brewfile || brew bundle --file=homebrew/BrewfileA launchd job runs update-packages every 4 hours to update brew, npm, pnpm, and bun. After deploying with dotter, load the job:
launchctl load ~/Library/LaunchAgents/com.kevin.update-packages.plistManual update: ua (alias) or update-packages
Logs: ~/.local/log/update-packages.log
# Sync plugins after config changes
nvim --headless "+Lazy sync" +qa
# Check health for missing dependencies
nvim --headless "+checkhealth" +qaSee AGENTS.md for detailed guidance on working with this repository.
MIT