My personal development environment configuration. Optimized for full-stack TypeScript/Node.js development on macOS.
| File | Description |
|---|---|
.zshrc |
Shell aliases, functions, and environment setup |
.gitconfig |
Git aliases, defaults, and editor config |
.ssh_config |
SSH config template with port forwarding for Elasticsearch and Kibana |
killport <port> — Kill whatever process is holding a port hostage.
killport 3001whatsport <port> — See what's running on a port before killing it.
whatsport 3000mkcd <dir> — Create a directory and cd into it in one step.
mkcd my-new-projectgcm "<message>" — Stage everything and commit in one command.
gcm "fix: resolve auth token expiry"ghopen — Open the current repo on GitHub in your browser.
ghopengit lg # Visual branch graph (oneline, decorated)
git undo # Undo last commit, keep changes staged
git staged # Diff of what's staged
git contributors # Ranked list of contributors by commit count# Clone
git clone git@github.com:koltvictor/dotfiles.git ~/dotfiles
cd ~/dotfiles
# Symlink (or copy) to home directory
ln -sf ~/dotfiles/.zshrc ~/.zshrc
ln -sf ~/dotfiles/.gitconfig ~/.gitconfig
# Reload shell
source ~/.zshrcFor SSH config, copy .ssh_config to ~/.ssh/config and update HostName with your actual server IP.
A development environment should be invisible — fast enough, quiet enough, and opinionated enough that you stop thinking about it and start thinking about the problem.