Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time


Welcome to Nuls!


Nuls is a global blockchain open-source project which is a highly customizable modular blockchain infrastructure.
It consists of a microkernel and functional modules.
Nuls provides smart contract, multi-chain mechanism and cross-chain consensus.
It aims to break the technical barriers of blockchain, to reduce the cost of development, and to promote the usage of blockchain technology in the commercial field.

Project Features

  • Modular design
  • Parallel chains
  • Smart contract
  • POC consensus mechanisms

To learn more about us, visit

Contributing to Nuls

Contributions to Nuls are welcomed! We sincerely invite developers who experienced in blockchain field to join in NULS technology community. Details: s: https://nuls.communimunity/d/9-recruitment-of-community-developers To be a great community, Nuls needs to welcome developers from all walks of life, with different backgrounds, and with a wide range of experience.

Getting Started


Operating System
Nuls is based on the Java and you can choose your favorite OS.

Dependencies SDK
Maven:Maven 3.3+
IDE: Any one you like

JetBrains IntelliJ IDEA is recommended, but we do not rovoke the IDE war.

Code style guide

Use Alibaba Java Coding Guidelines @Github.

recommend use IDE plugin lint code. wiki

Branch Description

mainnet: main network wallet code
testnet : test network wallet code
master : main branch, the latest version available,Can be used for technical research. develop : branch in development
Others : other branches are designed according to gitflow

Getting Sources

git clone && cd nuls

Building Sources

Make sure installed JDK 1.8 & maven 3.3+

$ mvn -v
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /usr/local/Cellar/maven/3.5.4/libexec
Java version: 1.8.0_171, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home/jre


$ mvn clean package

You may be need add command line argument "-Dmaven.test.skip=true" at this stage.


$ mvn clean package
$ cd client-module/client/target
$ mkdir nuls-node
$ tar -zxvf nuls-node.tar.gz -C nuls-node
$ cd nuls-node/bin

Using running the nuls process.
Using stop the nuls process.

Using IDE run or debug need execute command "mvn install" first.

Process EntryPoint



Nuls is released under the MIT license.
Modules added in the future may be release under different license, will specified in the module library path.