HOME

TheInfoList



OR:

Visual Studio Code, commonly referred to as VS Code, is an
integrated development environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
developed by
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
for
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
,
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
and
web browser A web browser, often shortened to browser, is an application for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's scr ...
s. Features include support for
debugging In engineering, debugging is the process of finding the Root cause analysis, root cause, workarounds, and possible fixes for bug (engineering), bugs. For software, debugging tactics can involve interactive debugging, control flow analysis, Logf ...
, syntax highlighting, intelligent code completion, snippets,
code refactoring In computer programming and software design, code refactoring is the process of restructuring existing source code—changing the '' factoring''—without changing its external behavior. Refactoring is intended to improve the design, structure, ...
, and embedded
version control Version control (also known as revision control, source control, and source code management) is the software engineering practice of controlling, organizing, and tracking different versions in history of computer files; primarily source code t ...
with Git. Users can change the theme,
keyboard shortcut In computing, a keyboard shortcut (also hotkey/hot key or key binding) is a software-based assignment of an action to one or more keys on a computer keyboard. Most Operating system, operating systems and Application software, applications come ...
s and preferences, as well as install extensions that add functionality. Visual Studio Code is
proprietary software Proprietary software is computer software, software that grants its creator, publisher, or other rightsholder or rightsholder partner a legal monopoly by modern copyright and intellectual property law to exclude the recipient from freely sharing t ...
released under the "Microsoft Software License", but based on the
MIT license The MIT License is a permissive software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts very few restrictions on reuse and therefore has high license compatibility. Unl ...
d program named "Visual Studio CodeOpen Source" (also known as "CodeOSS"), also created by Microsoft and available through
GitHub GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
. In the 2024
Stack Overflow In software, a stack overflow occurs if the call stack pointer exceeds the stack bound. The call stack may consist of a limited amount of address space, often determined at the start of the program. The size of the call stack depends on many fa ...
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.


History

Visual Studio Code was first announced on April 29, 2015 by Microsoft at the 2015 Build conference. A preview build was released shortly thereafter. On November 18, 2015, the project "Visual Studio CodeOpen Source" (also known as "CodeOSS"), on which Visual Studio Code is based, was released under the open-source
MIT License The MIT License is a permissive software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts very few restrictions on reuse and therefore has high license compatibility. Unl ...
and made available on
GitHub GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
. Extension support was also announced. On April 14, 2016, Visual Studio Code graduated from the public preview stage and was released to the web.


Features


Code editor

Visual Studio Code is a source-code editor that can be used with a variety of programming languages, including C, C#, C++, Fortran, Go,
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
,
JavaScript JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior. Web browsers have ...
, Node.js, Python, Rust, and Julia. Visual Studio Code employs the same editor component (codenamed "Monaco") used in Azure DevOps (formerly called "Visual Studio Online" and "Visual Studio Team Services"). The downloadable version of Visual Studio Code is built on the
Electron The electron (, or in nuclear reactions) is a subatomic particle with a negative one elementary charge, elementary electric charge. It is a fundamental particle that comprises the ordinary matter that makes up the universe, along with up qua ...
framework, which is used to develop Node.js
web application A web application (or web app) is application software that is created with web technologies and runs via a web browser. Web applications emerged during the late 1990s and allowed for the server to dynamically build a response to the request, ...
s that run on the Blink 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 (on
GitHub GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
and Microsoft Azure) without installing the full program. It is officially supported and hosted by Microsoft and can be accessed at . Out of the box, Visual Studio Code includes basic support for most common programming languages. This basic support includes syntax highlighting, bracket matching,
code folding Code or text folding, or less commonly holophrasting, is a feature of some graphical user interfaces that allows the user to selectively hide ("fold") or display ("unfold") parts of a document. This allows the user to manage large amounts of text ...
, and configurable snippets. Visual Studio Code also ships with IntelliSense for JavaScript, TypeScript,
JSON JSON (JavaScript Object Notation, pronounced or ) is an open standard file format and electronic data interchange, data interchange format that uses Human-readable medium and data, human-readable text to store and transmit data objects consi ...
, CSS, and
HTML Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It defines the content and structure of web content. It is often assisted by technologies such as Cascading Style Sheets ( ...
, as well as debugging support for Node.js. Support for additional languages can be provided by freely available extensions on the VS Code Marketplace.


Debugging

VS Code features a built-in
debugger A debugger is a computer program used to test and debug other programs (the "target" programs). Common features of debuggers include the ability to run or halt the target program using breakpoints, step through code line by line, and display ...
designed to enhance the development process. It provides native support for debugging Node.js applications, while additional debuggers for other programming languages can be installed via extensions. The debugger allows developers 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 display disassembly for low-level analysis in C++. Furthermore, users can set breakpointseither standard or conditionalto 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. This panel is integrated directly into the debugging session, enabling users to evaluate expressions, such as checking variable values or testing functions, and execute commands on the fly. This functionality provides developers with greater control and deeper insight into the program's behavior.


File management and workspace

Instead of a project system, VS Code allows users to open one or more directories, which can then be saved in workspaces for future reuse. This allows it to operate as a language-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. The command palette is able to execute virtually every feature the graphical interface supports, making it very keyboard-accessible.


Integrated terminal

Visual Studio Code provides a fully featured ''integrated terminal'' that opens at the root of the current workspace, allowing users to run shell commands without leaving the editor environment. It can be toggled via View → Terminal, the Command Palette (View: Toggle Integrated Terminal), or the keyboard shortcut (Ctrl+`). Users may open multiple terminals in tabs or split panes, rename them, and kill sessions individually, directly within the editor UI. This terminal hosts any shell installed on the system—Bash, Zsh, PowerShell, Fish, Git Bash, WSL, etc.—and detects available profiles automatically, making it simple to switch contexts via the dropdown menu or the Terminal: Select Default Profile command. Beyond basic command execution, VS Code’s shell integration also contains clickable file links, working-directory awareness, and error-detection markers in the scrollbar. These enhancements simplify tracing errors and navigating code paths by allowing direct jumps to source files, preserving the current working directory context, and highlighting problems inline within the terminal’s scroll bar.


Extensibility and customization

Visual Studio Code can be extended via extensions. Users may install extensions from the VS Code Marketplace to add language support, editor, themes, debuggers, and additional utilities. A notable feature is the ability to create extensions that add support for new
language Language is a structured system of communication that consists of grammar and vocabulary. It is the primary means by which humans convey meaning, both in spoken and signed language, signed forms, and may also be conveyed through writing syste ...
s, themes,
debugger A debugger is a computer program used to test and debug other programs (the "target" programs). Common features of debuggers include the ability to run or halt the target program using breakpoints, step through code line by line, and display ...
s, time travel debuggers, perform
static code analysis In computer science, static program analysis (also known as static analysis or static simulation) is the analysis of computer programs performed without executing them, in contrast with dynamic program analysis, which is performed on programs duri ...
, and add code linters using the Language Server Protocol.


Source control

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 and pull requests directly from the Visual Studio Code program. Visual Studio Code collects usage data and sends it to Microsoft to help improve the product. This telemetry feature can be disabled. The information contained in this telemetry data can be inspected by the public, since the product is open source.


Remote development and web-based access

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. This version supports basic editing tasks and integration with remote repositories.


Insiders

Visual Studio Code Insiders logo, alt=An orange version of the Visual Studio Code logo VS Code Insiders is a nightly 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. 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.


Reception

In the 2016
Stack Overflow In software, a stack overflow occurs if the call stack pointer exceeds the stack bound. The call stack may consist of a limited amount of address space, often determined at the start of the program. The size of the call stack depends on many fa ...
Developer Survey, Visual Studio Code ranked 13 among the top popular development tools, with only 7% of the 47,000 respondents using it. Two years later, Visual Studio Code rose to the no.1 spot, with 35% of the 75,000 respondents using it. Since then Visual Studio Code has retained the no.1 spot, with the percentage of respondents reporting using it increasing to 50% in 2019, 74.5% in 2021, 74.48% in 2022, 73.71% in 2023, and 73.6% in 2024. (The 2020 Developers Survey did not cover
integrated development environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
s.)


Controversy


CEC-IDE

On June 20, 2023, during the Guangdong Province's Digital Government Innovation Development Forum held in
Guangzhou Guangzhou, Chinese postal romanization, previously romanized as Canton or Kwangchow, is the Capital city, capital and largest city of Guangdong Provinces of China, province in South China, southern China. Located on the Pearl River about nor ...
, CEC-IDE was released and described as the first Chinese-produced integrated development tool. 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.


Removal of suspicious extension

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 displaying release 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.


See also

*
Comparison of integrated development environments The following tables list notable software packages that are nominal IDEs; standalone tools such as source-code editors and GUI builders are not included. These IDEs are listed in alphabetic order of the supported language. ActionScript A ...
*
GitHub Copilot GitHub Copilot is a code completion and automatic programming tool developed by GitHub and OpenAI that assists users of Visual Studio Code, Visual Studio, Neovim, and JetBrains integrated development environments (IDEs) by autocomplete, autocom ...
* Visual Studio * Eclipse Theia


References


External links

*
Microsoft's "CodeOSS" Github repository
{{JavaScript 2015 software HTML editors Java development tools Linux text editors MacOS text editors Microsoft software
Code In communications and information processing, code is a system of rules to convert information—such as a letter, word, sound, image, or gesture—into another form, sometimes shortened or secret, for communication through a communicati ...
Free software distributions Windows text editors XML editors