Cloudflare recently announced that it would be open-sourcing its Cloudflare Workers runtime, which is a platform for building serverless apps.
The decision came about because when talking to developers not yet using Cloudflare Workers, their two main hesitations tend to be that they worry about vendor lock-in and they want a local development environment.
According to Cloudflare, though these might seem like unrelated concerns, they both led to the same question from developers: Can Cloudflare open source Workers?
Cloudflare’s director of product Rita Kozlov explained in a blog post that it had never been Cloudflare’s intention to introduce opaqueness into the stack, but that it couldn’t give developers the ability to program on its network at the expense of performance or security.
It first looked at building its runtime on V8, but that introduced issues like latency, so then it turned to web standards, specifically the Service Workers API. Though Service Workers was designed to work in a web browser, Cloudflare felt that the model of Requests and Responses fit its use case, and it also liked the idea of code being portable to other environments.
“We didn’t know at the time whether this was going to work. Whether this approach would take off, whether this would all work at scale, whether developers would adopt this model, despite it diverging from what JavaScript looked like on the server-side at the time… What we did know was that we had a lot to prove, that we didn’t want to lock anyone in, and that open sourcing something properly is not an effort we wanted to take lightly. We wanted to support our community the same way we felt supported by all the open source projects we ourselves were building upon. Now, it feels like we’re finally there, and we believe the next step in our runtime’s evolution is to give it to the world, and let developers build with it wherever they want, however they want,” Kozlov wrote in a blog post.
Workers will be available under the Apache 2.0 license to enable developers to build freely on the platform.