The VS Code Extensions I Can’t Live Without: Supercharge Your Development with AI and More

Shaon Majumder
5 min readSep 27, 2024

--

As a full-stack developer, Visual Studio Code (VS Code) is my go-to editor for coding. One of the reasons it stands out is the rich ecosystem of extensions that enhance productivity, streamline workflows, and even bring in AI-powered coding assistance. In this article, I’ll share some of the essential VS Code extensions I use, organized by category to highlight their use cases and benefits.

Categories of Extensions

  1. AI Code Assistants
  2. Code Reviews & Version Control
  3. Containers & DevOps
  4. Code Snippets & Syntax Highlighting
  5. Productivity & Spell Checking
  6. API Testing & Management

1. AI Code Assistants

Amazon Q Developer

  • Extension ID: amazonwebservices.amazon-q-vscode
  • Category: AI-Powered AWS Assistant
  • Why I Use It: Amazon Q Developer is a generative AI assistant that helps me understand, build, extend, and operate AWS applications. Integrated within VS Code, it supports everything from answering AWS-related questions to providing inline code completions, suggesting code optimizations, and scanning code for security vulnerabilities.
  • Use Case: For accelerating AWS development by getting contextual AWS support and operational guidance directly in my IDE.

Codeium

[not frequently]

  • Extension ID: codeium.codeium
  • Category: AI Code Assistant
  • Why I Use It: Codeium is an AI-powered code completion tool that helps speed up coding by suggesting context-aware snippets and auto-completions based on my coding habits and the context of the project.
  • Use Case: For enhancing coding efficiency through intelligent code suggestions.

2. Code Reviews & Version Control

GitLens

  • Extension ID: eamodio.gitlens
  • Category: Version Control
  • Why I Use It: GitLens supercharges the built-in Git capabilities in VS Code. It provides detailed insights into code history, author information, and even line-level annotations, making it easier to track changes and understand who did what in the codebase.
  • Use Case: Great for collaborative projects, code reviews, and understanding commit history.

Sonarlint

  • Extension ID: sonarsource.sonarlint-vscode
  • Category: Code Quality
  • Why I Use It: SonarLint provides on-the-fly feedback for code quality and security issues as I write code. It helps me identify bugs and vulnerabilities early in the development process, improving the overall code quality.
  • Use Case: For maintaining high code quality and adherence to best practices throughout the development lifecycle.

GitHub Pull Requests

[not frequently]

  • Extension ID: github.vscode-pull-request-github
  • Category: GitHub Integration
  • Why I Use It: This extension allows me to manage pull requests and issues directly from VS Code, streamlining the workflow for collaborative projects hosted on GitHub.
  • Use Case: To simplify code reviews and collaboration with teammates on GitHub.

3. Containers & DevOps

Docker

  • Extension ID: ms-azuretools.vscode-docker
  • Category: Container Management
  • Why I Use It: The Docker extension makes managing containers and images directly from VS Code incredibly easy. I use it to view logs, start/stop containers, and even debug running services. It’s indispensable when working on microservices-based projects.
  • Use Case: For working with Dockerized applications, creating and managing containers, and handling multi-container setups.

Remote — Containers

  • Extension ID: ms-vscode-remote.remote-containers
  • Category: Remote Development
  • Why I Use It: This extension allows me to develop inside a Docker container without leaving VS Code. It’s ideal for creating consistent development environments and working with complex dependencies.
  • Use Case: Setting up isolated, containerized development environments.

4. Code Snippets & Syntax Highlighting

Intelephense

  • Extension ID: bmewburn.vscode-intelephense-client
  • Category: PHP Development
  • Why I Use It: Intelephense is my go-to PHP language server for better code navigation, auto-completion, and IntelliSense. It’s fast, robust, and provides rich support for modern PHP features.
  • Use Case: PHP projects, including Laravel and WordPress.

Laravel Blade Snippets

  • Extension ID: onecentlin.laravel-blade
  • Category: Laravel Development
  • Why I Use It: This extension provides Laravel Blade syntax highlighting, auto-completion, and snippets, making it easier to write Blade templates quickly and efficiently.
  • Use Case: For all my Laravel-based projects.

5. Productivity & Spell Checking

Code Time

[On Review]

  • Extension ID: softwaredotcom.swdc-vscode
  • Category: Productivity Tracking
  • Why I Use It: Code Time is an excellent extension for tracking coding activity and measuring productivity. It provides insights into coding patterns, time spent on different projects, and even has integration with Spotify for focus music.
  • Use Case: To analyze my coding habits and improve productivity by setting daily or weekly coding goals.

Todo Tree

[On Review]

  • Extension ID: Gruntfuggly.todo-tree
  • Category: Productivity
  • Why I Use It: Todo Tree helps organize and visualize TODOs, FIXMEs, and other comment tags in a tree view. It can be configured to highlight comments and bring more focus to pending tasks directly in the editor.
  • Use Case: Ideal for keeping track of code tasks and to-dos scattered across the codebase.

Code Spell Checker

[On Review]

  • Extension ID: streetsidesoftware.code-spell-checker
  • Category: Productivity
  • Why I Use It: A simple yet powerful extension that checks for spelling errors in source code. It helps catch typos in variable names, comments, and documentation, ensuring clean and professional code.
  • Use Case: To maintain code quality and avoid typos in documentation.

6. API Testing & Management

Postman for VS Code

  • Extension ID: postman.postman-for-vscode
  • Category: API Testing & Management
  • Why I Use It: This extension integrates Postman directly into VS Code, allowing me to create, test, and manage APIs without leaving the editor. It provides the same powerful capabilities as the standalone Postman app, making it easy to send requests and analyze responses.
  • Use Case: For developing, debugging, and documenting APIs seamlessly within my development environment.

Bonus: Importing and Exporting VS Code Extensions

To make it easier to manage VS Code extensions across different machines or share them with teammates, I often use the export and import commands available through VS Code’s command palette. Here’s how I handle it:

Exporting Extensions: Run the following command in your terminal to export a list of your currently installed extensions to a text file:

code --list-extensions > extensions-list.txt

This command saves all your active extensions to a file named extensions-list.txt.

Importing Extensions: If you want to install the same set of extensions on a new VS Code instance, use this command:

cat extensions-list.txt | xargs -n 1 code --install-extension

This will read through your extensions-list.txt file and install all the extensions listed.

Conclusion

VS Code extensions are a game-changer for developers, providing everything from better code formatting to AI-driven coding suggestions. The combination of these tools has made my development workflow smoother, more efficient, and more enjoyable. If you haven’t tried some of these extensions, I highly recommend giving them a go.

Let me know in the comments which extensions you rely on the most or if you have any recommendations I should try. For more content like this, check out my other articles on Medium.

Happy coding! 🎉

--

--

Shaon Majumder
Shaon Majumder

Written by Shaon Majumder

Software Engineer | Author | Data Scientist

No responses yet