| id | tags |
|---|---|
README |
ββββββ βββ βββ ββββββ ββββββ ββββββ βββ βββ
ββββ ββ βββ βββββββ βββββ β βββ β βββββ β β ββ
βββ β βββ βββββββ ββββββββ βββ βββ βββ β β
ββββ ββββ β ββββββββββββ ββββ β βββββββ β β β β
β βββββ β β βββββββββ β ββββββββββββ ββββββββ ββββ
β ββ β β βββββ ββββ β βββ ββ ββ ββ ββββββ β ββ β
β β βββ βββ ββ β β β β ββ β ββββ ββ β
β β β ββ ββ β ββ β β β
β β β β β β β β β
β β β
A curated collection of configuration files for a complete macOS development environment. This setup creates a beautiful, efficient, and highly customized workflow centered around tiling window management, terminal productivity, and modern development tools.
π Quick Start: Installation β’ π§ Components: Detailed Guide β’ β¨οΈ Keybinds: Reference β’ π Workflows: Integration Guide
| Document | Purpose | For |
|---|---|---|
| π Components Guide | Detailed documentation for all 15+ tools | Understanding each component |
| β¨οΈ Keybinds Reference | Complete keybindings across all tools | Quick reference and lookup |
| π Neovim Keybinds | Comprehensive Neovim mappings | Editor workflow mastery |
| π Workflow Guides | Cross-tool integration patterns | Learning tool combinations |
| π Claude Statusline Guide | Enhanced statusline interpretation | Reading context, cost, and session info |
| π§ Maintenance Guide | Validation, troubleshooting, updates | System reliability |
| π€ Claude Documentation | Claude Code specific guidance | AI-assisted development |
| π¨βπ» Agent Guidelines | Development and testing procedures | Contributing and maintenance |
- πͺ Tiling Window Management: HyprSpace with Dwindle layout (Hyprland-style binary tree tiling)
- π² Window Borders: JankyBorders for visual window separation
- π¨ Beautiful Terminal: Ghostty with custom shaders and Starship prompt
- β¨οΈ Advanced Key Remapping: Kanata with home row mods + Karabiner-Elements
- π System Monitoring: SketchyBar for elegant macOS menu bar replacement
- π Terminal Multiplexing: Tmux with Catppuccin theme and advanced plugins
- β‘ Modern Shell: Zsh with FZF, syntax highlighting, and intelligent completions
- π οΈ Development Ready: Neovim with extensive plugin ecosystem
dotfiles/
βββ aerospace/ # HyprSpace tiling window manager (dwindle layout)
βββ borders/ # JankyBorders window border configuration
βββ ghostty/ # Modern terminal emulator configuration
βββ kanata/ # Advanced keyboard remapper with home row mods
βββ karabiner/ # Keyboard remapping and shortcuts
βββ nvim/ # Neovim editor configuration
βββ sketchybar/ # macOS menu bar replacement
βββ starship/ # Cross-shell prompt themes
βββ tmux/ # Terminal multiplexer configuration
βββ zsh/ # Z shell configuration and plugins
Modern GPU-accelerated terminal with extensive customization:
- Font: MonaspiceNe Nerd Font family with ligatures
- Theme: Monokai Remastered with transparency and blur effects
- Features: GPU-accelerated rendering with blur effects
- Shortcuts: Global quick terminal toggle (
cmd+/)
Key Features:
- Font ligatures and stylistic sets (ss01-ss04, liga)
- Background blur and transparency effects
- macOS-specific optimizations
- Secure input handling
Sophisticated keyboard remapping with home row modifiers:
- Caps Lock: Escape on tap, Ctrl on hold
- Home Row Mods: Hold a/s/d/f/j/k/l/; for modifiers (Cmd/Alt/Shift/Ctrl)
- Right Shift: Backspace
- Tab: Hyper key (Cmd+Alt+Shift+Ctrl) on hold
- Apostrophe ('): ' on tap, Numbers layer on hold
- Forward slash (/): Regular / key (no layer)
- Right Cmd: Toggle home row mods on/off (tap to switch baseβvanilla layers)
- Timing: 200ms tap, 230ms hold thresholds
- Auto-start: LaunchDaemon runs at boot
- Status: β Active (PRIMARY)
Installed but currently unused:
- Status:
β οΈ simple_modificationsis empty - Kanata is the primary keyboard remapper
Aerospace fork with Hyprland-style binary tree tiling:
- Dwindle Layout: Automatic split direction based on window aspect ratio
- Wide areas β side-by-side split
- Tall areas β top-and-bottom split
- Configuration:
~/.hyprspace.toml(TOML format, same syntax as Aerospace) - Auto-start: Launches at login automatically
- SketchyBar Integration: Direct workspace callbacks for seamless integration
- Padding: 32px top padding for SketchyBar, 2px inner gaps
Key Features:
- Hyprland-style "psychic" splits - no manual direction needed
- Native window management without external dependencies
- Smart resize adapts to window position
- Workspace navigation:
cmd+j/k/lfor workspaces 1-3 - Window focus:
shift+ctrl+hjkl - Window movement:
shift+ctrl+alt+hjkl - Toggle fullscreen:
shift+ctrl+w - Service mode:
shift+alt+cmd+rfor advanced operations
Lightweight window border system for visual clarity:
- Active Window: Bright green border (
0xff00ff00) - Inactive Windows: Muted gray border (
0xff494d64) - Style: Rounded corners, 5px width
- Config:
~/.config/borders/bordersrc - Auto-start: Via HyprSpace
after-startup-command
Elegant and customizable macOS menu bar:
- Appearance: Top position, 40px height, blur effects
- Font: MonaspiceRn Nerd Font
- Modules: Spaces, front app, clock, volume, battery
- Integration: HyprSpace workspace indicators with instant updates
Feature-rich terminal session management:
- Prefix:
Ctrl+A(instead of default Ctrl+B) - Theme: Catppuccin Mocha with custom status line
- Navigation: Vim-style pane navigation (
hjkl) - Plugins: 10+ plugins for enhanced functionality
Key Plugins:
tmux-sessionx- Smart session managementtmux-floax- Floating terminal windowsvim-tmux-navigator- Seamless Vim integrationtmux-resurrect+tmux-continuum- Session persistence
Highly customizable prompt with multiple themes:
- Active Theme: Gruvbox Dark Neon
- Available Themes: 6 different configurations
- Features: Git integration, language detection, performance metrics
- Style: Powerline-inspired with custom symbols
Modern shell with extensive enhancements:
- Syntax Highlighting: Fast syntax highlighting
- Autosuggestions: Intelligent command completion
- FZF Integration: Fuzzy finding for files, commands, and history
- Aliases: 50+ productivity aliases for Git, Docker, K8s
Key Features:
- Custom FZF functions for navigation (
fcd,fv,f) - Yazi file manager integration
- UV Python environment management
- Extensive Git, Docker, and Kubernetes aliases
A powerful, modern Neovim setup based on kickstart.nvim with extensive customization. Included via Git subtree - works seamlessly on any system (macOS, Linux, Windows).
Quick Facts:
- 68 Plugins across 45 configuration files
- 100+ Keybindings organized by function
- 4 LSP Servers configured (C/C++, Python, Rust, Lua)
- 4 AI Integrations (Claude, CodeCompanion, Copilot, SuperMaven)
- 18 Treesitter Languages for syntax highlighting
Key Features:
- AI-assisted development with Claude Code and CodeCompanion
- Obsidian integration for knowledge management
- Advanced git workflow (Neogit, Gitsigns, Fugitive)
- DAP debugging with UI
- Multiple file explorers (Mini.files, Oil, Neo-tree, Yazi)
- Tokyo Night theme with transparency
Complete Documentation: See nvim/README.md for full details, keybindings, and setup instructions.
First, ensure you have Homebrew installed:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"# Terminal & Input
brew install --cask ghostty # Modern GPU-accelerated terminal
brew install --cask karabiner-elements # Advanced keyboard remapping
# Fonts
brew install --cask font-monaspace # MonaspiceNe Nerd Font family
brew install --cask font-meslo-lg-nerd-font # MesloLGS Nerd Fontbrew install --cask BarutSRB/tap/hyprspace # HyprSpace tiling window manager (dwindle layout)
brew tap FelixKratz/formulae && brew install borders # JankyBorders window borders
brew install sketchybar # Menu bar replacement
brew install stow # Configuration managementbrew install starship # Cross-shell prompt
brew install tmux # Terminal multiplexer
brew install zsh-fast-syntax-highlighting # Shell syntax highlighting
brew install zsh-autosuggestions # Shell autosuggestions
brew install fzf # Fuzzy finder
brew install fd # Modern 'find' replacement
brew install bat # Modern 'cat' with syntax highlighting
brew install eza # Modern 'ls' replacement
brew install zoxide # Smart directory jumper
brew install ripgrep # Fast text searchbrew install nvim # Neovim text editor
brew install git # Version control
brew install gh # GitHub CLI
brew install yazi # Terminal file manager
brew install sesh # Session managementbrew install jq # JSON processor
brew install wget # File downloader
brew install curl # Data transfer tool
# Temperature monitoring (required for M4 Macs)
brew tap narugit/tap && brew install narugit/tap/smctemp# Programming Languages
brew install uv # Python package manager
brew install node # Node.js runtime
brew install python # Python interpreter
# Kubernetes (if needed)
brew install kubectl # Kubernetes CLI
brew install kubectx # Kubernetes context switcher
brew install kubens # Kubernetes namespace switcher
# Additional Utilities
brew install docker # Containerization
brew install switchaudio-osx # Audio source switcherFor convenience, you can install all essential dependencies at once:
# Essential packages only
brew install --cask ghostty karabiner-elements font-monaspace font-meslo-lg-nerd-font BarutSRB/tap/hyprspace
brew tap FelixKratz/formulae && brew install borders
brew tap narugit/tap && brew install narugit/tap/smctemp # M4 temperature monitoring
brew install sketchybar stow starship tmux zsh-fast-syntax-highlighting zsh-autosuggestions fzf fd bat eza zoxide ripgrep nvim git gh yazi sesh jq wget curl
# Optional additions
brew install uv node python kubectl kubectx kubens docker switchaudio-osx kanata-
Clone the repository:
git clone https://github.com/cyperx84/dotfiles.git ~/dotfiles cd ~/dotfiles
-
Install configurations using Stow:
# Install GNU Stow if not already installed brew install stow # Install all configurations at once stow */ # Or install individual components stow ghostty karabiner sesh sketchybar starship tmux zsh nvim aerospace
-
Start services:
# Start HyprSpace (or it will auto-start on login) open -a HyprSpace # Start JankyBorders (auto-starts with HyprSpace, but manual start if needed) borders & # Start SketchyBar brew services start sketchybar # Restart shell to load Zsh config exec zsh # Install Neovim plugins (on first launch) nvim # Wait for plugins to download (~30-60 seconds)
-
Configure permissions:
- Grant accessibility permissions to HyprSpace in System Preferences
- Allow Karabiner-Elements to modify keyboard input
- Configure Ghostty as default terminal
The Neovim configuration is included via Git subtree, which allows:
- β
Seamless cloning with
git clone(no special flags needed) - β Complete nvim independence (can be used separately on Linux/Mac)
- β Simple unified git history
- β
Works perfectly with
stowfor configuration management
To update nvim to the latest version:
# Update nvim subtree to latest
cd ~/dotfiles
git subtree pull --prefix nvim https://github.com/cyperx84/nvim.git main
# Or if you prefer to be explicit:
git subtree pull --prefix nvim https://github.com/cyperx84/nvim.git main --squashIf you want just the Neovim configuration without other dotfiles:
# Clone the nvim-specific repository
git clone https://github.com/cyperx84/nvim.git ~/.config/nvim
# Launch Neovim (plugins auto-install on first run)
nvimIf you make changes to nvim and want to sync them back:
cd ~/dotfiles
# Make your changes to nvim configs
# ...
# Push changes back to nvim repository
git subtree push --prefix nvim https://github.com/cyperx84/nvim.git main
# Or create a branch first (safer):
git subtree split --prefix nvim -b nvim-update
git push https://github.com/cyperx84/nvim.git nvim-update:mainPull subtree updates without merging:
git subtree pull --prefix nvim https://github.com/cyperx84/nvim.git main --squashCheck subtree history:
git log --all -- nvim/Merge nvim updates from main branch:
git subtree merge --prefix nvim https://github.com/cyperx84/nvim.git main --squashKanata is the active keyboard remapper with home row mods:
Kanata (Active):
# Check status
sudo launchctl print system/com.example.kanata
# Restart after config changes
sudo launchctl kickstart -k system/com.example.kanata
# View config
cat ~/.config/kanata/kanata.kbdTo switch to Karabiner-Elements:
# Disable Kanata
sudo launchctl bootout system /Library/LaunchDaemons/com.example.kanata.plist
# Configure Karabiner-Elements via its GUI
# Add remappings to simple_modificationsSwitch between different prompt themes by modifying ~/.zshrc:
export STARSHIP_CONFIG=~/.config/starship/starship-gruvbox-dark-neon.toml
# export STARSHIP_CONFIG=~/.config/starship/starship-gruvbox-rainbow.toml
# export STARSHIP_CONFIG=~/.config/starship/starship-jetpack.tomlModify plugin settings in .tmux.conf:
# Float window settings
set -g @floax-width '80%'
set -g @floax-height '80%'
set -g @floax-bind 'p'# Session Management
sd # Fuzzy connect to session (sesh + fzf)
Alt+s # Quick session selector (zsh keybind)
sesh-dashboard # Comprehensive session overview
ta # Attach to tmux
# File Operations
fcd # Fuzzy directory navigation
fv # Fuzzy file selection + edit
f # Yazi file manager with cd
ls # Enhanced listing (eza)
# Git Workflow
gs # Git status
gc "message" # Quick commit
gp # Push current branch
glog # Enhanced git log
# Development
n # Open Neovim
conf # Edit dotfiles
no # Open notes (Obsidian)# Window Management (Aerospace)
cmd+ctrl+jkl # Switch workspaces 1-3
shift+ctrl+hjkl # Focus windows
shift+ctrl+w # Toggle fullscreen
# Tmux (Prefix: Ctrl+A)
C-a T # Session switcher
C-a hjkl # Navigate panes
C-a sv # Split panes
# Neovim
<leader>sf # Find files (telescope)
<leader>gg # Git interface (neogit)
<leader>e # File manager (mini.files)
jk # Exit insert modeπ Complete Reference: See Keybinds Documentation for full listings
# System Health Checks
sesh list # Check sesh sessions (manual)
~/.config/sketchybar/test_sketchybar.sh # Test SketchyBar plugins
# Service Management
killall HyprSpace && open -a HyprSpace # Restart window manager
killall borders && borders & # Restart window borders
sketchybar --reload # Reload menu bar
exec zsh # Reload shell configπ§ Troubleshooting: See Maintenance Guide for detailed procedures
ghostty/config- Terminal appearance and behaviorkarabiner/karabiner.json- Simple keyboard remapping ruleskanata/kanata.kbd- Advanced keyboard remapping with home row modsaerospace/hyprspace.toml- HyprSpace window manager (dwindle layout)borders/bordersrc- JankyBorders window borderstmux/.tmux.conf- Terminal multiplexer setupzsh/.zshrc- Shell configuration and aliases
- HyprSpace: Hyprland-style dwindle tiling (auto split direction)
- JankyBorders: Visual window borders (green active, gray inactive)
- SketchyBar Plugins: Custom status bar modules in
sketchybar/plugins/ - Starship Themes: 6 different prompt configurations
- Tmux Plugins: Auto-installing plugin manager with 10+ plugins
- Neovim: 68 plugins across 45 configuration files
Feel free to fork this repository and adapt it to your needs. If you have improvements or suggestions:
- Fork the repository
- Create a feature branch
- Submit a pull request
This project is open source and available under the MIT License.
- nvim-lua/kickstart.nvim - Neovim configuration base
- Catppuccin - Beautiful color schemes
- The amazing macOS community for tool development
This dotfiles setup represents years of refinement for optimal productivity and aesthetics on macOS.