Nimiq is a frictionless payment protocol for the web. For a high-level introduction please read the Nimiq White Paper. The source code is available on GitHub.
This developer reference contains:
This documentation is also available in German as a community effort by Terorie.
Data schemas as used on the wire, focusing on fields, bytes sizes and short explanations.
- Transactions: basic and extended
- Blockchain: block, header, interlink, body
- Accounts and Contracts: basic account, vesting and hashed time-locked contracts
- Accounts Tree: details on the Patricia Merkle Tree used to store accounts
- Primitives: none-composed elements, e.g. hashes, addresses
- Messages: All p2p-related inter-node messages
High Level Concepts
High level concepts used in and underlying Nimiq.
- Constants: Configuration of the Nimiq core
- Nodes and Clients: Node.js and browser, full, small, and nano
- Supply and Reward: total supply, rewards, difficulty adjustment
- Verification: Validation rules for the Nimiq Blockchain
Further resources to get an overview of the Nimiq project and ecosystem:
- API Documentation
- Browser Miner and Browser Wallet
- Contributing Guidelines and Code of Conduct
- This project is released under the Apache License 2.0
We believe in communicating our concepts and approaches as clearly as possible. The easier it is to dive into the details, the more people will do it, again resulting in a deeper peer-reviewing process which is essential for the hardening of our protocol. You are very welcome to improve this reference via pull requests.