A comprehensive, AI-enhanced development environment designed for polyglot developers working with multiple projects simultaneously.
- π§ AI-First Development: Deep integration with Claude, GitHub Copilot, and multiple LLM providers
- π Project Management: Custom Hubworld system for seamless project switching with worktree management
- β‘ Automation: Extensive shell functions and scripts for common development workflows
- π¨ Unified Theming: Gruvbox/Gruvbox Material theme across all tools
- π§ Modern Toolchain: Neovim, Tmux, Zsh, Raycast, and cutting-edge development tools
- π± macOS Integration: Custom Raycast extensions and native macOS workflow optimization
- Neovim - Highly customized editor with extensive plugin ecosystem
- Zed Editor - Modern editor with AI integration and custom MCP servers
- Tmux - Terminal multiplexer with session management via Tmuxinator
- Zsh - Enhanced shell with Oh My Zsh and custom functions
- Claude - AI assistant with custom hooks and review workflows
- GitHub Copilot - AI coding assistant
- Code Companion - Neovim LLM integration
- LLM CLI - Command-line interface for various language models
- Raycast - Productivity launcher with custom extensions
- Aerospace - Tiling window manager
- SketchyBar - Custom menu bar
- Starship - Modern shell prompt with Gruvbox theme
- Ghostty - Terminal emulator with custom theming
- Btop - System resource monitor
- macOS (primary target)
- Xcode Command Line Tools
- Homebrew
# Clone the repository
git clone https://github.com/SheltonTolbert/dot-files.git ~/.dotfiles
# Install dependencies and create symlinks
~/.dotfiles/installThe install script will:
- Install Xcode Command Line Tools
- Install Homebrew packages and casks
- Download and install Nerd Fonts
- Set up Oh My Zsh
- Install Tmux Plugin Manager
- Install Vim-Plug for Neovim
- Create symbolic links for all configuration files
After installation, you'll need to:
- Set your terminal font to "Hack Nerd Font" or similar
- Install Tmux plugins:
prefix + Iin Tmux - Install Neovim plugins:
:PlugInstallin Neovim - Configure your API keys in
~/.zsh_api_keys
# Update symlinks without reinstalling dependencies
~/.dotfiles/updatesrc/
βββ .config/
β βββ nvim/ # Neovim configuration
β β βββ lua/
β β β βββ config/ # Core configurations
β β β βββ lsp/ # Language server configs
β β β βββ plugins/ # Plugin configurations
β β βββ init.vim # Entry point
β βββ zsh/ # Zsh configuration
β β βββ .zsh_config # Oh My Zsh setup
β β βββ .zsh_aliases # Custom aliases
β β βββ .zsh_functions # Advanced functions
β βββ tmuxinator/ # Tmux session templates
β βββ raycast/ # Custom Raycast extensions
β βββ hubworld/ # Project management system
β βββ worktree/ # Git worktree management
βββ .zshrc # Shell configuration
βββ .tmux.conf # Tmux configuration
βββ .aerospace.toml # Window manager config
βββ .gitconfig # Git configuration
βββ .gitignore # Global Git ignore
Custom Neovim plugin for managing multiple projects:
- Project Switching: Seamless navigation between projects with state preservation
- Git Worktree Integration: Automatic worktree management for parallel development
- Notes System: Branch-specific note-taking with automatic organization
- Telescope Integration: Fuzzy finding across projects and notes
- Code Review: Automated Claude-powered code review with custom hooks
- Commit Messages: AI-generated commit messages based on diff analysis
- Documentation: Automated documentation generation and updates
- Debugging: AI-assisted debugging and error resolution
- Jira Integration: Create branches from tickets, manage sprint issues
- Worktree Management: Register, create, and navigate git worktrees
- Project Automation: Automated project setup and configuration
- Development Workflows: Streamlined testing, building, and deployment
- Spotify Control: Full Spotify integration with playback control
- Aerospace Window Management: Custom window switching and management
- Slack Integration: Message search and management
- System Monitoring: Process management and system utilities
Alt + H/J/K/L- Navigate windowsAlt + Shift + H/J/K/L- Move windowsAlt + /- Toggle horizontal/vertical layoutAlt + ,- Toggle accordion layoutAlt + Shift + ;- Enter service mode
Prefix + H/J/K/L- Navigate panesPrefix + C-H/J/K/L- Navigate with vim awarenessPrefix + F- FZF session switcherPrefix + U- URL openerPrefix + B- Session switcher
<Leader>ff- Find files with Telescope<Leader>fg- Live grep with Telescope<Leader>fb- Buffer switcher<Leader>fh- Help tags<Leader>pp- Project switcher (Hubworld)<Leader>pn- Project notes (Hubworld)
- TypeScript/JavaScript:
typescript-language-server - Python:
pyright - Go:
gopls - Elixir:
lexical - Rust:
rust-analyzer - Lua:
lua-language-server - JSON/CSS/HTML:
vscode-langservers-extracted
- Testing: Neotest framework with language-specific adapters
- Formatting: Prettier, Black, gofmt, mix format
- Linting: ESLint, Credo, golangci-lint
- Debugging: DAP (Debug Adapter Protocol) support
brew install lua ripgrep btop git-delta tmux nvim node
brew install --cask raycast font-hack-nerd-font nikitabobko/tap/aerospacenpm install -g vscode-langservers-extracted typescript typescript-language-serverThe entire environment uses a cohesive Gruvbox/Gruvbox Material theme:
- Terminal: Ghostty with Gruvbox Material Dark
- Editor: Neovim with gruvbox-material
- Shell: Starship with custom Gruvbox prompt
- System Monitor: Btop with Gruvbox theme
- UI: Consistent color scheme across all tools
This is primarily a personal dotfiles repository, but contributions are welcome:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
MIT License - feel free to use and modify as needed.
- Built with Dotbot for configuration management
- Inspired by the Unix philosophy and modern development practices
- Special thanks to the open-source community for the amazing tools