Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/JoinColony/colonyNetwork
Colony Network smart contracts
https://github.com/JoinColony/colonyNetwork
blockchain ethereum ethereum-contract smart-contracts solidity solidity-contracts
Last synced: about 1 month ago
JSON representation
Colony Network smart contracts
- Host: GitHub
- URL: https://github.com/JoinColony/colonyNetwork
- Owner: JoinColony
- License: gpl-3.0
- Created: 2017-04-28T12:11:32.000Z (over 7 years ago)
- Default Branch: develop
- Last Pushed: 2024-10-29T11:20:01.000Z (about 1 month ago)
- Last Synced: 2024-10-29T12:39:56.022Z (about 1 month ago)
- Topics: blockchain, ethereum, ethereum-contract, smart-contracts, solidity, solidity-contracts
- Language: JavaScript
- Homepage: https://colony.io/
- Size: 26.1 MB
- Stars: 435
- Watchers: 39
- Forks: 106
- Open Issues: 56
-
Metadata Files:
- Readme: .github/README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
- best-of-crypto - GitHub - 17% open · ⏱️ 05.06.2024): (Others)
README
# The Colony Network
Contracts for running the Colony Network as defined in the [Colony White Paper](https://colony.io/whitepaper.pdf)
## 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](https://docs.colony.io/colonynetwork/bug-bounty/)) for more information about bounties, rules, and terms.
## Prerequisites
`node` v16.15.x (we recommend using [`nvm`](https://github.com/nvm-sh/nvm))
`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 && npm install
```Update submodule libraries:
```
$ git submodule update --init
```## Contracts
The contract upgradability is using the EtherRouter pattern, see [the delegate proxy pattern](https://docs.colony.io/colonynetwork/docs-upgrade-design/) 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](https://github.com/dapphub/dappsys-monolithic).
### Local Development and Testing
You can start a local test node and deploy the contracts yourself using the locally installed `truffle` package.
```
npm run start:blockchain:clientnpx truffle migrate --reset --compile-all
```To deploy all contracts and run all contract tests:
```
npm run test:contracts
```
To deploy all contracts and run all reputation mining tests:
```
npm run test:reputation
```
To run tests with code coverage using [solidity-coverage](https://github.com/sc-forks/solidity-coverage):
```
npm run test:contracts:coverage
```
To lint contracts using [Solium](https://github.com/duaraghav8/Solium)
```
npm run solium
```To lint JS using `eslint` (this is also a pre-commit hook)
```
npm run eslint
```## Contributing
For details about how to contribute you can check the [contributing page](CONTRIBUTING.md)