Skip to content

block42-blockchain-company/brotocol-token-contracts

Repository files navigation

Tests and Linter checks Security audit


Brokkr Protocol ("Brotocol") Core Contracts

All contracts related to the BRO token. If you're looking for the strategy contracts, check out this repo.

In case you have improvement ideas or questions, you can reach us via discord, or open an issue in this repository.

Architecture Diagram

architecture diagram

Contracts

Name Description
airdrop Eligible wallets can claim BRO
bbro-minter Contract can mint/burn bBRO
bbro-token Non-transferable CW20 token
bonding-v1 Send UST/LP token, claim discounted BRO
distributor-v1 Transfers BRO from the rewards pool to bonding and staking
epoch-manager Stores global information needed for multiple contracts
mvp-treasury Holds any funds
oracle TWAP oracles for bonding
rewards Holds BRO used for bonding and staking rewards
staking-v1 Stake BRO, claim BRO and bBRO
token-pool Holds BRO only
vesting Eligible wallets can claim BRO according to the schedules
whitelist-sale Eligible wallet can purchase BRO at a fixed price

For the BRO token, we instantiate a default CW20 contract.

Testing

Run unit tests via

cargo test

How to build

Compile the contracts to wasm files with

./build_release.sh

Build the schema json files with

./scripts/build_schema.sh

For deployment please follow this README

Docs

Generate docs by running:

cargo doc --no-deps

Github Pipelines

  • basic.yml - runs unit tests(cargo test) and linter commands (cargo fmt, cargo clippy)
  • codecov.yml - runs cargo tool which checks current code coverage via implemented unit tests
  • audit.yml - audit Cargo.lock files for crates with security vulnerabilities reported to the RustSec Advisory Database.

About

Core contracts of the brokkr protocol (BROtocol)

Resources

License

Stars

Watchers

Forks

Packages

No packages published