Skip to content

Commit 2e33565

Browse files
committed
More README Stuff
1 parent 594ffc0 commit 2e33565

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

README.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,16 @@ Isomorphic library to handle passing high-level data structures between Assembly
44

55
![Asbind Markdown Parser Demo Gif](./assets/asbind.gif)
66

7+
## Features
8+
9+
- The library is Isomorphic. Meaning it supports both the Browser, and Node! And has ESM, CommonJS, and IIFE bundles! 🌐
10+
- Wraps around the [AssemblyScript Loader](https://github.com/AssemblyScript/assemblyscript/tree/master/lib/loader). The loader handles all the heavy-lifting of passing data into WebAssembly linear memory. 💪
11+
- Wraps around imported JavaScript functions, and exported AssemblyScript functions of the AssemblyScript Wasm Module. This allows high-level data types to be passed to AssemblyScript functions, without having to touch Wasm memory! 🤯
12+
- The library works at runtime, so no generated code that you have to maintain and try to get to work in your environment. 🏃
13+
- Maintains great performance (relative to generating the corresponding JavaScript code), by using [Speculative Execution](https://en.wikipedia.org/wiki/Speculative_execution), and caching types passed between functions. 🤔
14+
- The library is [< 5KB (minified and gzip'd)](https://bundlephobia.com/[email protected]) and tree-shakeable! 📦🌲
15+
- This library is currently the [wasm-bindgen](https://github.com/rustwasm/wasm-bindgen) in the Rust/Wasm ecosystem, for AssemblyScript. 😀
16+
717
## Installation
818

919
You can install as-bind in your project by running the following:
@@ -68,6 +78,8 @@ const asyncTask = async () => {
6878
asyncTask();
6979
```
7080

81+
## Motivation
82+
7183
## Supported Data Types
7284

7385
**TL;DR:** Currently Numbers, Strings, and Typed Arrays are supported. Returning a high-level data type from an imported JavaScript function, and passing AssemblyScript Classes will be coming later.

0 commit comments

Comments
 (0)