Visual Studio Code isproprietary software released under the "Microsoft Software License",[6] but based on theMIT licensed program named "Visual Studio Code — Open Source" (also known as "Code — OSS"), also created by Microsoft and available throughGitHub.[12]
In the 2024Stack Overflow Developer Survey, out of 58,121 responses, 73.6% of respondents reported using Visual Studio Code, more than twice the percentage of respondents who reported using its nearest alternative,Visual Studio.[13]
Visual Studio Code was first announced on April 29, 2015 by Microsoft at the 2015Build conference. Apreview build was released shortly thereafter.[14]
On November 18, 2015, the project "Visual Studio Code — Open Source" (also known as "Code — OSS"), on which Visual Studio Code is based, was released under theopen-sourceMIT License and made available onGitHub.[12]
Visual Studio Code is a source-code editor that can be used with a variety of programming languages, includingC,C#,C++,Fortran,Go,Java,JavaScript,Node.js,Python,Rust, andJulia.[17][18][19][20][21] Visual Studio Code employs the same editor component (codenamed "Monaco") used inAzure DevOps (formerly called "Visual Studio Online" and "Visual Studio Team Services").[22]
The downloadable version of Visual Studio Code is built on theElectron framework,[23] which is used to developNode.jsweb applications that run on theBlink layout engine. Visual Studio Code for the Web is a browser-based version of the editor that can be used to edit both local files and remote repositories (onGitHub andMicrosoft Azure) without installing the full program.[24] It is officially supported and hosted by Microsoft and can be accessed atvscode.dev.
Out of the box, Visual Studio Code includes basic support for most common programming languages. This basic support includessyntax highlighting,bracket matching,code folding, and configurable snippets. Visual Studio Code also ships withIntelliSense for JavaScript, TypeScript,JSON,CSS, andHTML, as well as debugging support for Node.js. Support for additional languages can be provided by freely available extensions on the VS Code Marketplace.[25]
VS Code features a built-indebugger designed to enhance the development process. It provides native support for debuggingNode.js applications, while additional debuggers for other programming languages can be installed via extensions. The debugger allowsdevelopers to attach to running processes and step through source code line-by-line during execution, offering a detailed view of program flow. It can also displaydisassembly for low-level analysis inC++.[26] Furthermore, users can setbreakpoints—either standard or conditional—to pause execution at specific points and examine the program's state, while also monitoring variable values in real-time as the code runs.
An interactive feature of VS Code's debugging toolkit is the Debug Console.[27] This panel is integrated directly into the debugging session, enabling users to evaluate expressions, such as checking variable values or testingfunctions, and executecommands on the fly. This functionality provides developers with greater control and deeper insight into the program's behavior.
Instead of a project system, VS Code allows users to open one or moredirectories, which can then be saved in workspaces for future reuse. This allows it to operate as alanguage-agnostic code editor for any language. It supports many programming languages and a set of features that differ per language. Unwanted files and folders can be excluded from the project tree via settings.
Many Visual Studio Code features are not exposed through menus or the user interface but can be accessed via the command palette.[28] The command palette is able to execute virtually every feature the graphical interface supports, making it very keyboard-accessible.[29]
Source control is a built-in feature of Visual Studio Code. It has a dedicated tab inside the menu bar where users can access version control settings and view changes made to the current project. To use the feature, Visual Studio Code must be linked to any supported version control system (Git,Apache Subversion,Perforce, etc.). This allows users to create repositories and to make push andpull requests directly from the Visual Studio Code program.
Visual Studio Codecollects usage data and sends it to Microsoft to help improve the product. This telemetry feature can be disabled.[33] The information contained in this telemetry data can be inspected by the public, since the product is open source.[34]
VS Code supports remote development through extensions such as Remote -SSH, Remote -Containers, and Remote -WSL. These tools enable users to connect to and develop within remote environments, including servers and containers.
Visual Studio Code for the Web (accessible at vscode.dev) allows users to edit files directly in a web browser without the need to install the desktop application.[35] This version supports basic editing tasks and integration with remote repositories.
VS Code Insiders is anightly build version of this code editor, providing users with the opportunity to experience new features, bug fixes, and improvements ahead of their official release. It is compiled every night based on the latest changes from the development team, allowing users to test and provide feedback before these updates are officially released in the stable version.[36]
This version is completely independent of the standard version, meaning users can install and run both simultaneously without any interference between their settings, extensions, or themes. This design enables developers to explore and experiment with the latest features of the code editor without affecting their primary development environment.
In the 2016Stack Overflow Developer Survey, Visual Studio Code ranked 13th among the top popular development tools, with only 7% of the 47,000 respondents using it.[37] Two years later, Visual Studio Code rose to the no.1 spot, with 35% of the 75,000 respondents using it.[38] Since then Visual Studio Code has retained the no.1 spot, with the percentage of respondents reporting using it increasing to 50% in 2019,[39] 74.5% in 2021,[40] 74.48% in 2022,[41] 73.71% in 2023,[42] and 73.6% in 2024.[43] (The 2020 Developers Survey did not coverintegrated development environments.[44])
On June 20, 2023, during theGuangdong Province's Digital Government Innovation Development Forum held inGuangzhou, CEC-IDE was released and described as the first Chinese-produced integrated development tool.[45][46] However, CEC-IDE was subsequently found to be a rebranded release of Visual Studio Code that, among other things, failed to include a copy of the MIT license as required for redistributions. On August 26, Digital Guangdong published a statement admitting that CEC-IDE is based on Visual Studio Code.[47]
In late February 2025, Microsoft flagged an extension named 'Material Theme Icons – Free' as malicious due to setting of multiple red flags that indicated malicious intent, and banned the developer, Mattia Astorino, from the Marketplace over security concerns. Astorino contested the allegations, attributing the issue to an outdated dependency used since 2016 for displayingrelease notes. After further review, Microsoft acknowledged the mistake and publicly apologized to Astorino on March 12, accompanied by assurances from Microsoft that they would refine their scanning and review policies to prevent similar incidents in the future.[48]
^abDias, Chris (4 December 2015)."Issue: Menu license links to non Open Source license".Microsoft/vscode repo.Microsoft. Response #161792005.Archived from the original on 4 September 2022. Retrieved21 February 2019 – viaGitHub.com.We wanted to deliver a Microsoft branded product, built on top of an open source code base that the community could explore and contribute to.
^"Visual Studio Code FAQ".Visual Studio Code. Microsoft.Archived from the original on 28 August 2016. Retrieved4 November 2016.VS Code collects usage data and sends it to Microsoft to help improve our products and services. Read our privacy statement to learn more. If you don't wish to send usage data to Microsoft, you can set the telemetry.enableTelemetry setting to false.
^"广东省数字政府科技创新发展论坛举办" [Guangdong Province Digital Government Technology Innovation Development Forum Held].People's Government of Guangdong Province (in Chinese (China)). 2023-06-21. Archived fromthe original on 2023-07-21.
^麒麟软件 (2023-06-26).""粤"上高地|麒麟软件与数字广东携手推动广东数字政府建设".Weixin Public Platform (in Chinese (China)).Archived from the original on 2023-10-24. Retrieved2023-08-30.