Livepeer protocol
Clone or download
Latest commit 815b87b Oct 1, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Only run unit tests with coverage Apr 20, 2018
.vscode var -> const for imports Jul 26, 2017
contracts Use transcoderTotalStake() helper and add clarifying comment for depr… Oct 1, 2018
installed_contracts/oraclize Basic unit tests for manager contracts with new payment logic Aug 9, 2017
migrations Add ServiceRegistry to migrations. Add registry related checks in job… Jun 5, 2018
scripts Add integration test for round initialization Jul 30, 2018
test Additional BondingManager unit tests for total bonded accounting when… Sep 26, 2018
utils Update EarningsPool.sol - additional unit tests and integration tests Aug 29, 2018
verification Silence a few compiler warnings. Add some dockerized commands Jan 17, 2018
.babelrc Editorconfig. Tests using async/await May 2, 2017
.editorconfig Insert final newline in editorconfig May 2, 2017
.eslintrc.js Indentation in .eslintrc.js Aug 25, 2017
.gitattributes Ensure roundLength can be increased/decreased. Refactored RoundsManag… Feb 2, 2018
.gitignore Artifact parsing script Jul 5, 2017
.solcover.js Change return signature of BondingManager.getTranscoderEarningsPoolFo… Aug 30, 2018
.soliumignore Added solium and testrpc as dependencies Sep 7, 2017
.soliumrc.json Bump Solium to v1.1.8 and update rules Sep 19, 2018 A few doc updates Sep 12, 2017
Dockerfile Include .solcover.js in Dockerfile Feb 14, 2018
LICENSE Initial commit. Apr 25, 2017 Add coveralls badge Feb 17, 2018
docker-compose.yml Use built image in docker-compose services to reduce CI test time Jan 17, 2018
package-lock.json Bump Coveralls to v3.0.2 Sep 19, 2018
package.json Bump Coveralls to v3.0.2 Sep 19, 2018
truffle.js Update EarningsPool.sol - additional unit tests and integration tests Aug 29, 2018

CircleCI Coverage Status Gitter

Livepeer Protocol

The Livepeer Protocol consists of the on-chain smart contracts that govern the logic of:

  • Livepeer Token ownership
  • Transcoding requests and job assignment
  • Proof and verification of transcoding work
  • Bonding and delegating for transcoder election
  • Slashing (penalties) for faulty participation

The protocol is outlined in the Livepeer Whitepaper and is more formally specified in the Protocol Specification.

The current status is that this is a near complete implementation of the initial pass at the Livepeer protocol which accounts for the alpha release milestone - Snowmelt - as defined in the Livepeer Network Phases.


The Livepeer Protocol uses Truffle v4.0.1 and TestRPC v6.0.1.

git clone
cd protocol
npm install

You can build and test the Livepeer Protocol locally:

npm run test:unit
npm run test:integration

All contributions and bug fixes are welcome as pull requests back into the repo.

Built using OpenZeppelin and Truffle.


Please report protocol bugs big and small by opening an issue. No possible bug report is too small.