Package Exports
- @digitalbazaar/cborld
- @digitalbazaar/cborld/lib/loader-browser.js
- @digitalbazaar/cborld/lib/loader.js
- @digitalbazaar/cborld/lib/util-browser.js
- @digitalbazaar/cborld/lib/util.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@digitalbazaar/cborld) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
JavaScript CBOR-LD Processor
A JavaScript CBOR-LD Process for Web browsers and Node.js apps.
Table of Contents
Background
This library provides a CBOR-LD Processor for Web browsers and Node.js applications.
Quickstart
To quickly see cborld in action, run the following commands:
git clone https://github.com/digitalbazaar/cborld.git
cd cborld
npm i
./cborld encode --verbose --diagnose examples/note.jsonld
./cborld decode --verbose --diagnose out.cborldOr run directly with npx:
npx @digitalbazaar/cborld encode --verbose --diagnose examples/note.jsonldInstall
NPM
npm install @digitalbazaar/cborldGit
To install locally (for development):
git clone https://github.com/digitalbazaar/cborld.git
cd cborld
npm installUsage
This library provides two primary functions for encoding and decoding CBOR-LD data.
Encode to CBOR-LD
To encode a JSON-LD document as CBOR-LD:
import {encode, documentLoader} from '@digitalbazaar/cborld';
const jsonldDocument = {
'@context': 'https://www.w3.org/ns/activitystreams',
type: 'Note',
summary: 'CBOR-LD',
content: 'CBOR-LD is awesome!'
};
// encode a JSON-LD Javascript object into CBOR-LD bytes
const cborldBytes = await encode({jsonldDocument, documentLoader});To decode a CBOR-LD document to JSON-LD:
import {decode, documentLoader} from '@digitalbazaar/cborld';
// get the CBOR-LD bytes
const cborldBytes = await fs.promises.readFile('out.cborld');
// decode the CBOR-LD bytes into a Javascript object
const jsonldDocument = await cborld.decode({cborldBytes, documentLoader});API
Functions
- encode(options) ⇒
Uint8Array -
Encodes a given JSON-LD document into a CBOR-LD byte array.
- decode(options) ⇒
object -
Decodes a CBOR-LD byte array into a JSON-LD document.
Typedefs
- diagnosticFunction :
function -
A diagnostic function that is called with diagnostic information. Typically set to
console.logwhen debugging. - documentLoaderFunction ⇒
string -
Fetches a resource given a URL and returns it as a string.
encode(options) ⇒ Promise<Uint8Array>
Encodes a given JSON-LD document into a CBOR-LD byte array.
Kind: global function
Returns: Uint8Array - - The encoded CBOR-LD bytes.
| Param | Type | Description |
|---|---|---|
| options | object |
The options to use when encoding to CBOR-LD. |
| options.jsonldDocument | object |
The JSON-LD Document to convert to CBOR-LD bytes. |
| options.documentLoader | documentLoaderFunction |
The document loader to use when resolving JSON-LD Context URLs. |
| [options.appContextMap] | Map |
A map of JSON-LD Context URLs and their encoded CBOR-LD values (must be values greater than 32767 (0x7FFF)). |
| [options.appTermMap] | Map |
A map of JSON-LD terms and their associated CBOR-LD term codecs. |
| [options.diagnose] | diagnosticFunction |
A function that, if provided, is called with diagnostic information. |
decode(options) ⇒ Promise<object>
Decodes a CBOR-LD byte array into a JSON-LD document.
Kind: global function
Returns: object - - The decoded JSON-LD Document.
| Param | Type | Description |
|---|---|---|
| options | object |
The options to use when decoding CBOR-LD. |
| options.cborldBytes | Uint8Array |
The encoded CBOR-LD bytes to decode. |
| options.documentLoader | function |
The document loader to use when resolving JSON-LD Context URLs. |
| [options.appContextMap] | Map |
A map of JSON-LD Context URLs and their associated CBOR-LD values. The values must be greater than 32767 (0x7FFF)). |
| [options.appTermMap] | Map |
A map of JSON-LD terms and their associated CBOR-LD term codecs. |
| [options.diagnose] | diagnosticFunction |
A function that, if provided, is called with diagnostic information. |
diagnosticFunction : function
A diagnostic function that is called with diagnostic information. Typically
set to console.log when debugging.
Kind: global typedef
| Param | Type | Description |
|---|---|---|
| message | string | The diagnostic message. |
documentLoaderFunction ⇒ string
Fetches a resource given a URL and returns it as a string.
Kind: global typedef
Returns: string - The resource associated with the URL as a string.
| Param | Type | Description |
|---|---|---|
| url | string |
The URL to retrieve. |
CLI
A command line interface tool called cborld is provided to encode and decode
CBOR-LD.
cborld can be run installed, run directly, or run via npx:
npm install -g cborld
cborld [OPTIONS]./cborld [OPTIONS]npx @digitalbazaar/cborld [OPTIONS]The options follow the API. See help for more information:
npx @digitalbazaar/cborld --helpExamples:
TBDContribute
Please follow the existing code style.
PRs accepted.
If editing the README, please conform to the standard-readme specification.
Commercial Support
Commercial support for this library is available upon request from Digital Bazaar: support@digitalbazaar.com
License
BSD-3-Clause © Digital Bazaar