Low latency development environments on the cloud powered by Nix
Today we're rolling out Devbox Cloud and making it available as an Open Beta. While in Beta we’re making it available for free to everyone.
Devbox Cloud is a managed service that spins up virtual machines on the cloud for development purposes. The virtual machines are automatically started at the edge, in a data center close to you, for super fast latency.
The environment in each machine is managed via our open source Devbox CLI, which uses Nix behind the scenes to perfectly reproduce the environment you’ve declared every single time.
If you’re eager to try it out, please check out our documentation to get started; and give us feedback. In the rest of this post, I want to give you more context on why we built Devbox Cloud and what makes it unique.
How we started working on Devbox Cloud
Our goal at Jetpack.io is to simplify the development of sophisticated cloud applications by giving developers easy to use tools, frameworks and services.
To that end, we’ve been releasing several offerings – each targeting a different set of challenges developers face when doing cloud development.
About 5 months ago we released the open source Devbox project to make it easy to create reproducible development environments powered by Nix – without having to learn Nix.
We’ve seen a ton of traction with Devbox and have been talking to several of our most active users – and one of the most common requests we heard was the desire to easily create dev environments on the cloud.
Our take on Cloud Development Environments
After hearing from our users that many wanted a solution for cloud environments; we took a look at existing solutions like Gitpod and GitHub Codespaces. We wanted to make sure we weren’t just rebuilding a service that already existed. After trying these tools for ourselves we realized we wanted a solution that met the following requirements:
Works with any editor (BYOE)
Most developers have a favorite editor that they’ve configured over a period of years and want to continue using for cloud development. Most existing solutions offer VSCode on the browser – and while we love VSCode, we wanted cloud development environments that would work with any editor.
Devbox Cloud takes a different approach: we automatically sync files between your local computer and your cloud VM. As a result you can use any editor you want to edit your files locally, and the changes will be automatically reflected in your cloud VM as well.
No lag when used over SSH
A really common way of accessing a cloud VM is over SSH. Because SSH only renders characters once they’ve been acknowledged as received by the remote machine; any latency in the connection is experienced as lag.
I don’t know about you but I find a very laggy SSH connection maddening as you slowly wait for the characters you’ve typed to slowly appear on the screen.
To get rid of lag, Devbox Cloud starts VMs on the edge of the cloud; automatically picking a data center closest to you to provide fast latency and get rid of lag.
Runs both locally and on the cloud
We believe developer environments should be portable. That is, you should be able to declare them only once, and then use that one definition to run them anywhere you want: locally or in the cloud, in a container or outside of one, in Linux or in MacOS.
And the same person might choose to use different modalities depending on what they are doing. Maybe you want to run things locally as you’re about to board a plane where you won’t have great internet connectivity; and later you want to access a cloud VM from your iPad so you can develop while your laptop is in the shop.
Devbox and Devbox Cloud were built with this portability in mind; making it easy to declare your environment only once and run it anywhere.
No lock in
Finally, we wanted to make sure we built a product that doesn’t lock you in. We want you to use our product because you love it – not because you’re forced to use it.
The Devbox CLI is completely open source and forever free. It works on Linux, MacOS and WSL; and can be used inside or outside Docker containers. This means that at any time, if you’re not satisfied with Devbox Cloud, you can continue to use the open source CLI to take that development environment with you and recreate it anywhere you want.
Give it a try
Please give Devbox Cloud a try and let us know what you think. We plan to evolve the product based on your feedback!