Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@rhcp/mimir_transforms_web

Package Overview
Dependencies
Maintainers
0
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@rhcp/mimir_transforms_web

A WebAssembly build of Mimir transforms, suitable for use in Nodejs and browsers.

  • 0.7.3
  • latest
  • npm
  • Socket score

Version published
Maintainers
0
Created
Source

Mimir's transforms packaged for WebAssembly

This is a WebAssembly build of Mimir's transforms. Two packages are provided, @rhcp/mimir_transforms for use in Nodejs and @rhcp/mimir_transforms_web for use in browsers (with a caveat).

Using the nodejs package

Add the dependency:

npm i @rhcp/mimir_transforms

Import & use it:

import { headingHash } from "@rhcp/mimir_transforms";

console.log(headingHash("#hello"));

Prints:

# hello

Using the web package

npm i @rhcp/mimir_transforms_web

Import the package, initialize it, and log a transformed string.

import { default as init, headingHash } from "@rhcp/mimir_transforms";
await init();
console.log(headingHash("#hello"))

Prints:

# hello

Please note that this example assumes you have a bundler which will resolve the name @rhcp/mimir_transforms.

Web usage note

The Nodejs-focused mimir_transforms package is the intended way to use these transforms. The client-side mimir_transforms_web package is provided for one use case: live editor preview. The reason for preferring server-side or build-time transforms is due to the size of the wasm file. In short, users should not have to download a 1MB wasm file in order to view 10kB of content.

List of transforms

There is currently no auto-generated documentation for these transforms, however there is a type definition file which can be consulted for the list of transforms and their descriptions. It also allows easy discovery of transforms and their descriptions in your editor.

Initial setup for contributors

Install wasm-pack. The wasm-pack site recommends curling into your shell to install, but I prefer using cargo:

cargo install wasm-pack

Once wasm-pack is installed, you can build & test this package.

🛠️ Build packages for web and node

CommandPurposeDirectory
make dev_webCreate a dev build of the transforms for use in web browsers.web
make build_webCreate an optimized build of the transforms for use in web browsers.web
make dev_nodeCreate a dev build of the transforms for use in nodejs.node
make build_nodeCreate an optimized build of the transforms for use in nodejs.node
make cleanClean the wasm builds' target directories.node & web
make publishClean, build, and publish to npm. Note: update the version number in Cargo.toml first!node & web

For more information about the commands, see the Makefile and wasm-pack build docs.

🔬 Running tests

wasm-pack test --headless --firefox
wasm-pack test --headless --chrome
wasm-pack test --headless --safari
wasm-pack test --node

Leave off --headless to run the tests in a live browser.

Also see wasm-pack test docs.

FAQs

Package last updated on 15 Jul 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc