Sep 28, 2021
VS Code in the browser for everyone
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.”
Co-founder and CEO at 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.”
Tech Lead for Uber’s Developer Platform
“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.”
Founder & CEO RStudio
“As usual, Gitpod is at the forefront of delivering solutions that move the entire industry forward.”
CTO at CNCF
“Independently maintained projects like OpenVSCode Server play an important role as an alternative to vertically integrated dev ecosystems.”
Co-Founder & CTO 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:
- Enable every developer to run the latest VS Code in the browser based on the same architecture that powers both Gitpod and GitHub Codespaces
- Eliminate the need for bad forks of VS Code that introduce unnecessary complexity
- Provide a straightforward upgrade path and low maintenance effort
- Demonstrate that professional software development in the cloud is a reality today
- 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.