Stratumn SDK for Javascript
Installation
Browser
<script src="https://d3tl9uzqhxq1a1.cloudfront.net/stratumn-sdk.min.js"></script>
Node.js
$ npm install stratumn-sdk
var StratumnSDK = require('stratumn-sdk');
Quickstart
StratumnSDK.getApplication('quickstart')
.then(function(app) {
console.log(app);
return app.createChain('My message chain');
})
.then(function(res) {
return res.addMessage('Hello, World');
})
.then(function(res) {
console.log(res.link);
console.log(res.meta);
})
.catch(function(err) {
});
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) {
});
Application#createChain(...args)
Returns a promise that resolves with a new chain.
StratumnSDK
.getApplication('quickstart')
.then(function(app) {
return app.createChain('A new chain');
})
.then(function(res) {
console.log(res);
})
.catch(function(err) {
});
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) {
});
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) {
});
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) {
});
Development
Install dependencies:
$ npm install
Build:
$ npm run build:all
Test:
$ npm test
Test coverage:
$ npm run test:coverage
$ 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