NOCUST Specs
Synopsis
This repository contains all the technical specifications around the NOCUST protocol from the core components such as the ledger, cryptographic primitives. But also adjacent protocols such as TEX, invoices etc.. It explains the design rationals, describe the different protocols and its use should suffice to implement NOCUST client or server applications.
Standardization
Each NOCUST spec proposal should follow a strict template. To start a new nspec copy the template, fill the different fields and submit a PR.
The stage
field specify the maturity of a protocol specification. It is to be interpreted as describe in the PROCESS.md document.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC2119 when, and only when, they appear in all capitals, as shown here.
Data structures and function signatures are described using the Typescript 3.5 syntax.
NOCUST specifications
All the current standard from the "draft" stage are listed here:
Nspec number | Specification Title | Stage |
---|---|---|
001 | Glossary | Draft |
002 | NOCUST Contract Methods | Draft |
003 | NOCUST contract Operation | Draft |
004 | Cryptographic Primitives | Draft |
005 | Bimodal Ledger | Draft |
006 | Client Protocol | Draft |
007 | Challenge Protocol | Draft |
008 | Server protocol | Draft |
Dependencies
Dependencies between each nspec document are set in the header of the file.
Build
Install gitbook CLI globally:
npm install gitbook-cli -g
Install the plugins:
gitbook install
Build the docs:
gitbook build . ./docs/
Run a local dev server:
gitbook serve