Numbers Prefer Multiplication
    Wondering what’s next for npm?Check out our public roadmap! »

    onigasm
    TypeScript icon, indicating that this package has built-in type declarations

    2.2.5 • Public • Published

    Onigasm (OnigurumaASM)

    WebAssembly port of Oniguruma regex library.

    Usage/API/Behaviour 1:1 with node-oniguruma port, tests are literally imported from node-oniguruma repository for maximum compliance.

    Of course, unlike node-oniguruma, this library can't hook into roots of V8 and is therefore 2 times* slower than the former.

    Instructions for porting your app to web

    Install

    npm i onigasm

    Light it up

    WASM must be loaded before you use any other feature like OnigRegExp or OnigScanner

    // index.js (entry point)
     
    import { loadWASM } from 'onigasm'
    import App from './App'
     
    (async () => {
        await loadWASM('path/to/onigasm.wasm') // You can also pass ArrayBuffer of onigasm.wasm file
        App.start()
    })()
     
    // `onigasm.wasm` file will be available at `onigasm/lib/onigasm.wasm` in `node_modules` of your project directory

    Once loaded onigasm is a drop-in replacement for oniguruma

    - import { OnigRegExp } from 'oniguruma'
    + import { OnigRegExp } from 'onigasm'

    That's it!

    * Tested under laboratory conditions using benchmark.js


    License

    onigasm is licensed under MIT License. See LICENSE in the root of this project for more info.

    Contributors/Maintainers

    Install

    npm i onigasm

    DownloadsWeekly Downloads

    141,992

    Version

    2.2.5

    License

    MIT

    Unpacked Size

    566 kB

    Total Files

    34

    Last publish

    Collaborators

    • avatar
    • avatar