Skip to content
Monorepo for Javascript WebAssembly packages by Wasmer
JavaScript WebAssembly TypeScript Rust Shell C
Branch: master
Clone or download
Latest commit 891f6cb Nov 5, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
crates/wasm_transformer Fixed section being improperly written into Nov 5, 2019
e2e-tests
examples Improved callback command Nov 1, 2019
packages
.gitattributes
.gitignore Removed oclif.manifest.json from develoment mode Oct 30, 2019
.travis.yml Added stable as a build target Jul 29, 2019
3p-modules.d.ts Its not the polyfills Aug 22, 2019
CONTRIBUTING.md First working commit of WASI js bindings Jun 17, 2019
LICENSE First working commit of WASI js bindings Jun 17, 2019
README.md Add @wasmer/cli to the README Oct 31, 2019
azure-pipelines.yml Increased timeout, and investigating why azure passes on error Oct 28, 2019
code-of-conduct.md Fixed email Oct 18, 2019
lerna.json
package-lock.json Fixed the browser field per webpack bug Nov 5, 2019
package.json Squashed commit of the following: Oct 30, 2019
tsconfig.json Squashed commit of the following: Oct 30, 2019
tslint.json Setup linting, and building lib Jul 30, 2019

README.md

Wasmer-JS styled with prettier Build Status Dev Dependencies

Wasmer-JS is a mono-repo of multiple JavaScript packages enabling easy use of WebAssembly Modules in Node and the Browser.

Development

Contributing into Wasmer-JS it's very easy, just clone the repo and run:

npm install

NOTE: This will run lerna bootstrap, and bootstrap the JS Packages.

To start development mode, you can run the dev command:

npm run dev

This will serve the examples/wasm-shell example, which can be accessed with: http://localhost:1234/

Wasm Terminal Demo Gif

Building the project

To build all the packages in the project, you can run the build command:

npm run build

This will bundle JS Packages into ./dist directory.

Tests

To make changes to any of the sub projects, they can be tested by either: Running their local tests with npm run test in their respective package directory, or running it the root:

npm run test

Contributing

For additional contribution guidelines, please see our CONTRIBUTING.md and our Code of Conduct.

Using Lerna

Please see the website for lerna for a quick introduction into what it is. Here are some general notes about using lerna in this project:

  • Packages can be added by simply creating a new directory within the packages/ directory, and running npm init in this new package directory. Then, the new package must be botstraped using learna. For this project, this can be done running npm run lerna:bootstrap in the base project directory.

  • To add new dependencies and keep build times low, devDependencies (not CLI dependencies) must be added to the root package.json file. Project installation / runtime dependencies are managed for each package individually.

  • Sibling JS packages can depend on one another. You can do this by using @lerna/add. For example, lerna add @wasmer/package-1 --scope=@wasmer/package-2 will add @wasmer/package-1@^1.0.0 to @wasmer/package-2

You can’t perform that action at this time.