Skip to content

sc-forks/colonyNetwork

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Colony Network

Contracts for running the Colony Network as defined in the Colony White Paper

Bug Bounty Program

Colony is offering substantial rewards to external developers who report bugs and flaws in the colonyNetwork contracts.

See the Bug Bounty program overview for more information about bounties, rules, and terms.

Prerequisites

node v10.12 or higher (we recommend using nvm)

yarn v1.13 or higher

docker v18 or higher

Add the required solidity compiler by running:

$ docker pull ethereum/solc:0.5.8

Installation

In the working directory of your choice, clone the latest version of the colonyNetwork repository:

$ git clone https://github.com/JoinColony/colonyNetwork.git

Move into the directory and install dependencies:

$ cd colonyNetwork && yarn

Update submodule libraries:

$ git submodule update --init

Provision token contracts for testing:

$ yarn provision:token:contracts

Contracts

The contract upgradability is using the EtherRouter pattern, see the delegate proxy pattern in the documentation for implementation details.

The math, erc20, auth, roles and a significant part of the token contract have been reused from the Dappsys library.

Local Development and Testing

You can start a local test node and deploy the contracts yourself using the locally installed truffle package.

yarn start:blockchain:client

yarn truffle migrate --reset --compile-all

To deploy all contracts and run all contract tests:

yarn test:contracts

To deploy all contracts and run all reputation mining tests:

yarn test:reputation

To run tests with code coverage using solidity-coverage:

yarn run test:contracts:coverage

To lint contracts using Solium

yarn run solium

To lint JS using eslint (this is also a pre-commit hook)

yarn run eslint

Contributing

For details about how to contribute you can check the contributing page

Packages

No packages published

Languages

  • JavaScript 71.4%
  • Solidity 26.7%
  • HTML 1.1%
  • Shell 0.8%