Skip to content

vedantrathore/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

43 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Vedant's Dotfiles

GitHub stars GitHub last commit License macOS

A meticulously crafted development environment with Catppuccin theming, modern CLI tools, and a powerful Neovim setup.

Screenshots

Features

Category Tools Description
Shell Zsh + Oh-My-Zsh + Antidote Fast shell with lazy-loaded plugins
Prompt Powerlevel10k Instant prompt with git status
Editor Neovim + LSP Full IDE experience with lazy.nvim
Terminal Alacritty + tmux GPU-accelerated terminal with sessions
Theme Catppuccin Mocha Consistent theme across all tools
File Manager Yazi Blazing fast TUI file manager
Git Lazygit + diff-so-fancy Beautiful diffs and TUI git
Search fzf + fd + ripgrep Lightning fast fuzzy finding
Navigation Zoxide + Harpoon Smart directory and file jumping
History Atuin Searchable shell history sync

Prerequisites

Before installation, ensure you have:

  • macOS (tested on Sonoma) or Linux
  • Git installed
  • Internet connection for cloning submodules
  • (Optional) Homebrew for package management
  • (Optional) Nerd Font for icons (Fira Code recommended)

Installation

Quick Install (Minimal)

Core configs only (zsh, git, tmux) - perfect for servers:

git clone https://github.com/vedantrathore/dotfiles && cd dotfiles
./install minimal

Full Install

Everything including Neovim, modern CLI tools, and macOS settings:

git clone https://github.com/vedantrathore/dotfiles && cd dotfiles
./install full

Standard Install

Interactive installation with prompts:

git clone https://github.com/vedantrathore/dotfiles && cd dotfiles
./install

Tool Stack

Shell & Terminal

Tool Purpose Config
Zsh Shell zshrc
Oh-My-Zsh Zsh framework -
Antidote Plugin manager zsh_plugins.txt
Powerlevel10k Prompt p10k.zsh
Alacritty Terminal alacritty.toml
tmux Multiplexer tmux.conf

Modern CLI Replacements

Classic Modern Purpose
ls eza File listing with icons
cat bat Syntax highlighted cat
find fd User-friendly find
grep ripgrep Fast grep
cd zoxide Smart cd
top bottom System monitor
du dust Disk usage
curl curlie Curl with httpie syntax

Neovim Plugins

Plugin Purpose
lazy.nvim Plugin manager
telescope.nvim Fuzzy finder
nvim-lspconfig LSP configuration
nvim-cmp Completion
treesitter Syntax highlighting
gitsigns.nvim Git decorations
which-key.nvim Keybinding hints
harpoon Quick file navigation
oil.nvim File explorer

Directory Structure

dotfiles/
β”œβ”€β”€ install                 # Installation script
β”œβ”€β”€ install.conf.yaml       # Dotbot configuration (full)
β”œβ”€β”€ install.minimal.yaml    # Dotbot configuration (minimal)
β”œβ”€β”€ Brewfile               # Homebrew packages (full)
β”œβ”€β”€ Brewfile.minimal       # Homebrew packages (minimal)
β”‚
β”œβ”€β”€ zshrc                  # Zsh configuration
β”œβ”€β”€ zsh_plugins.txt        # Antidote plugin list
β”œβ”€β”€ p10k.zsh               # Powerlevel10k config
β”œβ”€β”€ exports                # Environment variables
β”œβ”€β”€ aliases                # Shell aliases
β”œβ”€β”€ functions              # Shell functions
β”‚
β”œβ”€β”€ gitconfig              # Git configuration
β”œβ”€β”€ tmux.conf              # tmux configuration
β”œβ”€β”€ alacritty.toml         # Alacritty configuration
β”‚
β”œβ”€β”€ nvim/                  # Neovim configuration
β”‚   β”œβ”€β”€ init.lua           # Entry point
β”‚   └── lua/
β”‚       β”œβ”€β”€ options.lua    # Vim options
β”‚       β”œβ”€β”€ keymaps.lua    # Key mappings
β”‚       β”œβ”€β”€ lazy-bootstrap.lua
β”‚       β”œβ”€β”€ lazy-plugins.lua
β”‚       └── plugins/       # Individual plugin configs
β”‚
β”œβ”€β”€ ripgreprc              # ripgrep configuration
β”œβ”€β”€ fdignore               # fd ignore patterns
β”‚
β”œβ”€β”€ ssh/                   # SSH config templates
β”‚   └── config.template
β”‚
β”œβ”€β”€ gnupg/                 # GPG config templates
β”‚   β”œβ”€β”€ gpg.conf.template
β”‚   └── gpg-agent.conf.template
β”‚
β”œβ”€β”€ k9s/                   # Kubernetes dashboard
β”œβ”€β”€ yazi/                  # File manager
β”œβ”€β”€ atuin/                 # Shell history
β”‚
β”œβ”€β”€ cheatsheet.md          # Keyboard shortcuts reference
β”œβ”€β”€ macos                  # macOS system preferences
β”‚
└── vendor/                # Git submodules
    └── github/
        β”œβ”€β”€ dotbot/        # Dotbot installer
        └── antidote/      # Zsh plugin manager

Key Bindings

See cheatsheet.md for complete keyboard shortcuts.

Quick Reference

Key Action
Ctrl+f tmux-sessionizer
Ctrl+r Atuin history search
Ctrl+g Navi cheatsheet
Ctrl+y Accept autosuggestion

Neovim Leader Keys

Key Action
<leader>sf Search files
<leader>sg Live grep
<leader>ca Code action
<leader>rn Rename symbol

Customization

Local Overrides

Create ~/.zshrc.local for machine-specific configurations (not tracked in git):

# Example: Work-specific settings
export ANTHROPIC_BASE_URL="https://custom.api.endpoint"

Work Git Config

The gitconfig supports conditional includes. Create ~/work/.gitconfig:

[user]
    email = work@company.com

Updating

Pull latest changes and re-run installer:

cd ~/.dotfiles
git pull
./install

Troubleshooting

Neovim Health Check

:checkhealth

Reset Neovim Plugins

rm -rf ~/.local/share/nvim
rm -rf ~/.local/state/nvim
nvim  # Lazy will reinstall

Zsh Compinit Warnings

compaudit | xargs chmod g-w

Acknowledgments

License

MIT

About

.files, including ~/.macos β€’ πŸ”§

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •