Cosmonic, the company behind the open source wasmCloud project, today announced that its WebAssembly (Wasm) platform-as-a-service offering is now in public beta. In this open beta, Cosmonic is also introducing a number of new features that aim to make integrating Wasm into existing applications easier, including Cosmonic Connect Kubernetes, which makes integrating existing Kubernetes clusters and WebAssembly applications running in Cosmonic a lot easier.
The company was co-founded by Liam Randall, who previously founded Critical Stack, one of the first Kubernetes companies, which was acquired by Capital One. He also worked on projects like Cloud Custodian, which Capital One then donated to the CNCF, and later joined Stacklet, which aimed at commercializing Cloud Custodian.
“I’m more excited about WebAssembly and Cosmonic than I’ve ever been about anything. I truly believe that we’re going to talk about the next epoch of computing today,” he told me.
However, like during the early days of Kubernetes, the Wasm community is also still building out the necessary ecosystem around the core technology to make it palatable to large enterprises. It’s possible to use Wasm in production, as large companies like Adobe and Cloudflare have shown, but the tooling is still very rudimentary. And for a lot of teams, the focus for WebAssembly is functions-as-a-service (FaaS). That’s definitely an important use case, but the Cosmonic team wants to go beyond that.
“A lot of people are really pivoting towards FaaS. It’s all functions,” Cosmonic Engineering Director Taylor Thomas explained. “And you know what, that’s a very good use case. I personally think that within the next three to five years, all FaaS platforms will be using WebAssembly, because it’s just the easiest way to get all the language support. But that’s one little tiny slice of a much bigger picture. And that’s where Cosmonic and wasmCloud really shine. We don’t lock you into a specific platform architecture. We don’t want you to have to say: you have to do this as a FaaS. You can use it as a FaaS, that’s entirely possible, but you can also build monoliths, you can build microservices, you can build event-driven architectures.”
The promise of WebAssembly, after all, isn’t that it allows users to build better a FaaS platform, but that developers will be able to write their code once and then run it anywhere — and that’s what Cosmonic wants to focus on, in addition to an emphasis on the WebAssembly component model, which allows developers to assemble their applications’ different components and run that code anywhere — something Cosmonic also emphasizes in its PaaS product.
“WebAssembly — and specifically the WebAssembly component model — is poised to be the final abstraction of technology,” Randall said. “It turns application libraries into building blocks and these building blocks aligned to contracts for things like an abstraction for a global database or a key value store or a message queue. And then underneath the hood, at runtime, you can attach those to completely different implementations even in different languages, as long as the interface is the same. This is the final abstraction that all tech has really been searching for for the last 20 years.”
Cosmonic’s PaaS is enabled by the wasmCloud application runtime, which Cosmonic donated to the CNCF in 2021. Some of the more than 150 contributors to this project include the likes of Capital One, Volvo, BMW and Intel.
Another open source project from Cosmonic is Wadm, a declarative application manager for wasmCloud applications. This takes a model that most developers are familiar with from the cloud-native infrastructure world and extends it to the WebAssembly space.
“We think of this like upgrading your car with the latest technology,” said Thomas. “Your car might be years old but it still works great and you really enjoy driving it. But you also really like the idea of a push-button start and a hybrid engine. Wadm allows you to keep what you love about your infrastructure — familiar, easy maintenance, reliable, runs forever — updated with the latest features.”