VS Code in the browser for everyone

Sep 28, 2021

VS Code in the browser for everyone

Avatar of JohannesLandgraf Johannes Landgraf Avatar of svenefftinge Sven Efftinge Avatar of akosyakov Anton Kosyakov

TL;DR

  • Gitpod introduces open-source project OpenVSCode Server that runs the latest VS Code on a remote machine accessed through a modern web browser.
  • The project is backed by GitLab, VMware, Uber, SAP, Sourcegraph, RStudio, SUSE and many others.

In retrospect the second half of 2021 will mark an important turning point for remote, cloud-based developer environments. After two years GitHub managed to ship Codespaces (& received a cake 🎂). With JetBrains’ remote development support developers will be able to choose between IDEs to access Gitpod’s ephemeral, cloud-based developer environments later this year. For those who like the convenience of a browser, we have great news to share today.

We are excited to announce OpenVSCode Server - an open-source project that makes running VS Code in a browser easily accessible for all developers and organisations. OpenVSCode Server runs upstream VS Code on a remote machine accessed through a modern web browser - from any device, from anywhere.

Unlike other attempts, this project is based on a minimal set of changes and uses the same architecture that powers both Gitpod and GitHub Codespaces at scale.

The project is officially backed by our partners from GitLab, VMware, Uber, SAP, Sourcegraph, RStudio, SUSE, Tabnine, Render and TypeFox.

“Gitpod’s move to open source their technology will improve the productivity of developers who run VS Code in the browser. Extension developers can further automate end-to-end tests in a DevOps platform like GitLab, improving the overall developer flow from ideation through CI/CD pipelines.”

Sid Sijbrandij
Co-founder and CEO at GitLab
GitLab

“At Uber, we’ve invested in remote development solutions [..]. OpenVSCode Server will allow us to keep a current and easy-to-maintain developer experience, while providing the latest tooling to our developers. We’re thrilled to partner with Gitpod to integrate this new project.”

Ty Smith
Tech Lead for Uber’s Developer Platform
Uber

“OpenVSCode Server's technical alignment with the core VS Code open-source project provides an ideal architecture, and we are excited to integrate it into future versions of RStudio Workbench.”

JJ. Allaire
Founder & CEO RStudio
RStudio

“As usual, Gitpod is at the forefront of delivering solutions that move the entire industry forward.”

Chris Aniszczyk
CTO at CNCF
Cloud Native Computing Foundation

“Independently maintained projects like OpenVSCode Server play an important role as an alternative to vertically integrated dev ecosystems.”

Beyang Liu
Co-Founder & CTO Sourcegraph
Sourcegraph

Goals

We have been approached by individual developers and large organisations asking how we manage to always run the latest VS Code in Gitpod given that Microsoft doesn’t publish the source code they use to enable GitHub Codespaces. Since many developers and organisations want to adopt the approach within their own products and daily workflows with the same low-footprint technique like Gitpod, we decided to share this with everyone.

The project has the following long-standing objectives:

  1. Enable every developer to run the latest VS Code in the browser based on the same architecture that powers both Gitpod and GitHub Codespaces
  2. Eliminate the need for bad forks of VS Code that introduce unnecessary complexity
  3. Provide a straightforward upgrade path and low maintenance effort
  4. Demonstrate that professional software development in the cloud is a reality today
  5. Offer a browser-based VS Code distribution that is free from the control of Microsoft in addition to the vendor neutral OpenVSX extension registry

Benefits

We shared and tested the project with several developers and asked them about the benefits of OpenVSCode Server. Below is a list of the most common responses:

  • Use the power of the cloud - dependencies, compilation, testing, large data sets can all be run on machines far more powerful than your laptop
  • Remote access - you can access those machines from any device such as iPads and Chromebooks via a web browser with the familiar VS Code experience
  • Save battery & data - as all CPU and RAM intensive tasks run on the remote machine you will preserve battery life and keep your data plan under control
  • Keep your source secure - you keep your dev environment centralized and secure, away from your local machine

Getting Started

Getting started is as simple as a one-line docker run command and starting localhost:3000.

docker run -it --init -p 3000:3000 -v "$(pwd):/home/workspace:cached" gitpod/openvscode-server

To run VS Code on the cloud provider of your choice we created guides for AWS, Azure, Digital Ocean, GCP, Railway and Render.

A big thank you to all our engineers involved in making this happen, specifically Anton, Jean Pierre, Filip and Mike!

How is this different to Gitpod?

Gitpod is all about removing friction from the developer experience by provisioning and orchestrating automated, ephemeral developer environments for you and your team. An IDE is just one building block of a working cloud based developer environment, in addition to the operating system, databases, compilers and all the other tools you need to be productive. At Gitpod we want to support the IDE or editor you like best, and providing VS Code through the web browser is just one possibility. Alternatively, you can access your Gitpod workspaces through SSH, local VS Code and soon your favorite Jetbrains IDEs.

  • If you want one-click, fully automated developer environments that give yourself and your team an unparalleled productivity boost try Gitpod.

  • If you have a machine somewhere which you would like to access with VS Code through a browser, check out OpenVSCode Server.

GitLab
VMware
Uber
SAP
Sourcegraph
RStudio
openSUSE
Tabnine
Render
TypeFox

More articles

From Theia to OpenVSCode Server - A history of Cloud IDEs from Gitpod's IDE architect

Background story about the last four years improving the editing experience of Cloud IDEs.

Avatar of akosyakov Oct 20, 2021

Introducing Teams & Projects

Teams, projects, prebuilds—it's now all at your fingertips.

Avatar of jankeromnes Avatar of mikenikles Avatar of gtsiolis Oct 15, 2021

Match made in automation heaven

Tabnine integrates with Gitpod in browser-based VS Code.

Avatar of JohannesLandgraf Avatar of mikenikles Oct 6, 2021