Skip to content

Coil-Official/uFragments

 
 

Repository files navigation

COIL

Coil (code name uFragments) is a decentralized elastic supply protocol that is inspired by Ampleforth. It maintains a stable unit price by adjusting supply directly to and from wallet holders.

The main difference between Coil and Ampleforth is supply distribution and the rebase period. Namely, Coil is a more fair and decentralized protocol with a majority of its supply being used for the initial distribution and liquidity pools. Rebase for Coil is every 23 hours and adjusts daily, having a dynamic, yet predicated rebase time.

You can read the whitepaper for the motivation and a complete description of the original protocol.

This repository is a collection of smart contracts that implement the Coil protocol on the Ethereum blockchain.

The official mainnet addresses are:

Table of Contents

Install

# Install project dependencies
npm install

# Install ethereum local blockchain(s) and associated dependencies
npx setup-local-chains

Testing

# You can use the following command to start a local blockchain instance
npx start-chain [ganacheUnitTest|gethUnitTest]

# Run all unit tests
npm test

# Run unit tests in isolation
npx truffle --network ganacheUnitTest test test/unit/uFragments.js

Contribute

To report bugs within this package, create an issue in this repository. For security issues, please contact [email protected]. When submitting code ensure that it is free of lint errors and has 100% test coverage.

# Lint code
npm run lint

# View code coverage
npm run coverage

License

GNU General Public License v3.0 (c) 2018 Fragments, Inc.

About

Smart contracts for Ampleforth Protocol (working name uFragments)

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • JavaScript 71.8%
  • Solidity 26.9%
  • Shell 1.3%