hifi-protocol v1.0.1
Hifi Protocol

An implementation of zero-coupon bonds on the Ethereum blockchain. In-depth documentation on Hifi is available at docs.hifi.finance.
The built contract artifacts can be browsed via unpkg.com.
Developers
Our contracts are written in Solidity and our tests in TypeScript.
If you want to contribute, familiarity with Hardhat, Ethers, Waffle and TypeChain is needed.
Pre Requisites
Before running any command, make sure to install dependencies:
$ yarn installCompile
Compile the smart contracts with Hardhat:
$ yarn compileTypeChain
Compile the smart contracts and generate TypeChain artifacts:
$ yarn typechainLint Solidity
Lint the Solidity code:
$ yarn lint:solLint TypeScript
Lint the TypeScript code:
$ yarn lint:tsFormat Code
Run the Prettier formatter:
$ yarn prettierTest Unit
Run the unit tests:
$ yarn test:unitTest Integration
Run the integration tests:
$ yarn test:integrationCoverage
Generate the code coverage report:
$ yarn coverageClean
Delete the smart contract artifacts, the coverage reports and the Hardhat cache:
$ yarn cleanAcknowledgements
- Dan Robinson and Allan Niemerg, for their work on The Yield Protocol: On-Chain Lending With Interest Rate Discovery, which shaped many of our protocol design choices.
- Chainlink, for their Price Feeds.
- Compound Finance, for their Solidity math library.
- OpenZeppelin, for their outstanding smart contract library.
Discussion
For any concerns or feedback, open an issue or visit us on Discord to discuss.
License
Everything is released under the LGPL3.0 license.