TNS
VOXPOP
Favorite Social Media Timesink
When you take a break from work, where are you going?
Instagram/Facebook
0%
Discord/Slack
0%
LinkedIn
0%
Video clips on TikTok/YouTube
0%
X, Bluesky, Mastodon et al...
0%
Web surfing
0%
I do not get distracted by petty amusements
0%
Software Development / WebAssembly

Extism v1: Run WebAssembly in Your App 

The open source project Extism is designed to enable software end users to enhance existing applications, adding extensibility through Wasm-based plug-ins.
Jan 25th, 2024 3:00am by
Featued image for: Extism v1: Run WebAssembly in Your App 

Version 1 of Dylibso’s Extism is ready, marking a significant milestone in the development of this open source WebAssembly (Wasm) project. After years of Wasm’s development and theory, Extism demonstrates some of the more interesting and cool capabilities of WebAssembly that are no longer just a work in progress.

Extism acts as a framework designed to enable software end users to enhance existing applications, adding extensibility to these apps as specified by their developers through the use of WebAssembly-based plug-ins.

With Extism — after more than a few bugs have ostensibly been worked out — developers can install it as a library dependency into their application,  and enable their app’s users to extend the functionality of the app with their own code. This extensibility applies to web applications, code generators, Function as a Service (FaaS) platforms, Internet of Things (IoT) systems, and more.

Extism supports more than 16 programming languages, including PHP, Rust, JavaScript, Python, Ruby, Zig, Java, Go, C# and C++. Plug-in developers can write programs in their language of choice, and compile them into a WebAssembly module, which is run inside the application to extend the application’s features.

“Extism offers developers a streamlined, off-the-shelf extensibility solution to aid a common problem: never-ending feature requests from customers,” Steve Manuel, CEO and co-founder of Dylibso, told The New Stack.

“Every engineering team and product manager building a customer-facing application is faced with a backlog of requests, each with conflicting priorities — it’s impossible to keep up. So, Extism helps you let your customers implement extensions and new features to your app, which may be exclusively useful and available to them.”

The release and the previous introduction of Emscripten (although it’s limited to compiling C/C++ to WebAssembly modules), and WebAssembly tools such as Fermyon for Wasm app creation and distribution, raises the question of how the WebAssembly horse race will take shape. This prompts consideration of the broader implications for WebAssembly as a technology, demonstrating its practical application in SDKs and its potential influence on the development landscape.

For the People

The Extism release is a manifestation of Dylibso’s developers’ work to make WebAssembly tools more accessible.

Benjamin Eckel, co-founder of Dylibso, which also makes Observe SDK for monitoring and Modsurfer for WebAssembly analysis, said during his talk at the Linux Foundation conference WasmCon in September that Dylibso’s “next milestone is to achieve some level of parity with traditional systems.

“We don’t really want this to be its own little world. You write all this weird instrumentation in our own little thing — there’s a lot of code and frameworks and applications that are instrumented already,” Eckel said. “We want as much as possible for that stuff just to work in this ecosystem.

“After that, we’re also looking at exploring how Wasm can potentially unlock some broader challenges that people have with observability. Because we actually think it could be a more desirable target than traditional systems.“

During his talk, Eckel described a program available on Extism’s playground that counts the number of vowels in an incoming string.

”So, in order to use this thing, we just compile our Wasm module, we call our upload, and then we give it a name and then we can later just invoke that with some data,” Eckel said. “It’s going to tell us there are three vowels and now we can go raise some money and start a serverless company.”

Group Created with Sketch.
TNS owner Insight Partners is an investor in: fermyon.
THE NEW STACK UPDATE A newsletter digest of the week’s most important stories & analyses.