wasm-bindgen - Facilitating high-level interactions between wasm modules and JavaScript

  •        24

Facilitating high-level interactions between wasm modules and JavaScript. Import JavaScript things into Rust and export Rust things to JavaScript.

https://rustwasm.github.io/wasm-bindgen/
https://github.com/rustwasm/wasm-bindgen

Tags
Implementation
License
Platform

   




Related Projects

wasm-pack - 📦✨ your favorite rust -> wasm workflow tool!

  •    Rust

This tool seeks to be a one-stop shop for building and working with rust- generated WebAssembly that you would like to interop with JavaScript, in the browser or with Node.js. wasm-pack helps you build and publish rust-generated WebAssembly to the npm registry to be used alongside any other javascript package in workflows that you already use, such as webpack or greenkeeper. We generate a wasm-pack.log file if wasm-pack errors on you, and you can customize the log verbosity using the verbosity flag.

seed - A Rust framework for creating web apps

  •    Rust

The best place to learn is the guide - this readme is an excerpt from it. This framework requires you to install Rust.

wasm-and-rust - WebAssembly and Rust: A Web Love Story

  •    

You can check out about:config (Firefox) or chrome://flags/ (Chrome) and make sure wasm related things are enabled. WebAssembly or WASM is a low-level bytecode format for in-browser client-side scripting, evolved from JavaScript. Its initial aim is to support compilation from C and C++, though other source languages such as Rust are also supported.

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.


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.

mono-wasm

  •    Javascript

This project is a proof-of-concept aiming at building C# applications into WebAssembly, by using Mono and compiling/linking everything statically into one .wasm file that can be easily delivered to browsers. The process does not use Emscripten (or Binaryen) but instead uses the experimental WebAssembly backend of LLVM with clang and lld to generate the final .wasm code. The goal is to use as few dependencies as possible. At the moment the only dependencies are LLVM, clang and lld trunk.

cranelift - Cranelift code generator (formerly, Cretonne)

  •    Rust

Cranelift is a low-level retargetable code generator. It translates a target-independent intermediate representation into executable machine code. For more information, see the documentation.

rust-sgx-sdk - Rust SGX SDK provides the ability to write Intel SGX applications in Rust Programming Language

  •    Rust

To achieve better security, we recommend developers to apply Non-bypassable Security Paradigm (NbSP) to the system design and implementation. This version supports Rust nightly build (nightly-2018-10-01) in the master branch and the most recent stable build (stable-2018-09-25) in the rust-stable branch. It supports the latest Intel SGX SDK v2.3.1 and Ubuntu Linux 18.04. It now contains further third party libraries including: bit-vec, chrono, erased-serde, fxhash, nan-preserving-float, num-bigint, quick-error, raft-rs, time, webpki-roots, and yasna. Some third party libraries, like untrusted, parity-wasm and lazy-static, are removed because they support no_std and can be used directly from crates.io. We strongly recommend developers upgrade to v1.0.4 and use the most recent Rust release to build it due to the Security advisory for the standard library. Please refer to release_notes for further details.

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.

yew - Rust framework for building client web apps

  •    Rust

Yew is a modern Rust framework inspired by Elm and ReactJS for creating multi-threaded frontend apps with WebAssembly. NEW! The framework supports multi-threading & concurrency out of the box. It uses Web Workers API to spawn actors (agents) in separate threads and uses a local scheduler attached to a thread for concurrent tasks.

unrust - unrust - A pure rust based (webgl 2.0 / native) game engine

  •    Rust

You can reference basic.rs for now, more documetations will be coming soon. The target wasm32-unknown-unknown is currently only on the nightly builds as of nightly-2018-08-06.

nphysics - 2 and 3-dimensional rigid body physics engine for Rust.

  •    Rust

Examples are available in the examples2d and examples3d directories. Interactive 3D are available there. Because those demos are based on WASM and WebGl 1.0 they should work on most modern browsers. Feel free to ask for help and discuss features on the official user forum.

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.

lucet - Lucet, the Sandboxing WebAssembly Compiler.

  •    Rust

Lucet is a native WebAssembly compiler and runtime. It is designed to safely execute untrusted WebAssembly programs inside your application. Check out our announcement post on the Fastly blog.

cervus - The Cervus Subsystem for Linux

  •    Rust

A WebAssembly subsystem for Linux. Cervus implements a WebAssembly "usermode" on top of the Linux kernel (which tries to follow the CommonWA specification), enabling wasm applications to run directly in ring 0, while still ensuring safety and security.

WASM

  •    

Simple ASP.MVC windows azure storage manager with SQL Azure query window.

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.

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.





We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.