Visual Studio Code for the Web (2023)

Visual Studio Code for the Web provides a free, zero-install Microsoft Visual Studio Code experience running entirely in your browser, allowing you to quickly and safely browse source code repositories and make lightweight code changes. To get started, go to in your browser.

VS Code for the Web has many of the features of VS Code Desktop that you love, including search and syntax highlighting while browsing and editing, along with extension support to work on your codebase and make simpler edits. In addition to opening repositories, forks, and pull requests from source control providers like GitHub and Azure Repos (in preview), you can also work with code that is stored on your local machine.

VS Code for the Web runs entirely in your web browser, so there are certain limitations compared to the desktop experience, which you can read more about below.

Relationship to VS Code Desktop

VS Code for the Web provides a browser-based experience for navigating files and repositories and committing lightweight code changes. However, if you need access to a runtime to run, build, or debug your code, or you want to use platform features such as a terminal, we recommend moving your work to the desktop application or GitHub Codespaces for the full capabilities of VS Code. In addition, VS Code Desktop lets you run extensions that aren't supported in the web version, and use a full set of keyboard shortcuts not limited by your browser.

When you're ready to switch, you'll be able to "upgrade" to the full VS Code Desktop experience with a few clicks.

You can also switch between the Stable and Insiders versions of VS Code for the Web by selecting the gear icon, then Switch to Insiders Version..., or by navigating directly to

Opening a project

By navigating to, you can create a new local file or project, work on an existing local project, or access source code repositories hosted elsewhere, such as on GitHub and Azure Repos (part of Azure DevOps).

You can navigate to a project repository directly from a URL, following the scheme: Using the VS Code repo as an example, this would look like:

To work with both GitHub and Azure Repos, VS Code for the Web supports two routes, and


Azure Repos:

(Video) VSCode.Dev (VS Code in the Browser) - A Few Reasons You Might Care

From your browser's search bar (aka omnibox), you can easily open any GitHub repository in Simply install the extension for Chrome and Edge. Then, type code to activate the omnibox, followed by your repository's name. Suggestions are populated by your browser search history, so if the repo you want doesn't come up, you can also type in the fully qualified <owner>/<repo> name to open it, for example microsoft/vscode.

Visual Studio Code for the Web (1)

If you're already in VS Code for the Web at, you can alternatively navigate to different repos via the Remote Repositories extension commands. Select the remote indicator in the lower left of the Status bar, and you'll be presented with the Open Remote Repository... command.

Visual Studio Code for the Web (2)

GitHub Repositories is the core component that provides the ability to remotely browse and edit a repository from within the editor.

Rather than cloning your work, GitHub Repositories creates a virtual file system to access repositories and pull requests, allowing you to become productive quickly without needing to pull code onto your local machine. You can learn more about the extension in our GitHub Repositories guide.

Note: The GitHub Repositories extension works in VS Code Desktop as well to provide fast repository browsing and editing.

You can create a new file in the web just as you would in a VS Code Desktop environment, using File > New File from the Command Palette (F1).

Azure Repos (preview)

Support for Azure Repos (part of Azure DevOps) in Visual Studio Code for the Web is in preview, and the experience will continue to grow and evolve over time.

When you navigate to a URL with the schema, you will be able to read, search the files in the repo, and commit your changes to Azure Repos. You can fetch, pull, and sync changes, and view branches.

You can open any repository, branch, or tag from Azure Repos in VS Code for the Web by prefixing to the Azure Repos URL.

Alternatively, when you are on an Azure DevOps repository or pull request, you can press (.) to open it in

Current limitations

Azure Repos support is currently read-only. Commit, branch, fork, and PR actions are disabled in the Source Control view and Command Palette.

(Video) Use Visual Studio Code in Web Browser | Online VS Code | Best Online Code Editor

More custom URLs

Like in the desktop, you can customize VS Code for the Web through a rich ecosystem of extensions that support just about every back end, language, and service. Unlike in the desktop, it's easy for us to deliver customized experiences with pre-installed extensions through unique URLs (like and described above).


You can share and experience color themes through VS Code for the Web through the URL scheme:

For instance, you can go to to experience the Night Owl theme without having to go through the download and install process.

Note: The color theme URL scheme works for themes that are fully declarative (no code).

An extension can define multiple themes. You can use the schema /theme/extensionId/themeName. If no themeName is specified, VS Code for the Web will take the first theme.

As a theme author, you can add the following badge to your extension readme to allow users to easily try out your theme in VS Code for the Web (replacing <extensionId> with your theme extension's unique identifier):

[![Preview in](](<extensionId>)

Live Share guest sessions are available in the browser through the URL. The sessionId will be passed to the extension to make joining a seamless experience.

Continue working in a different environment

In some cases, you will want to access a different environment that has the ability to run code. You can switch to working on a repository in a development environment that has support for a local file system and full language and development tooling.

The GitHub Repositories extension makes it easy for you to clone the repository locally, reopen it on the desktop, or create a GitHub codespace for the current repository (if you have the GitHub Codespaces extension installed and access to create GitHub codespaces). To do this, use the Continue Working On... command available from the Command Palette (F1) or click on the Remote indicator in the Status bar.

Use your own compute power with the VS Code Server

You may develop against another machine in VS Code for the Web using the VS Code Server.

The VS Code Server is a private preview service you can run on a remote development machine, like your desktop PC or a virtual machine (VM). It allows you to securely connect to that remote machine from anywhere through a URL, without the requirement of SSH. This lets you "bring your own compute" to, enabling additional scenarios like running your code in the browser.

You may learn more about the VS Code Server in its documentation.

Safe exploration

VS Code for the Web runs entirely in your web browser's sandbox and offers a very limited execution environment.

(Video) Run HTML Files using Visual Studio Code 2022

When accessing code from remote repositories, the web editor doesn't "clone" the repo, but instead loads the code by invoking the services' APIs directly from your browser; this further reduces the attack surface when cloning untrusted repositories.

When working with local files, VS Code for the Web loads them through your browser's file system access APIs, which limit the scope of what the browser can access.

Saving and sharing work

When working on a local file in the web, your work is saved automatically if you have Auto Save enabled. You can also save manually as you do when working in desktop VS Code (for example File > Save).

When working on a remote repository, your work is saved in the browser's local storage until you commit it. If you open a repo or pull request using GitHub Repositories, you can push your changes in the Source Control view to persist any new work.

Run anywhere

Similar to GitHub Codespaces, VS Code for the Web can run on tablets, like iPads.

Language support

Language support is a bit more nuanced on the web, including code editing, navigation, and browsing. The desktop experiences are typically powered by language services and compilers that expect a file system, runtime, and compute environment. In the browser, these experiences are powered by language services running in the browser that provide source code tokenization and syntax colorization, completions, and many single-file operations.

Generally, experiences fall into the following categories:

  • Good: For most programming languages, VS Code for the Web gives you code syntax colorization, text-based completions, and bracket pair colorization. Using a Tree-sitter syntax tree through the anycode extension, we're able to provide additional experiences such as Outline/Go to Symbol and Symbol Search for popular languages such as C/C++, C#, Java, PHP, Rust, and Go.
  • Better: The TypeScript, JavaScript, and Python experiences are all powered by language services that run natively in the browser. With these programming languages, you'll get the "Good" experience plus rich single file completions, semantic highlighting, syntax errors, and more.
  • Best: For many "webby" languages, such as JSON, HTML, CSS, and LESS, etc., the coding experience in is nearly identical to the desktop (including Markdown preview!).

You can determine the level of language support in your current file through the Language Status Indicator in the Status bar:

Visual Studio Code for the Web (3)


Since VS Code for the Web runs completely within the browser, some experiences will naturally be more constrained when compared to what you can do in the desktop app. For example, the terminal and debugger are not available, which makes sense since you can't compile, run, and debug a Rust or Go application within the browser sandbox.


Only a subset of extensions can run in the browser. You can use the Extensions view to install extensions in the web, and extensions that cannot be installed will have a warning icon and Learn Why link. We expect more extensions to become enabled over time.

Visual Studio Code for the Web (4)

When you install an extension, it is saved in the browser's local storage. You can ensure your extensions are synced across VS Code instances, including different browsers and even the desktop, by enabling Settings Sync.

(Video) Using Visual Studio Code to make a website

When an Extension Pack contains extensions that do not run in the browser sandbox, you will get an informational message with the option to see the extensions included in the pack.

Visual Studio Code for the Web (5)

When extensions are executed in the browser sandbox, they are more restricted. Extensions that are purely declarative, such as most themes, snippets, or grammars, can run unmodified and are available in VS Code for the Web without any modification from the extension authors. Extensions that are running code need to be updated to support running in the browser sandbox. You can read more about what is involved to support extensions in the browser in the web extension authors guide.

There are also extensions that run in the browser with partial support only. A good example is a language extension that restricts its support to single files or the currently opened files.

File system API

Edge and Chrome today support the File System API, allowing web pages to access the local file system. If your browser does not support the File System API, you cannot open a folder locally, but you can open files instead.

Browser support

You can use VS Code for the Web in Chrome, Edge, Firefox, and Safari.

Webviews might appear differently or have some unexpected behavior in Firefox and Safari. You can view issue queries in the VS Code GitHub repo to track issues related to specific browsers, such as with the Safari label and Firefox label.

There are additional steps you can take to improve your browser experience using VS Code for the Web. Review the Additional browser setup section for more information.

Mobile support

You can use VS Code for the Web on mobile devices, but smaller screens may have certain limitations.


Certain keybindings may also work differently in the web.

⇧⌘P (Windows, Linux Ctrl+Shift+P) won't launch the Command Palette in Firefox.⇧⌘P (Windows, Linux Ctrl+Shift+P) is reserved in Firefox.
As a workaround, use F1 to launch the Command Palette.
⌘N (Windows, Linux Ctrl+N) for new file doesn't work in web.⌘N (Windows, Linux Ctrl+N) opens a new window instead.
As a workaround, you can use Ctrl+Alt+N (Cmd+Alt+N on macOS).
⌘W (Windows, Linux Ctrl+W) for closing an editor doesn't work in web.⌘W (Windows, Linux Ctrl+W) closes the current tab in browsers.
As a workaround, you can use Ctrl+Shift+Alt+N (Cmd+Shift+Alt+N on macOS).
⇧⌘B (Windows, Linux Ctrl+Shift+B) will not toggle the favorites bar in the browser.VS Code for the Web overrides this and redirects to the "Build" menu in the Command Palette.
Alt+Left and Alt+Right should navigate within the editor but may incorrectly trigger tab history navigation.If focus is outside the editor, these shortcuts trigger tab history navigation instead.

Additional browser setup

There are additional browser configuration steps you can take when working with VS Code in a browser.

Opening new tabs and windows

In certain cases, you may need to open a new tab or window while working in VS Code for the Web. VS Code might ask you for permission to access the clipboard when reading from it. Depending on your browser, you may grant access to the clipboard or otherwise allow for pop-up windows in different ways:

  • Chrome, Edge, Firefox: Search for "site permissions" in your browser's settings, or look for the following option in the address bar on the right:

Visual Studio Code for the Web (6)

(Video) Free Course: Beginner Web Design using HTML5, CSS3 & Visual Studio Code

  • Safari: In the Safari browser, go to Preferences... > Websites > Pop-up Windows > the domain you're accessing (for example,, and select Allow from the dropdown.



Visual Studio Code for the Web? ›

Bringing VS Code to the browser

Now when you go to, you'll be presented with a lightweight version of VS Code running fully in the browser. Open a folder on your local machine and start coding. No install required.

Can you run code in VS Code for the Web? ›

Bringing VS Code to the browser

Now when you go to, you'll be presented with a lightweight version of VS Code running fully in the browser. Open a folder on your local machine and start coding. No install required.

Can I use Visual Studio on Web? ›

Visual Studio includes integrated tools to deploy your web application to any host or scale to the Microsoft Azure cloud. Publish and manage your websites and virtual machines from within Visual Studio.

How do I run Visual Studio code in browser? ›

Using the Visual Studio Code Editor, open the desired file. Go to the toolbar on the left and select “Extensions.” Click on the search bar in the Extensions panel and write “open in browser.”


1. My Visual Studio Code Setup for Web Development
2. Visual Studio Code Web Dev Setup In 6 Minutes
3. Visual Studio Code 2022 | Web Dev Setup | Top Extensions, Themes, Settings, Tips & Tricks
4. Microsoft Visual Studio Code - How to view HTML code in a browser
(Professor Saad)
5. Show Chrome Browser Side By Side In Visual Studio Code | Auto Refresh Browser In Visual Studio Code
(Tech By Usman)
6. Visual Studio Code setup for HTML CSS and JavaScript | VS Code setup for beginners
(Norbert BM Web Development)


Top Articles
Latest Posts
Article information

Author: Van Hayes

Last Updated: 21/09/2023

Views: 6622

Rating: 4.6 / 5 (66 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Van Hayes

Birthday: 1994-06-07

Address: 2004 Kling Rapid, New Destiny, MT 64658-2367

Phone: +512425013758

Job: National Farming Director

Hobby: Reading, Polo, Genealogy, amateur radio, Scouting, Stand-up comedy, Cryptography

Introduction: My name is Van Hayes, I am a thankful, friendly, smiling, calm, powerful, fine, enthusiastic person who loves writing and wants to share my knowledge and understanding with you.