Skip to content

IllyaStarikov/.dotfiles

Repository files navigation

dotfiles

🐚 Code at the speed of thought.

macOS Linux Neovim License

dotfiles

  • Battle-tested, production-ready dotfiles refined over 10 years of daily use.
  • One command, everything syncs terminal, editor, tmux, prompt all switch themes together
  • 80+ automated tests CI catches breakage before you do
  • 20 languages, zero config LSP, linting, formatting just work
  • 5 minutes to install, 30 seconds to uninstall no leftovers, no regrets
Editor Tools
Editor as capable as an IDE, as fast as vim Tools that make the daily grind disappear
Theme Write
Theme switching that keeps every app in sync Write Markdown and LaTeX without the friction

Requirements

Platform Version
macOS 12.0+ (Intel or Apple Silicon)
Ubuntu 20.04+
Debian 11+
Fedora 35+
Arch Rolling

Prerequisites:

  • git 2.30+
  • curl or wget
  • zsh shell (macOS default, install on Linux)
  • ~5GB disk space (full install)
  • Internet connection

Install

Quick Start

git clone https://github.com/IllyaStarikov/dotfiles.git ~/.dotfiles && ~/.dotfiles/src/setup/install.sh
Mode Command Time Description
Full ./src/setup/install.sh 15-30 min Complete environment
Core ./src/setup/install.sh --core 5-10 min Essential tools only
Symlinks ./src/setup/install.sh --symlinks 30 sec Link configs only

Options: --skip-brew (corporate machines) · --verbose · --help

Try This First

theme moon              # Dark mode, everywhere, instantly
fixy messy_code.py      # Auto-format any file
nvim +Telescope\ files  # Fuzzy find everything

Features

Tool What You Get
Neovim 80+ plugins, 150ms startup, LSP for 20+ languages, AI built-in
Zsh Starship prompt, syntax highlighting, completions that actually work
tmux Intuitive bindings, session persistence, theme-aware
Theme 4 TokyoNight variants, one command syncs everything
Search fzf + ripgrep = find anything, fast

Languages: Python · JavaScript · TypeScript · Go · Rust · C/C++ · Lua · Swift · Kotlin · LaTeX

Keybindings

Key Action
<Space>ff Find files
<Space>fg Live grep
<Space>e File explorer
<Space>ac AI chat
<C-h/j/k/l> Navigate splits
gcc Toggle comment

Full reference: keymaps

Performance

Component Measured Notes
Neovim startup 150ms M1 Mac, 80+ plugins
Zsh startup 50-150ms Zinit turbo mode
tmux startup ~125ms New session
Theme switching <500ms All apps synced
Memory usage <200MB Under normal load

Documentation

Core Components

Component Description
Neovim 80+ plugins, LSP, AI integration
Zsh Zinit, completions, prompt
Git SSH signing, delta, hooks
Scripts fixy, theme, update, utilities
Setup Installation, platform detection
Themes TokyoNight, app sync

Guides

Guide Description
Quick Start Get up and running
Customization Make it yours
Usage Reference Commands & keybindings

Development

Resource Description
Language Tools Formatters, linters
Testing Test infrastructure
CI/CD GitHub Actions

Uninstall / Reset

./src/setup/uninstall.sh             # Remove symlinks only
./src/setup/uninstall.sh --restore   # Remove symlinks + restore backups
./src/setup/uninstall.sh --full      # Complete removal
./src/setup/uninstall.sh --dry-run   # Preview changes

Backups are at ~/.dotfiles.backups/

Contributing

Bug fixes and improvements welcome. These are personal dotfiles, so features may be declined if they don't fit my workflow.

License

MIT - See LICENSE for details.


The Shell. A digital frontier.
I tried to picture clusters of information as they moved through the text buffer.
What did they look like? Scripts, macro-cycles?
Were the pipelines like freeways?
I kept dreaming of a world I thought I'd never see.
And then, one day... I typed Vim.

Kevin Flynn, probably

About

🐚 Code at the speed of thought.

Topics

Resources

License

Stars

Watchers

Forks

Contributors