- Ethereum blockchain as a base of infrastructure
- solc 0.5.0
- Truffle 5.0.1 for testing
- OpenZeppelin v2.1.1 contracts as a base of source code
The project consists of ERC20 app token, crowdsale step smart contract and oracle.
contracts/VrParkToken.sol
contans VR token smart contract. VR is a capped mintable token.
contracts/VrParkIcoStep.sol
is a ICO step smart contract. It has the following features:
- Any investor wishing to pay more than
thresholdForWhitelist
must be in a whitelist - ETHVR rate is defined as
ETHUSD / USDVR
ETHUSD
is taken from oracle
contracts/ExchangeInteractor.sol
retrieves the quotes from given exchange. It uses oraclize API widely.
In order to use an instance of VrParkIcoStep
, the following steps have to be taken:
- Create a
VrParkToken
instance. - Create an
ExchangeInteractor
instance. - Create a
VrParkIcoStep
instance using previously created token and oracle instances as corresponding parameters. - Add address of
VrParkIcoStep
instance as a minter using token'saddMinter
function.