A personal macOS dotfiles repo that automates setting up a new Mac with Homebrew apps, shell config, and Git/SSH settings.
nicknisi/dotfiles
Personal macOS and Linux dotfiles managing zsh, tmux, Neovim, Ghostty, and a Mise-driven bootstrap for a full dev environment.
- Stars
- 3,004
- Forks
- 371
- Open issues
- 1
- Last commit
- 4 days ago
What is it?
This is a personal dotfiles repository that configures a full development environment on Apple Silicon macOS. A Mise manifest drives the bootstrap: it installs Homebrew packages, macOS apps, runtimes such as Node.js and Python, and command-line tools, clones companion repositories, and symlinks configuration into the home directory.
The configuration covers the terminal and shell stack: Ghostty as the primary terminal, zsh with Starship and zoxide, tmux with a custom prefix and status bar, and a lazy.nvim-based Neovim setup. Window management uses AeroSpace, SketchyBar, and Borders. Agent tooling for Pi and Claude Code is tracked with runtime data excluded, and a Git worktree helper is included.
A devcontainer based on Ubuntu 24.04 runs the same bootstrap so terminal configuration can be tested outside macOS. The repository is written for the author's own setup and hardcodes personal paths, so forks need to adjust them.
Key features
- 01Mise-driven bootstrap installs packages, apps, runtimes, and tools from one manifest.
- 02Neovim configured with lazy.nvim and Tokyo Night theme.
- 03tmux with custom prefix, pane navigation, and Fleet agent integration.
- 04zsh and Starship prompt with fzf, zoxide, and several plugins.
- 05AeroSpace and SketchyBar window and workspace management on macOS.
- 06Ubuntu devcontainer runs the same bootstrap for portable testing.
Use cases
- Setting up a new Apple Silicon Mac with a reproducible developer environment.
- Studying a real-world Neovim, tmux, and zsh configuration as a reference.
- Testing terminal configuration changes in an Ubuntu container without touching the host.
- Forking as a starting point for a personal dotfiles setup after adjusting paths.
Quick start
- 1
Run the official install script from the README on a Mac (review it first, since it is piped to bash)
- 2
Open a new login shell and configure the machine-local Git identity
mise run setup-git
Things to know
- Built for Apple Silicon macOS with Homebrew under /opt/homebrew; it is not a generic starter kit.
- The setup expects the repository at ~/Developer/dotfiles and a working GitHub SSH key for additional repositories.
- Many tools and personal settings are the author's own choices, so they must be reviewed before use.
In collections
Topics
FAQ
- What is dotfiles?
- Personal macOS and Linux dotfiles managing zsh, tmux, Neovim, Ghostty, and a Mise-driven bootstrap for a full dev environment. This is a personal dotfiles repository that configures a full development environment on Apple Silicon macOS. A Mise manifest drives the bootstrap: it installs Homebrew packages, macOS apps, runtimes such as Node.js and Python, and command-line tools, clones companion repositories, and symlinks configuration into the home directory.
- Is dotfiles free to use? What license does it have?
- dotfiles is open source under the MIT license. Check the license terms before using it in commercial products.
- Is dotfiles still maintained?
- Actively maintained. The last commit to dotfiles was on Nov 4, 2026.
- What can I use dotfiles for?
- Setting up a new Apple Silicon Mac with a reproducible developer environment. Studying a real-world Neovim, tmux, and zsh configuration as a reference. Testing terminal configuration changes in an Ubuntu container without touching the host. Forking as a starting point for a personal dotfiles setup after adjusting paths.
- How do I install dotfiles?
- Run the official install script from the README on a Mac (review it first, since it is piped to bash) Open a new login shell and configure the machine-local Git identity: mise run setup-git
- Where can I get dotfiles?
- The source code and installation instructions are on GitHub: https://github.com/nicknisi/dotfiles
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A cross-OS terminal UI and docs hub that automates setting up Windows, Linux, macOS, WSL2, Google TV with Stremio, and Home Assistant.
A community-driven framework for managing zsh configuration, bundling hundreds of plugins and themes plus an update tool.
A self-contained, themeable tmux configuration with a Powerline-style status line, mouse mode, clipboard integration and TPM plugin support.
A cross-platform prompt theme engine that renders customizable shell prompts for PowerShell, bash, zsh, fish, and more.