Nimiq Blockchain
Nimiq is the first Browser-based Blockchain.
Library Demo
Check out our betanet Browser Miner
Quickstart
- Clone this repository
git clone git@github.com:nimiq-network/core.git
. - Run
npm install
oryarn
- Run
./node_modules/.bin/gulp build
- Open
clients/browser/index.html
in your browser to access the Browser Client.
Web Developers
Installation for Web Developers
Follow the Quickstart guide.
Run Client
Run Browser Client
Open clients/browser/index.html
in your browser.
Run NodeJs client
To run a NodeJs Client you will need a publicly routable IP, Domain and SSL Certificate (get a free one at letsencrypt.org). Start the client by running clients/nodejs/index.js
.
cd clients/nodejs/
node index.js --host <hostname> --port <port> --key <privkey> --cert <certificate>
Argument | Description |
---|---|
host | Hostname of the NodeJs client. |
port | Port used to communicate with the peers. |
key | Private key for the client |
cert | SSL certificate of your Domain. |
Build your own Browser client
Just include <script src="dist/nimiq.js"></script>
in your project.
API
Visit the API Documentation.
Core Developers
Developers are free to choose between npm and yarn for managing the dependencies.
Installation for Core Developers (using npm)
-
NodeJs latest version (> 7.9.0)
-
gulp:
npm install gulp -g
-
jasmine test framework:
npm install jasmine -g
-
Dependencies:
npm install
-
NodeJs dependencies:
cd src/main/platform/nodejs/ npm install cd clients/nodejs/ npm install
Installation for Core Developers (using yarn)
-
NodeJs latest version (> 7.9.0)
-
Dependencies:
yarn
-
NodeJs dependencies:
cd src/main/platform/nodejs/ yarn cd clients/nodejs/ yarn
If you decided on using yarn for managing the dependencies,
you have to use node_modules/.bin/gulp
instead of gulp
and node_modules/.bin/jasmine
instead of jasmine
in the following.
Test and Build
Run Testsuite
gulp test
runs the testsuite in your browser.jasmine
runs the testsuite in NodeJs.
Run ESLint
gulp eslint
runs the ESLint javascript linter.
Build
Executing gulp build
concatenates all sources into dist/{web,web-babel,web-crypto,node}.js
Contribute
If you'd like to contribute to development Nimiq please follow our Code of Conduct and Contributing Guidelines.
License
This project is under the Apache License 2.0