These 20 extensions cover the web development workflow: writing code, formatting it, linting for errors, working with frameworks, debugging, using Git, and testing APIs. Every extension on this list has a verified or well-known publisher, an active maintainer, and a strong track record as of mid-2026.
If you are new to installing extensions, read the guide on how to install, disable, and update extensions first.
Formatting and linting
1. Prettier - Code formatter
Publisher: esbenp.prettier-vscode
Why: Prettier formats your code automatically so every file in your project looks consistent. It handles JavaScript, TypeScript, HTML, CSS, JSON, Markdown, and more. Pair it with the Format on Save setting for zero-effort formatting.
2. ESLint
Publisher: dbaeumer.vscode-eslint
Why: ESLint catches bugs and enforces coding conventions in JavaScript and TypeScript. It integrates directly into VS Code's Problems panel. Use it with Prettier for the standard web developer setup: ESLint for code quality, Prettier for formatting.
3. Error Lens
Publisher: usernamehw.errorlens
Why: Error Lens shows error and warning messages inline, right next to the problematic code. You no longer need to hover or open the Problems panel to see what is wrong.
Framework support
4. Tailwind CSS IntelliSense
Publisher: bradlc.vscode-tailwindcss
Why: Autocomplete for Tailwind CSS classes, linting for conflicting classes, and hover previews that show the compiled CSS. If you use Tailwind, this extension is essential.
5. Vue - Official (Volar)
Publisher: vue.volar
Why: Official Vue language support. Provides syntax highlighting, IntelliSense, type checking for TypeScript in Vue Single-File Components, and template autocomplete. Replaces the older Vetur extension.
6. ES7+ React/Redux/React-Native snippets
Publisher: r5n.es-js-snippets
Why: Quick code snippets for React components, hooks, and common patterns. Type rafce to generate a React arrow function component with a named export in one keystroke.
This extension is the actively maintained continuation of the original ES7+ snippets package, which has had no updates since 2022. Uninstall the older version first if you have it installed, so the keybindings do not collide.
7. Auto Rename Tag
Publisher: formulahendry.auto-rename-tag
Why: When you rename an opening HTML or JSX tag, the closing tag renames automatically. Simple but saves constant manual edits.
8. Auto Close Tag
Publisher: formulahendry.auto-close-tag
Why: Automatically adds the closing HTML/JSX tag when you type the opening tag's closing bracket. From the same publisher as Auto Rename Tag.
CSS and styling
9. CSS Peek
Publisher: pranaygp.vscode-css-peek
Why: Peek and go to CSS class and ID definitions directly from your HTML. Ctrl+Click (Cmd+Click on macOS) on a class name to jump to the CSS rule that defines it.
10. Color Highlight
Publisher: naumovs.color-highlight
Why: Shows a colored background behind every color value in your CSS, making it instantly visible what color #3b82f6 or rgb(59, 130, 246) actually is.
Git and version control
11. GitLens
Publisher: eamodio.gitlens
Why: Adds inline blame annotations that show who last changed each line and when. Includes a rich repository view, commit graph, file history, and comparison tools. The free tier covers most needs. The Pro tier adds visual file history and worktree support.
12. Git Graph
Publisher: mhutchie.git-graph
Why: A visual Git commit graph directly in VS Code. See branches, merges, and commit history in a clean graph view. Perform Git actions like cherry-pick, revert, and branch creation from the graph.
The extension has had no updates since 2021, so treat it as stable rather than actively developed. If you want a maintained alternative, GitLens (above) includes its own Commit Graph view.
API and network tools
13. REST Client
Publisher: humao.rest-client
Why: Send HTTP requests and view responses directly in VS Code. Write a .http file with your request, click Send, and see the formatted response. No need to switch to Postman or curl for quick API testing.
14. Thunder Client
Publisher: rangav.vscode-thunder-client
Why: A GUI-based API client like Postman, but inside VS Code. Create collections, set environment variables, and test APIs with a visual interface. Good if you prefer buttons over typing HTTP syntax.
Developer experience
15. Better Comments
Publisher: aaron-bond.better-comments
Why: Color-codes your comments based on prefixes. TODO: turns orange, FIXME: turns red, NOTE: turns blue. Makes important comments stand out instead of blending into the gray.
16. Import Cost
Publisher: wix.vscode-import-cost
Why: Shows the size of each imported package inline. See import lodash from 'lodash' // 70.7K (gzipped: 24.7K) directly in your editor. Helps you catch accidentally large bundle additions.
17. Path Intellisense
Publisher: christian-kohler.path-intellisense
Why: Autocompletes file paths when you type them in import statements or string literals. Saves typing out long relative paths and prevents typos.
18. npm Intellisense
Publisher: christian-kohler.npm-intellisense
Why: Autocompletes npm package names in import statements. Start typing a package name from your node_modules and it suggests the full path.
19. DotENV
Publisher: mikestead.dotenv
Why: Syntax highlighting for .env files. Makes environment variable files readable with proper color coding for keys, values, and comments.
20. Live Server
Publisher: ritwickdey.LiveServer
Why: Starts a local development server with live reload for static HTML pages. Right-click an HTML file and choose Open with Live Server. Your browser opens and refreshes automatically when you save changes.
Quick selection guide
| If you work with... | Start with these |
|---|---|
| React or Next.js | ESLint, Prettier, ES7+ snippets, Auto Rename Tag, Error Lens |
| Vue or Nuxt | ESLint, Prettier, Vue (Volar), Auto Rename Tag, Error Lens |
| Tailwind CSS | ESLint, Prettier, Tailwind CSS IntelliSense, Color Highlight |
| Node.js APIs | ESLint, Prettier, REST Client or Thunder Client, DotENV, npm Intellisense |
| Static HTML/CSS | Prettier, Live Server, CSS Peek, Color Highlight, Auto Rename Tag |
| Any web project | ESLint, Prettier, GitLens, Error Lens, Better Comments |
Each extension can be installed from the Extensions view (Ctrl+Shift+X / Cmd+Shift+X) by searching for its name or publisher ID.
Rune AI
Key Insights
- Formatting and linting: Prettier (esbenp.prettier-vscode) and ESLint (dbaeumer.vscode-eslint) are the foundation for every web project.
- Framework support: Tailwind CSS IntelliSense, Vue (Volar), and React/JSX snippets provide autocomplete, error checking, and syntax highlighting.
- Git: GitLens adds inline blame, history, and repository insights directly in the editor.
- API and network: REST Client and Thunder Client let you test HTTP requests without leaving VS Code.
- Developer experience: Better Comments, Error Lens, Import Cost, and Color Highlight make code easier to read and debug.
Frequently Asked Questions
Will installing all 20 extensions slow down VS Code?
Are all these extensions free?
What if two extensions conflict with each other?
Conclusion
These 20 extensions cover formatting, linting, framework support, debugging, Git, and developer experience for web developers. Not every project needs all 20. Start with ESLint, Prettier, GitLens, and the language support for your framework. Add specialized tools as your projects grow. For extensions focused on general productivity, see the list of 15 productivity extensions.
More in this topic
How to Use VS Code with WSL 2 on Windows
Run VS Code connected to Windows Subsystem for Linux so you can develop in a full Linux environment with native tools, terminals, and debugging, all from Windows.
How to Install, Disable, Update, and Uninstall VS Code Extensions
Learn how to install, disable, update, and uninstall VS Code extensions from the Marketplace and the command line. Step-by-step instructions for every action.
12 Best VS Code Extensions for Linting, Formatting, and Code Quality
Twelve VS Code extensions that catch bugs, enforce style, and keep your code clean. Covers ESLint, Prettier, SonarLint, markdownlint, and more.