Skip to content
Enterprise-ready blockchain platform
Go Shell Jsonnet Smarty Makefile Python
Branch: master
Clone or download
nordicdyno Merge pull request #2557 from insolar/INS-3131-base-interation-test-f…

Ins 3131 base interation test for heavy
Latest commit 5e33cee Aug 23, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github NOISSUE: updated config Aug 19, 2019
api Merge branch 'master' of into INS-… Aug 21, 2019
application INS-3099: move result unmarshaling into one place and add tests Aug 9, 2019
bootstrap WLT-779: refactoring Aug 15, 2019
build INS-3086: updated 'go generate' annotations Jul 30, 2019
certificate INS-3122: get rid of testutils.Random<Whatever> functions Aug 13, 2019
ci Revert "Revert "WLT-33: Main Net"" Jun 24, 2019
cmd Merge pull request #2460 from insolar/INS-3227-to-spec Aug 23, 2019
component no need anymore to add skip stack levels Aug 15, 2019
configuration merge Aug 21, 2019
contractrequester merge Aug 21, 2019
cryptography hack bootstrap with new consensus Jul 27, 2019
docker-compose/virtual-node NOISSUE: update insolar version and change poll time for healthchecker Apr 23, 2019
docker INS-2574: update cfg in docker Jun 24, 2019
docs Remove child mentions. Jul 17, 2019
functest Merge pull request #2460 from insolar/INS-3227-to-spec Aug 23, 2019
genesisdataprovider INS-3122: some refactoring Aug 9, 2019
insolar Merge pull request #2552 from insolar/NOISSUE-remove-packet-testbadger Aug 23, 2019
instrumentation INS-3195: remove metrics package dependency on logger package Aug 21, 2019
keystore INS-1926: extract inplace keystore Jun 25, 2019
ledger INS-3131: move heavy integr tests to slow_test tag Aug 23, 2019
log INS-3195: refactor log metrics hook Aug 21, 2019
logicrunner Merge pull request #2460 from insolar/INS-3227-to-spec Aug 23, 2019
longbits INS-3122: fix @cyraxred codereview Aug 22, 2019
messagebus INS-3196 remove old-bus messages Aug 20, 2019
metrics INS-3195: remove metrics package dependency on logger package Aug 21, 2019
network Merge pull request #2548 from insolar/INS-1634-network-integr-tests Aug 23, 2019
platformpolicy INS-3122: some refactoring Aug 9, 2019
pulsar INS-3122: move pulse package to top-level Aug 21, 2019
pulse INS-3122: tidy imports and copyright Aug 21, 2019
reference INS-3122: fix @ita-sammann codereview Aug 22, 2019
scripts Merge pull request #2460 from insolar/INS-3227-to-spec Aug 23, 2019
server Merge branch 'master' of into INS-3131-int… Aug 22, 2019
testutils Merge pull request #2552 from insolar/NOISSUE-remove-packet-testbadger Aug 23, 2019
utils/entropy NOISSUE: refactor gen unique jetids and references Aug 19, 2019
version INS-3122: get rid of Reference{} literals Aug 14, 2019
.codecov.yml NOISSUE: *.pb.go format for protobuf generated files Apr 16, 2019
.dockerignore NOISSUE: ignore of scripts/insolard no longer needed after moving art… Jun 12, 2019
.editorconfig add .editorconfig that is understanble by many editors Feb 21, 2019
.gitignore Revert "git ignore" Jul 18, 2019
.golangci.yml NOISSUE: disable annoying prealloc linter suggestions Jun 12, 2019
.goreleaser.yml INS-418: removed snapshot section Oct 3, 2018
.pre-commit-config.yaml NOISSUE: Fix linter. Apr 17, 2019
.travis.yml added clean to travis Apr 8, 2019 Create Jul 6, 2018
Gopkg.lock buffered logs using diodes, panic if system can not cope Aug 20, 2019
Gopkg.toml INS-3086: updated minimock version Jul 30, 2019
LICENSE Updated year Jan 23, 2019
Makefile NOISSUE: move light integration tests to slow tag Aug 23, 2019 Revert "Revert "WLT-33: Main Net"" Jun 24, 2019
doc.go Updated other files Mar 20, 2019
insolar_test.go Updated other files Mar 20, 2019
versiontable.yml INS-667: Generated constant GO file from YAML Oct 19, 2018


Enterprise-ready blockchain platform.

CII Best Practices

GolangCI Go Report Card GoDoc codecov


Insolar is building a 4th generation blockchain platform for business aimed to enable seamless interactions between companies and unlock new growth opportunities. In addition to the blockchain platform, Insolar will provide blockchain services and ecosystem support for companies that are looking to develop and deploy blockchain solutions. Insolar will feature most complete and secure set of production-ready business blockchain tools and services to quickly build or launch blockchain enterprise applications, accelerating the progression path from initial proof-of-concept to full-scale production.

The world’s most innovative companies in finance, logistics, consumer goods, energy, healthcare, transportation, manufacturing and others will be turning to Insolar to create applications and networks that deliver tangible business success. They recognise that even in today’s digital economy, vast amounts of value continue to be trapped inside processes and organisations that don’t connect. Insolar is their remedy, helping them discover and design business value in blockchain networks — starting, accelerating and innovating strategies that replace longstanding business friction with trust and transparency. Delegating trust to a blockchain means that businesses can pursue broader networks, onboard new partners, and enter new ecosystems with ease. Blockchain-based networks that support multiparty collaboration around shared, trusted data and process automation across organisational boundaries bring benefits at many levels, starting with efficiency gains and culminating in reinventing how entire industry ecosystems operate.

Insolar is a global team of 60+ people in North America and Europe, including a 35-strong engineering team with practical blockchain engineering know-how, and 10 leading blockchain academics from major institutions (York University, ETH Zurich, Princeton).



Blockchain network layer.

  • Support of heterogeneous network topology.
  • Network routing with a host or host group becoming relays for others hosts.
  • Ability to limit number of gateways to corporate host group via relays to keep the host group secure.


Record storage engine backed by BadgerDB.

Virtual machines

Various engines for smart contract execution:

  • wasm - WebAssembly implementation of smart contracts.

Application layer

Application module describes interaction of system components with each other. Every component of the system is a SmartContract. Members of the system are given the opportunity to build their own dApps by publishing smart contracts in Domain instances. Domains define the visibility scope for the child contracts and their interaction policies. Actually, Domain is subclass of SmartContract.

See package readme for more details.


Provides configuration parameters for all Insolar components and a helper for configuration resources management.


Using Prometheus monitoring system and time series database for collecting and store metrics.


Download the Insolar package:

go get

Go to the package directory:

cd $GOPATH/src/

Install dependencies and build binaries:



Run launcher:

scripts/insolard/ -g

It will generate bootstrap data and launch a number of nodes. Default number is 5, you can uncomment more nodes in scripts/insolard/bootstrap_template.yaml.

After node processes are started you will see messages like “NODE 3 STARTED in background” in log and a PulseWatcher will be started. When you see Ready in Insolar State you can run test scripts and benchmarks:

bin/apirequester -k=.artifacts/launchnet/configs/ -u=

This tool runs a scenario: creates a number of users with wallets and transfers some money between them. For the first time, the script does it sequentially, upon subsequent runs — concurrently.


  • -k: Path to root user keypair. All requests to create a new user must be signed by the root user.
  • -u: Node API URL. By default, the first node listens on the port. It can be changed in configuration.

Run benchmark:

bin/benchmark -c=4 -r=25 -k=.artifacts/launchnet/configs/


  • -k: Same as above, path to root user keypair.
  • -c: Number of concurrent threads in which requests will be sent.
  • -r: Number of transfer requests that will be sent in each thread.

After testing, you can stop all nodes by pressing Ctrl+C.

See apirequester and benchmark readmes for more details.


See Contributing Guidelines.


This project is licensed under the terms of the Apache license 2.0, except for the Network subdirectory, which is licensed under the terms of the Modified BSD 3-Clause Clear License.

You can’t perform that action at this time.