Displaying 1 to 20 from 132 results

walt - :zap: Walt is a JavaScript-like syntax for WebAssembly text format :zap:

  •    Javascript

⚡️ Walt is an alternative syntax for WebAssembly text format. It's an experiment for using JavaScript syntax to write to as 'close to the metal' as possible. It's JavaScript with rules. .walt files compile directly to WebAssembly binary format. 🚀 Try it out in the Walt Explorer.

wabt - The WebAssembly Binary Toolkit

  •    C++

These tools are intended for use in (or for development of) toolchains or other systems that want to manipulate WebAssembly files. Unlike the WebAssembly spec interpreter (which is written to be as simple, declarative and "speccy" as possible), they are written in C/C++ and designed for easier integration into other systems. Unlike Binaryen these tools do not aim to provide an optimization platform or a higher-level compiler target; instead they aim for full fidelity and compliance with the spec (e.g. 1:1 round-trips with no changes to instructions). This will fetch the testsuite and gtest repos, which are needed for some tests.

binaryen - Compiler infrastructure and toolchain library for WebAssembly, in C++

  •    WebAssembly

Consult the contributing instructions if you're interested in participating. As a result, you might notice that round-trip conversions (wasm => Binaryen IR => wasm) change code a little in some corner cases.

stdweb - A standard library for the client-side Web

  •    Rust

The goal of this crate is to provide Rust bindings to the Web APIs and to allow a high degree of interoperability between Rust and JavaScript.




assemblyscript - A TypeScript to WebAssembly compiler 🚀

  •    WebAssembly

AssemblyScript compiles strictly typed TypeScript (basically JavaScript with types) to WebAssembly using Binaryen. It generates lean and mean WebAssembly modules while being just an npm install away.

nebulet - (Going to be) A microkernel that implements a WebAssembly "usermode" that runs in Ring 0.

  •    Rust

Nebulet is a Google Summer of Code project started during the summer of 2018. More details about Nebulet and GSoC are here. Under the hood, Nebulet is a microkernel that executes WebAssembly modules in ring 0 and a single address space to increase performance. This allows for low context-switch overhead, syscalls just being function calls, and exotic optimizations that simply would not be possible on conventional operating systems. The WebAssembly is verified, and due to a trick used to optimize out bounds-checking, unable to even represent the act of writing or reading outside its assigned linear memory.

Porcupine - On-device wake word detection engine powered by deep learning.

  •    C

Try out Porcupine using its interactive web demo. You need a working microphone. Try out Porcupine by downloading it's Android demo application. The demo application allows you to test Porcupine on a variety of wake words in any environment.

asm-dom - A minimal WebAssembly virtual DOM to build C++ SPA (Single page applications)

  •    C++

asm-dom is a minimal WebAssembly virtual DOM to build C++ SPA (Single page applications). You can write an entire SPA in C++ and compile it to WebAssembly (or asmjs as fallback) using Emscripten, asm-dom will call DOM APIs for you. This will produce an app that aims to execute at native speed by taking advantage of common hardware capabilities, also, you can use your C/C++ code without any change, you haven't to create a binding layer to use it (as we have to do if we want to use a C++ lib from JS). Basically we are creating an app in C++ that call javascript if needed instead of the opposite. You can write only once in C++ and share as much code as possible with desktop/mobile apps and web site. If you want to learn more about performance, please see this. asm-dom is a low-level virtual DOM library. It is unopinionated with regards to how you should structure your application.


awesome-wasm - 😎 Curated list of awesome things regarding WebAssembly (wasm) ecosystem.

  •    

Collection of awesome things regarding WebAssembly (wasm) ecosystem. Please read the contribution guidelines if you want to contribute.

design - ewasm Design Overview and Specification

  •    

This repository contains documents describing the design and high-level overview of eWASM. Expect the contents of this repository to be in flux: everything is still under discussion. WebAssembly (or Wasm as a contraction) is a new, portable, size- and load-time-efficient format. WebAssembly aims to execute at native speed by taking advantage of common hardware capabilities available on a wide range of platforms. WebAssembly is currently being designed as an open standard by a W3C Community Group.

wagon - wagon, a WebAssembly-based Go interpreter, for Go.

  •    Go

wagon is a WebAssembly-based interpreter in Go, for Go. NOTE: wagon requires Go >= 1.9.x.

webassembly - A minimal toolkit and runtime to produce and run WebAssembly modules.

  •    C

An experimental, minimal toolkit and runtime on top of node to produce and run WebAssembly modules. To run compiled WebAssembly modules, you'll either need a recent version of your browser with WebAssembly enabled or node.js 8 - but you probably already know that. For development, node.js 6 upwards is sufficient.

wasmjit - Kernel Mode WebAssembly Runtime for Linux

  •    C

Wasmjit is a small embeddable WebAssembly runtime. Its core is written in C90 and is easily portable to most environments. It also includes a host environment for running in user-space on POSIX systems. This is useful for running WebAssembly modules without having to run an entire browser.

coolstore-microservices - :ferris_wheel: :sailboat: :ship: A containerized polyglot service mesh based on

  •    CSharp

The structure of README is inspired from GoogleCloudPlatform Demo. CoolStore is a containerised polyglot microservices application consisting of services based on .NET Core, NodeJS and more running on Service Mesh.

schism - A self-hosting Scheme to WebAssembly compiler

  •    Scheme

Schism is an experimental self-hosting compiler from a subset of R6RS Scheme to WebAssembly. This is not an officially supported Google product.

wasm-loader - :sparkles: WASM webpack loader

  •    Javascript

This is an experimental feature and thus not activated by default. Everything else in the add.wasm binary will be removed.

cargo-web - A Cargo subcommand for the client-side Web

  •    Rust

This cargo subcommand aims to make it easy and convenient to build, develop and deploy client-side Web applications written in Rust. Or clone and build with $ cargo build --release then place in your $PATH.

wasm - Haskell compiler infastructure for WebAssembly

  •    WebAssembly

A WebAssembly AST, parser, and assembler in Haskell for use in functional compiler backends targeting WebAssembly. Warning, still a big work in progress.

libsodium.js - libsodium compiled to Webassembly and pure JavaScript, with convenient wrappers

  •    HTML

The sodium crypto library compiled to WebAssembly and pure Javascript using Emscripten, with automatically generated wrappers to make it easy to use in web applications. The complete library weights 188 Kb (minified, gzipped, includes pure js + webassembly versions) and can run in a web browser as well as server-side.