My VS Code Setup for 2025

I spend way too much time tweaking my editor. Here's what I've landed on for my daily driver setup.

The Editor That Runs My Life

I've tried them all - Sublime, Atom (RIP), WebStorm, even gave Neovim a shot for like a month. But I keep coming back to VS Code. It's just... comfortable.

Here's my current setup that I've been running for the past few months.

Must-Have Extensions

GitHub Copilot

Yeah yeah, AI is everywhere now. But Copilot genuinely saves me time. Especially for boilerplate and tests. Just don't blindly accept everything it suggests.

ESLint + Prettier

Non-negotiable. I don't want to think about formatting:

{
  "editor.formatOnSave": true,
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  }
}

GitLens

Inline blame, history, compare branches... it's like having a senior dev explain the git history to you.

Error Lens

Shows errors inline instead of making you hover. Game changer for catching typos immediately.

Thunder Client

REST client built into VS Code. I used to have Postman open all day, now I don't need to leave the editor.

Theme and Font

Currently running:

  • **Theme**: One Dark Pro (I've tried like 50 themes, keep coming back to this one)
  • **Font**: JetBrains Mono with ligatures enabled
  • **Icons**: Material Icon Theme

Key Settings

{
  "editor.fontSize": 14,
  "editor.lineHeight": 1.6,
  "editor.minimap.enabled": false,
  "editor.wordWrap": "on",
  "editor.bracketPairColorization.enabled": true,
  "workbench.tree.indent": 20,
  "terminal.integrated.fontSize": 13,
  "files.autoSave": "onFocusChange"
}

I turn off the minimap because I never use it and it's just visual noise.

Keyboard Shortcuts I Actually Use

  • `Cmd+P` - Quick file open (use this constantly)
  • `Cmd+Shift+P` - Command palette
  • `Cmd+D` - Select next occurrence
  • `Cmd+Shift+L` - Select all occurrences
  • `Cmd+/` - Toggle comment
  • `Cmd+B` - Toggle sidebar
  • `` Ctrl+` `` - Toggle terminal

Workspace Settings vs User Settings

Pro tip: use workspace settings (`.vscode/settings.json`) for project-specific stuff. I have different TypeScript strictness levels for different projects:

{
  "typescript.tsdk": "node_modules/typescript/lib",
  "typescript.preferences.strictNullChecks": true
}

Final Thoughts

Your editor setup is personal. Don't copy someone else's config blindly - try things out and keep what works for you.

What extensions are you running that I'm missing out on? Always looking for new stuff to try.

Back to Journal