Mac mini (2018) running macOS Sequoia. This repo contains Mac-specific tools and apps. Dotfiles are managed separately via blue-az/dotfiles.
| Directory | Description |
|---|---|
MacOSTennisAgent/ |
Real-time tennis swing detection (Apple Watch → iPhone → Mac WebSocket pipeline) |
Tennis/ |
Tennis video analysis — pose extraction, contact detection, session sync |
- Mac mini (2018)
- Intel Core i7-8700B @ 3.20GHz (12 threads)
- Intel UHD Graphics 630
- 8GB RAM / 500GB SSD
- External: Acer XB271HU (2560×1440 @ 60Hz)
- macOS Sequoia 15.x
git clone https://github.com/blue-az/dotfiles.git ~/dotfiles
cd ~/dotfilesmacOS uses
~/dotfiles(no dot prefix), unlike~/.dotfileson Linux.
brew install neovim fzf stow fastfetch
brew install koekeishiya/formulae/yabai koekeishiya/formulae/skhdcd ~/dotfiles
stow macos$(brew --prefix)/opt/fzf/installnvim --headless +PlugInstall +qallSystem Settings → Privacy & Security → Accessibility → enable yabai and skhd
yabai --start-service
skhd --start-serviceBSP tiling WM — same muscle memory as sway/i3 on Linux.
| Binding | Action |
|---|---|
Caps + hjkl |
Focus window |
Caps + Shift + hjkl |
Move / swap window |
Caps + Ctrl + hjkl |
Resize window |
Caps + 1-5 |
Switch space |
Caps + Shift + 1-5 |
Move window to space |
Caps + f |
Toggle fullscreen |
Caps + Shift + Space |
Toggle float |
Caps + Return |
Open terminal |
Caps + Shift + q |
Close window |
Caps + Shift + r |
Restart yabai |
Caps Lock is remapped to Cmd (Super) via ~/Library/LaunchAgents/com.local.KeyRemapping.plist.
yabai --restart-service
skhd --restart-serviceLogs: /tmp/yabai_$USER.[out|err].log, /tmp/skhd_$USER.[out|err].log
- vi mode (
bindkey -v) - fzf:
Ctrl+Rhistory,Ctrl+Tfiles - nvim as default editor
| Alias | Command |
|---|---|
ll |
ls -halF |
ff |
fastfetch |
cl |
claude |
jn |
jupyter notebook |
sbash / szsh |
source ~/.zshrc |
- Config:
~/.config/nvim/init.lua - Plugin manager: vim-plug
jk→ Escape,F2→ NERDTree- IPython cell execution via vim-slime
- ALE linting (flake8)
The core stack for a screenshot-worthy macOS desktop. Designed to match the Dracula aesthetic from the Linux setup.
# Status bar
brew install FelixKratz/formulae/sketchybar
# Window borders
brew install FelixKratz/formulae/borders
# Terminal
brew install --cask kitty
# Nerd Font (icons in bar + Neovim statusline)
brew install --cask font-jetbrains-mono-nerd-fontCustom status bar — hides the macOS menu bar and replaces it with a fully configurable alternative. Port the Dracula color scheme from Waybar (#1e1e2e background, #50fa7b accents).
# Start service
brew services start sketchybar
# Config location (add to dotfiles under macos/)
~/.config/sketchybar/sketchybarrc
~/.config/sketchybar/colors.sh
~/.config/sketchybar/plugins/Hide the native menu bar first: System Settings → Control Center → Automatically hide and show the Menu Bar → Always
Adds colored borders to windows — focused vs unfocused. Same visual effect as sway's border settings.
# Start service
brew services start borders
# Config: ~/.config/borders/bordersrc
#!/bin/bash
options=(
style=round
width=6.0
hidpi=on
active_color=0xff50fa7b # Dracula green
inactive_color=0xff44475a # Dracula comment
)
borders "${options[@]}"Drop-in replacement for macOS Terminal with GPU acceleration and full color scheme support.
# Config location (add to dotfiles under macos/)
~/.config/kitty/kitty.confMinimal Dracula config:
font_family JetBrainsMono Nerd Font
font_size 13.0
background #1e1e2e
foreground #f8f8f2
selection_background #44475a
color0 #21222c
color1 #ff5555
color2 #50fa7b
color8 #6272a4
color9 #ff6e6e
color10 #69ff94
Dracula wallpaper pack: https://draculatheme.com/wallpaper
Or a solid dark: #1e1e2e (Dracula base).
# Hide the dock
defaults write com.apple.dock autohide -bool true && killall Dock
# Disable window shadows (cleaner screenshots)
sudo yabai -m config window_shadow offAfter configuring, stow back to dotfiles:
cd ~/dotfiles
# Add sketchybar, borders, kitty configs to macos/ then:
stow macosFull config in blue-az/dotfiles under macos/:
macos/
├── .zshrc
├── .yabairc
├── .skhdrc
├── .config/nvim/init.lua
├── .config/kitty/kitty.conf # after ricing
├── .config/sketchybar/sketchybarrc # after ricing
├── .config/borders/bordersrc # after ricing
└── Library/LaunchAgents/com.local.KeyRemapping.plist