Home
Softono
nuls-v1

nuls-v1

Open source MIT Java
361
Stars
82
Forks
21
Issues
83
Watchers
3 years
Last Commit

About nuls-v1

NULS is a global, open-source blockchain project designed as a highly customizable, modular infrastructure. Built on Java, it features a microkernel architecture complemented by functional modules, enabling the creation of parallel chains and cross-chain consensus mechanisms. Key capabilities include smart contract support and a Proof of Contribution consensus algorithm, aiming to lower development costs and remove technical barriers for commercial adoption. The software supports deployment on any operating system given a compatible JDK 1.8 and Maven 3.3+ environment. Development follows the Alibaba Java Coding Guidelines, with branches for mainnet, testnet, and active development. The source code is built using Maven, packaged into a node distribution, and managed via shell scripts for starting and stopping processes. Licensed under MIT, NULS welcomes global developer contributions to expand its ecosystem and foster a diverse technical community.

Platforms

Web Self-hosted

Languages

Java

Links

Nuls

Welcome to Nuls!

Introduction

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 nuls.io.

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

Requirements

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

Dependencies SDK
JDK:JDK 1.8
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.

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 https://github.com/nuls-io/nuls.git && 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

Build

$ mvn clean package

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

Running

$ 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 start.sh running the nuls process.
Using stop.sh stop the nuls process.

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

Process EntryPoint

nuls/client-module/client/src/main/java/io/nuls/client/Bootstrap.java

License

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.

Community