BT

WebAssembly Studio: An Online WASM IDE Tool from Mozilla

| by Abel Avram Follow 10 Followers on Apr 13, 2018. Estimated reading time: 1 minute |

WebAssembly Studio is an online IDE tool developed by Mozilla that can be used to compile C/C++ and Rust code into WebAssembly (WASM).

WebAssembly Studio is a recent project started at Mozilla, and was created several months ago by combining WasmExplorer and WasmFiddle. Mozilla does not plan to create another IDE to replace popular IDEs, but to bring awareness about WebAssembly and share knowledge about it. Their desire is to move the functionality developed so far into VS Code at some point, and Mozilla is looking for a developer willing to spend the time needed for this.

The IDE currently supports C/C++ and Rust, but the architecture of the tool will be fully pluggable to support other languages such as Kotlin. The compilation is done on the server but they hope to "do more of this work on the client," as Michael Bebenita, research manager at Mozilla, said in a post.

Besides building and running code, WebAssembly Studio can inspect WASM files created by the IDE or uploaded, generating a WAT file containing the text of a disassembled WASM file. The developer can edit either the WASM or the WAT file. There can be generated also a Call Graph showing the relationships between various functions.

For the near future, Mozilla plans the following:

  • Add better support for C/C++/Rust projects. For C/C++ applications we’re currently using the LLVM backend by itself, but we’re also hoping to add support for Emscripten using that backend so that you can use APIs like SDL and OpenGL. For Rust, we’d like to support Cargo.
  • Continue to add new features and integrate additional tools into WebAssembly Studio.
  • Make it possible to download and build WebAssembly Studio projects locally using familiar tools.
  • Improve UX, error reporting, and general performance optimizations.

Developers are invited to take a look at the WebAssembly Studio GitHub repo, and contribute where appropriate, including integrating it with VS Code or Electron.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT