@jimpick/multibase

JavaScript implementation of the multibase specification

Usage no npm install needed!

<script type="module">
  import jimpickMultibase from 'https://cdn.skypack.dev/@jimpick/multibase';
</script>

README

js-multibase

Dependency Status codecov Travis CI

JavaScript implementation of the multibase specification

Lead Maintainer

Hugo Dias

Table of Contents

Install

NPM

$ npm install --save multibase

The type definitions for this package are available on http://definitelytyped.org/. To install just use:

$ npm install -D @types/multibase

In the Browser through <script> tag

Loading this module through a script tag will make the Multibase obj available in the global namespace.

<script src="https://unpkg.com/multibase/dist/index.min.js"></script>

Usage

Example

const multibase = require('multibase')

const bytes = multibase.encode('base58btc', new TextEncoder().encode('hey, how is it going'))

const decodedBytes = multibase.decode(bytes)
console.log(decodedBytes.toString())
// hey, how is it going

API

https://multiformats.github.io/js-multibase/

multibase - Prefixes an encoded Uint8Array with its multibase code

const multibased = multibase(<nameOrCode>, encodedBytes)

multibase.encode - Encodes Uint8Array into one of the supported encodings, prefixing it with the multibase code

const encodedBuf = multibase.encode(<nameOrCode>, <bytes>)

multibase.decode - Decodes Uint8Array or string

const decodedBuf = multibase.decode(bufOrString)

multibase.isEncoded - Checks if Uint8Array or string is encoded

const value = multibase.isEncoded(bytesOrString)
// value is the name of the encoding if it is encoded, false otherwise

multibase.encoding - Get the encoding by name or code

const value = multibase.encoding(nameOrCode)
// value is an instance of the corresponding `Base`

multibase.encodingFromData - Get the encoding from data either a string or Uint8Array

const value = multibase.encodingFromData(data)
// value is an instance of the corresponding `Base`

multibase.names

A frozen Object of supported base encoding names mapped to the corresponding Base instance.

multibase.codes

A frozen Object of supported base encoding codes mapped to the corresponding Base instance.

Supported Encodings, see src/constants.js

Contribute

Contributions welcome. Please check out the issues.

Check out our contributing document for more information on how we work, and about contributing in general. Please be aware that all interactions related to multiformats are subject to the IPFS Code of Conduct.

Small note: If editing the README, please conform to the standard-readme specification.

License

MIT © Protocol Labs Inc.