Skip to content

patgpt/dotfiles

Repository files navigation

🚀 Dotfiles

My personal dotfiles for macOS, managed with GNU Stow.

🛠️ Stack

  • Shell: ZSH with Oh My Zsh + Half-Life theme
  • Terminal: Ghostty
  • Editor: Neovim with NvChad, VS Code, Cursor
  • AI Assistant: Google Gemini
  • Multiplexer: tmux
  • Package Manager: Bun
  • Version Control: Git
  • Container Runtime: Docker

📦 What's Included

dotfiles/
├── git/          # Git configuration and global gitignore
├── zsh/          # ZSH configuration with oh-my-zsh
├── tmux/         # Tmux configuration with TPM
├── nvim/         # NvChad custom configuration
├── ghostty/      # Ghostty terminal config
├── vscode/       # VS Code settings
├── cursor/       # Cursor settings
├── gemini/       # Google Gemini configuration
├── Brewfile      # Homebrew packages
└── install.sh    # Bootstrap script

🚀 Quick Start

Fresh Installation

git clone https://github.com/YOUR_USERNAME/dotfiles.git ~/dotfiles
cd ~/dotfiles
./install.sh

The install script will:

  1. Install Homebrew (if not already installed)
  2. Install packages from Brewfile
  3. Install Oh My Zsh
  4. Install ZSH plugins (autosuggestions, syntax highlighting)
  5. Install NvChad
  6. Symlink all configs using GNU Stow

Manual Installation

If you prefer to install manually:

# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install packages
brew bundle

# Install Oh My Zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# Install ZSH plugins
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

# Install NvChad
git clone https://github.com/NvChad/starter ~/.config/nvim

# Stow configs (from dotfiles directory)
stow git zsh tmux nvim ghostty vscode cursor gemini

📝 Usage

Adding New Configs

  1. Create a new directory in dotfiles/ (e.g., myapp/)
  2. Add your config files with their expected paths (e.g., .config/myapp/config.yml)
  3. Stow it: stow myapp

Updating Configs

Just edit files in the dotfiles directory - changes are reflected immediately (symlinks!).

Removing Configs

stow -D <package-name>

🔧 Customization

ZSH

  • Theme: Half-Life (configured in .zshrc)
  • Plugins: git, docker, bun, vscode, tmux, colored-man-pages, command-not-found, zsh-autosuggestions, zsh-syntax-highlighting
  • Custom aliases: See zsh/.zshrc

Tmux

  • Prefix: Ctrl+a (changed from default Ctrl+b)
  • Plugin Manager: TPM
  • Plugins: tmux-sensible, tmux-resurrect, tmux-continuum

Git

  • Aliases: Extensive shortcuts (see git/.gitconfig)
  • Default Branch: main
  • Auto-setup: Rebase on pull, credential helper

Neovim

  • Distribution: NvChad
  • Custom Config: See nvim/.config/nvim/lua/custom/

VS Code & Cursor

  • Settings: Professional editor configuration
  • MCP Servers: Context7, GitHub, Ark UI, Chrome (VS Code only)
  • Custom Prompts: GitHub Copilot instructions for consistent AI suggestions
  • Includes:
    • General coding guidelines (copilot-instructions.md)
    • Context7 usage instructions (context7.instructions.md)
    • DaisyUI component guidelines (daisyui.instructions.md)

Gemini

  • Configuration: ~/.gemini
  • MCP Server: Ark UI integration
  • Theme: Shades Of Purple
  • Features: IDE integration, interactive shell, extended context

🎨 Features

  • Auto-suggestions: Fish-like autosuggestions for ZSH
  • Syntax Highlighting: Real-time command validation
  • Tmux Sessions: Persistent terminal sessions with auto-restore
  • Git Aliases: Super fast git workflow (gst, gco, gp, etc.)
  • Modern Tools: Bun, Docker, latest Git

📚 Resources

📄 License

MIT License - Feel free to use and modify!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published