Skip to content

Core Development

Welcome and thanks for your interest in core development of the nano! The following resources contain information and guides for getting involved with the development of the node and protocol.

Getting started

It is recommended to have an understanding of how the nano protocol is designed to work so the code can be more easily read and evaluated.

Code repositories

The Nano Foundation manages the nanocurrency GitHub Organization account which includes various repositories for nano tools and implementations. Below is a partial list of the most common repositories referenced.

Name Language Purpose
nanocurrency/nano-node C++ Primary node implementation used on the nano network
nanocurrency/nano-work-server Rust Standalone server for generating work values for blocks
nanocurrency/protocol Kaitai Struct Specification for nano network message protocol
nanocurrency/nanodb-specification Kaitai Struct Specification for database tables and fields used by the nano-node implementation
nanocurrency/nano-docs Markdown MKDocs based documentation this site is built from

Most of the content in the following documentation is focused around the nanocurrency/nano-node repository, as that is where most development activity occurs. But there are tons of related projects creating useful tools, libraries, services and more for the nano ecosystem (see some options in GitHub).

Security vulnerability reporting

Submit vulnerabilities privately

Do NOT discuss potential security vulnerabilities on the issue tracker, public forums or open discussion channels. Submit sensitive issues privately to the Nano Foundation for review.

If you discover a bug you believe to pose a security risk to the Nano network, please contact with a proof of concept with full details of the bug including:

  • Repository of the bug
  • High-level summary
  • Detailed description
  • Steps to reproduce
  • Supporting material/references
  • The potential security impact of the bug

It is strongly recommended to encrypt the email using GPG and the pubkeys for this purpose can be found on the SECURITY file in the node repository. The Nano Foundation will work to determine potential impacts and coordinate resolution in a node release.

Nano Foundation core developers

In addition to contributions from the wider nano community, the Nano Foundation manages a team of core developers who contribute to the protocol and primary node implementation. For a list of code contributors, see the GitHub Insights page.