A collection of shell scripts and dotfiles to set up a new system as painlessly as possible.
Run the install script to symlink everything into place:
./dotfiles/install.sh| Component | Tool | Purpose |
|---|---|---|
| Plugin manager | antidote | Installs and loads zsh plugins |
| Prompt | Starship | Cross-shell prompt |
| Fuzzy finder | fzf | Fuzzy search for history (Ctrl+R), files (Ctrl+T), directories (Alt+C) |
| Directory jumper | zoxide | Smart cd replacement (z <partial-name>) |
| Env management | direnv | Auto-loads .envrc files per directory |
| Node manager | fnm | Fast Node.js version manager |
Tools are installed interactively when running ./dotfiles/install.sh.
An update check runs every 28 days on shell launch.
Managed via antidote in dotfiles/zsh_plugins.txt:
- zsh-autosuggestions -- inline command suggestions from history
- zsh-syntax-highlighting -- syntax highlighting as you type
- zsh-completions -- additional tab completions for common tools
- zsh-history-substring-search -- Up/Down arrows search history by substring
- zsh-safe-rm -- prevents dangerous
rmoperations - zsh-fnm -- auto-switches Node version on
cd - zsh-better-npm-completion -- improved npm tab completion
Create ~/.local.env.zsh for machine-specific environment variables, PATH entries, and completions. This file is sourced before plugins load and is not committed to the repo.