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

stratumn-sdk

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

stratumn-sdk

Stratumn SDK for Javascript

  • 0.5.0
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

Stratumn SDK for Javascript

Installation

Browser

<!-- Polyfill for browser compatibility -->
<script src="https://libs.stratumn.com/babel-polyfill.min.js"></script>
<!-- Actual Stratumn SDK -->
<script src="https://libs.stratumn.com/stratumn-sdk.min.js"></script>

If you want a specific version, include https://libs.stratumn.com/stratumn-sdk-{version}.min.js instead (for instance https://libs.stratumn.com/stratumn-sdk-0.4.1.min.js).

Node.js

$ npm install stratumn-sdk
var StratumnSDK = require('stratumn-sdk');

Quickstart

StratumnSDK.getApplication('quickstart')
  .then(function(app) {
    console.log(app);
    // Create a new map, you can pass arguments to init
    return app.createMap('My message map');
  })
  .then(function(res) {
    // You can call a transition function like a regular function
    return res.addMessage('Hello, World');
  })
  .then(function(res) {
    console.log(res.link);
    console.log(res.meta);
  })
  .catch(function(err) {
    // Handle errors
  });

Reference

StratumnSDK#getApplication(appName)

Returns a promise that resolves with an application.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    console.log(app.id);
  })
  .catch(function(err) {
    // Handle errors
  });

Application#createMap(...args)

Returns a promise that resolves with a new map.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.createMap('A new map');
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Application#getLink(hash)

Returns a promise that resolves with an existing link.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.getLink('aee5427');
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Application#getMap(mapId, tags)

Returns a promise that resolves with the meta data of the links in a map, optionally filters by tags.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.getMap('56ef33', ['tag1', 'tag2']);
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Application#getBranches(linkHash, tags)

Returns a promise that resolves with the meta data of the links whose previous hashes are the given hash, optionally filters by tags.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.getBranches('abcdef', ['tag1', 'tag2']);
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Link#getPrev()

Returns a promise that resolves with the previous link of a link.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.getLink('aee5427');
  })
  .then(function(res) {
    return res.getPrev();
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Link#load()

Returns a promise that resolves with the full link. Can be useful when you only have the meta data of links.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.getBranches('aee5427');
  })
  .then(function(res) {
    return Promise.all(res.map(function(link) { return link.load(); }));
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Link#getBranches(tags)

Returns a promise that resolves with the meta data of the links whose previous hashes are the hash of the link, optionally filters by tags.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.getLink('aee5427');
  })
  .then(function(res) {
    return res.getBranches(['tag1']);
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Link#:transitionFunction(...args)

Executes a transition function and returns a promise that resolves with a new link.

StratumnSDK
  .getApplication('quickstart')
  .then(function(app) {
    return app.getLink('aee5427');
  })
  .then(function(res) {
    return res.addMessage('Hello, World!');
  })
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    // Handle errors
  });

Development

Install dependencies:

$ npm install

Build:

$ npm run build:all

Test:

$ npm test

Test coverage:

$ npm run test:cov
$ open coverage/lcov-report/index.html

Lint:

$ npm run lint

Lint and test:

$ npm run check

Bump version:

$ npm version major|minor|patch

Publish:

$ npm publish

Keywords

FAQs

Package last updated on 18 Jul 2016

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