Extensions
🧩 Extensions
🛒 The Extensions View & Marketplace
Ctrl+Shift+X (Cmd+Shift+X on macOS) opens the Extensions view in the Side Bar — or click the Extensions icon in the Activity Bar from Chapter 1. Searching here queries the VS Code Marketplace, Microsoft's official public extension registry; clicking Install on a result downloads and activates it immediately, no restart required for most extensions.
🔎 Evaluating an Extension Before Installing
Anyone can publish to the Marketplace — before installing, a few quick checks are worth the extra 30 seconds:
Publisher
A blue checkmark next to the publisher name means Microsoft has verified their identity — not a guarantee of quality, but a real signal against outright impersonation.
Install count & rating
A widely-installed, well-rated extension has been battle-tested by far more people than a brand-new one with a handful of installs.
Last updated
An extension untouched for years may be abandoned — a real problem if VS Code's own APIs change underneath it.
Repository link
Most trustworthy extensions link an open-source repository — a closed-source extension asking for broad permissions deserves extra scrutiny.
⭐ A Few Genuinely Essential Picks
Three extensions come up constantly regardless of what language you're working in:
- ESLint — runs a linter against your JavaScript/TypeScript as you type, flagging likely bugs and style issues directly in the editor, before you'd ever see them at runtime.
- Prettier — an opinionated, zero-configuration code formatter. Rather than debating formatting style, Prettier just picks one and applies it consistently on save — genuinely reduces a whole category of pointless team disagreement.
- GitLens — supercharges the built-in Git integration (Chapter 7) with inline "blame" annotations (who last changed this line, and when), a rich commit history view, and easy comparison between branches or commits.
⚖️ Extension Bloat — Why More Isn't Better
Every installed extension is code that runs continuously in the background — more installed extensions means slower startup, more memory used, and more surface area for something to conflict or break. Before installing, it's worth asking whether you'll actually use an extension regularly, or whether it's solving a problem you don't currently have. A handful of well-chosen extensions genuinely used every day beats a large pile installed "just in case."
An installed extension isn't sandboxed the way a browser tab is — it runs as ordinary code with the same file-system and network access you have. This is a genuine supply-chain risk: malicious or compromised extensions have appeared on the Marketplace in the past, sometimes impersonating popular ones with a near-identical name. Treat installing an extension with the same caution as installing a package via pip or npm — check the publisher, the install count, and the repository link from this chapter's evaluation list before trusting it with your machine.
Closing the Loop on Chapter 1's Comparison
Chapter 1 placed VS Code between a plain text editor and a full IDE, calling out that its depth comes "through extensions rather than built in for every language at once." This chapter is that mechanism made concrete: a full IDE ships its language tooling as one large, vetted, pre-integrated package; VS Code instead lets you assemble exactly the tooling you need, extension by extension — more flexible, but shifting the evaluation and trust decisions onto you as the person choosing what to install.
💻 Coding Challenges
Exercise 1: Evaluate Before Installing
Search the Marketplace for any extension related to a language or tool you use. Before installing it, check its publisher verification, install count, rating, and last-updated date — write down what you found for each.
Exercise 2: Install Prettier & Format a File
Install the Prettier extension, then open any JavaScript, JSON, or CSS file and use the Command Palette (Chapter 2) to run "Format Document" on it.
Exercise 3: Audit Your Installed Extensions
Open the Extensions view and list every extension you currently have installed. For each one, decide honestly whether you've actually used it in the last month — and uninstall any that you haven't, per this chapter's bloat discussion.
🎯 What's Next
Next chapter: Workspaces & Settings — User vs. Workspace settings, settings.json, and recommended extensions via extensions.json.