"A developer's environment is their most personal tool."
My macOS dev machine configuration — batteries included, opinions strong.
██████╗ ██████╗ ████████╗███████╗██╗██╗ ███████╗███████╗
██╔══██╗██╔═══██╗╚══██╔══╝██╔════╝██║██║ ██╔════╝██╔════╝
██║ ██║██║ ██║ ██║ █████╗ ██║██║ █████╗ ███████╗
██║ ██║██║ ██║ ██║ ██╔══╝ ██║██║ ██╔══╝ ╚════██║
██████╔╝╚██████╔╝ ██║ ██║ ██║███████╗███████╗███████║
╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝
One command to rule them all:
curl https://raw.githubusercontent.com/davidnussio/dotfiles/master/scripts/install.sh | bashdotfiles/
├── Brewfile # All CLI tools & macOS apps via Homebrew
├── install.sh # Bootstrap script
├── git/
│ ├── .gitconfig # Git config with delta, aliases, signing
│ └── .gitignore_global # Global gitignore
├── config/
│ ├── fish/ # Fish shell — config, functions, completions
│ ├── nvim/ # Neovim config (lazy.nvim)
│ ├── starship.toml # Starship prompt
│ ├── mise/ # mise-en-place runtime manager
│ └── topgrade.toml # Topgrade updater config
└── Application Support/
└── com.mitchellh.ghostty/ # Ghostty terminal config
| Layer | Tool |
|---|---|
| Shell | Fish + Starship |
| Terminal | Ghostty |
| Editor | Neovim (lazy.nvim) + VSCode |
| Multiplexer | tmux |
| Package manager | Homebrew |
| Runtime manager | mise |
| File navigation | yazi + zoxide + fzf |
| Git TUI | lazygit + delta |
ls |
eza |
cat |
bat |
find |
fd |
grep |
ripgrep |
| HTTP | xh + hurl |
| Load testing | oha |
| Kubernetes | k9s + kubectx + stern |
| Security | trufflehog + trivy |
See cheatsheet.md for all keybindings, aliases, and abbreviations.
MIT