The Node.js implementation of a blockchain-agnostic Sidetree Node using TypeScript.
See the latest spec for full Sidetree specification.
See the implementation document for the detailed description of this implementation.
- Must pass
npm run test. - Must pass
npm run lint. - Prefix an interface that require implementation with
I. e.g.ITransactionProcessor. - Suffix a data-holder interface (without definition of methods) with
Model. e.g.TransactionModel. - Use default export if class/interface name matches the file name.
- Sort imports.
- Clone the repo.
- Create a topic branch for your spec contributions.
- Add the following entry to your local repo's
.git/info/excludefile:docs/spec/index.html. - run
npm install - run
npm run spec:edit - Open the generated
index.htmlrendering of the spec, located in thedocs/spec/directory, in your browser. - Modify files in the
docs/spec/markdown/directory to make changes, which will render realtime in theindex.htmlfile you have open in your browser. - When you are happy with your changes, commit to your topic branch and open a Pull Request on GitHub and reviewers will be alerted to review for a potential merge.
NOTE: 2019-08-13: docker-compose out-of-date, needs to be udpated.
The Sidetree components are available via docker containers . Please see the docker document to find out details on building and running.