slp-mutable-data
v2.3.16
Published
A JavaScript npm library for retrieving mutable data associated with a SLP token.
Downloads
69
Maintainers
Readme
slp-mutable-data
This is a JavaScript library that is packaged with Browserify, to make it accessible to both browser-based and node.js-based JavaScript apps. It allows Bitcoin Cash (BCH) wallets to create, read, and update tokens that have both mutable (changeable) and immutable (unchangeable) data. Data is stored off-chain, and available via IPFS.
This library implements this PS002 specification for token mutable data. It follows a series of pointers on the Bitcoin Cash blockchain to retrieve a JSON file from the IPFS network. This is a way to track changing data associated with a token. It's a way for video game characters, supply chain items, and other unique changing assets to be represented by a token. This library is an extension of the Cash Stack.
Installation
Here are different ways to consume this library in your app, depending on the environment you are using.
Browser
<script src="https://unpkg.com/slp-mutable-data"></script>
Node.js
npm install --save slp-mutable-data
// ESM import
import { SlpMutableData } from 'slp-mutable-data'
// CommonJS require
const { SlpMutableData } = require('slp-mutable-data')
Examples
Examples are provided in the examples directory:
- Create Immutable Data
- Create Mutable Data
- Create a Token with both mutable and immutable data.
- Update Mutable Data.
- Get Token Data.
Overriding Defaults
This library has default IPFS gateways and servers that can be overridden, so that devs are not forced to depend on any one specific infrastructure. Here is an example of overridding all the servers this library depends on:
this.slpMutableData = new SlpMutableData({
wallet,
ipfsGatewayUrl: 'p2wdb-gateway-678.fullstack.cash', // IPFS Gateway
serverURL: 'https://p2wdb.fullstack.cash', // P2WDB server (see p2wdb.com)
pinServer: 'https://p2wdb-pin.fullstack.cash' // P2WDB Pinner Cluser
})
Sponsor
Development and maintenance of this library is sponsored by Launchpad IP. If you need protection for your intellectual property, contact Launchpad.
Maintenance and development is managed by the Permissionless Software Foundation. If this library provides value to you, please consider making a donation to support the PSF developers: