Codespaces: GitHub’s Browser-based Coding Environment

Dev Environments for Immediate Contributions!

Dinuka Piyadigama
4 min readMay 18, 2020
Codespaces — GitHub’s Browser-based Dev Environment

Codespaces is a complete cloud-hosted dev environment which was unveiled at GitHub Satellite 2020. It’s built with Microsoft’s Visual Studio Code (VS Code) interface, which is a code editor that a majority of developers have chosen to use regardless of the programming language. Although there’re browser-based dev environments like CodePen, the speciality of Codespaces is that it’ll be directly integrated into GitHub, which is where many developers already commit their code to.

There’re will be an “Open codespace” button in the Code tab of repositories that support Codespaces.

Open Codespaces on GitHub

Collaborate With Ease

The first thing that came to my mind when I got to know what Codespaces could do was, “This is gonna be great for Open Source contributions and bug fixes!”

Although Codespaces initially requires to be configured for a repository that is expected to have this option, the benefits of having it configured and ready to use would make project collaborations much easier. It’ll also make it extremely easy to make a quick bug fix without having to pull in changes, edit, commit and push fixes.

Collaborate — Photo by John Schnobrich on Unsplash

Although Open Source was what came to my mind at first, the more you think of it, the more you realize that it’ll be very helpful even for team-projects. How many times have you gotten a message from your friend asking for help with a certain issue and felt too lazy to clone the project and set it up in your machine? With Codespaces, you can directly make changes from the browser itself without having to go through all that hassle of setting up a project. It won’t even matter if you’ve only brought your light-duty laptop, ’cause it the processing power of your laptop doesn’t matter since changes are built in the cloud.

Currently, Codespaces are available only for repositories that are public. Private repositories that belong to organizations aren’t supported as of yet.

The Complete VS Code Experience

Codespaces — the complete VS Code Experience in the browser

Then comes in the handy features that VS Code offers. Live Share for an instance! This is a VS Code plug-in that is already available for the desktop version. This is a perfect tool that can be used for collaboration purposes. As a beginner who stepped into programming, Live Share helped me get help from friends without having to send them my entire project. I just had to send them a link and allow edit access. It’s extremely easy to learn as well since cursor movements are shown live.

Code completion and navigation and terminal access are several other features that are supported by the browser-based VS Code editor provided with Codespaces.

You not only get to edit code, but you also get to load any dependencies, developer tools, extensions, and dotfiles. This means that u can have the entire project up and running in your browser with the click of a button.

All this has been made possible thanks to Microsoft’s acquisition of GitHub which happened a few years ago. With Microsoft’s acquisition of npm, we can only expect things to set up as smooth as ever.

Versions Won’t Even Matter!

The fact that projects can be opened in a containerized manner means that it’s possible to work on projects that use different versions of dependencies. There won’t be conflicts between projects.

It’s also possible to start Codespaces in GitHub and connect to it from the desktop IDE.

Pricing

Yeah, I know… it’s quite disappointing to even see “Pricing” for a really handy feature like this.

It’s mentioned that “pay-as-you-go pricing” will be offered for the use of Codespaces cloud environments. It’s understandable that GitHub has to bare-up the price for server hosting, but it would be nice to receive a certain amount of free usage for projects with small build requirements. And of course, it’ll be really great if GitHub could provide free-usage for students with the GitHub Education Pack!

Currently, the Beta version for Codespaces is available for usage upon request. You can sign-up to request for early access here.

--

--