Uses
A detailed overview of the software and tools I use daily for development work.
Development Environment
I spend most of my time in the terminal, where I write code, run tests, and deploy applications. This setup maximizes productivity while minimizing context switching.
Terminal Setup
All my terminal settings are in my dotfiles repository.
- WezTerm - GPU-accelerated terminal with SauceCodePro Nerd Font and SolarizedDark theme
- ZSH - Shell with Oh My Zsh and custom aliases
- tmux - Terminal multiplexer for managing sessions and windows
- Homebrew - macOS package manager
- mise - Unified tool version manager for Node.js, Ruby, Python, and others. It also allows me to set environment variables on a project basis.
- fzf - Command-line fuzzy finder that powers search in terminal and nvim
- ripgrep - Fast code search tool that respects gitignore
- docker + docker-compose + colima - Containerization for development environments
- Claude Code - AI assistant for coding tasks
Editor
Neovim is my primary editor, configured with:
- lazy.nvim - Plugin manager
- LSP configuration for Ruby, JavaScript, TypeScript, and Lua
- telescope.nvim - Fuzzy finder for files and code
- Treesitter for syntax highlighting and code navigation
- Custom keybindings for efficiency
My complete Neovim setup is organized by feature in my dotfiles repository.
Desktop Apps
- Google Chrome - Primary browser for development and general use
- Logseq - Knowledge management and note-taking with markdown support for organizing my ideas and work
- Spotify - Music and podcast streaming while coding
- Slack - Team communication and collaboration
- Tailscale - Secure network connectivity between devices for my homelab setup
Last updated on July 29, 2025.