ChronoMint, Labour Hours and Time contracts.
- ChronoBankPlatform.sol acts as a base for all tokens operation (like issuing, balance storage, transfer).
- ChronoBankAsset.sol adds interface layout (described in ChronoBankAssetInterface.sol)
- ChronoBankAssetWithFee.sol extends ChronoBankAsset.sol with operations fees logic.
- ChronoBankAssetProxy.sol acts as a transaction proxy, provide an ERC20 interface (described in ERC20Interface.sol) and allows additional logic insertions and wallet access recovery in case of key loss.
- EventsHistory.sol holds all operations events to avoid events lost in case of contract replacement during upgrade or extension.
- ChronoBankPlatformEmitter.sol provides platform events definition.
To understand contract logic better you can take a look at the comments also as at unit tests
NodeJS 6+ required.
npm install -g ethereumjs-testrpc
npm install -g truffle
Then start TestRPC in a separate terminal by doing
testrpc
Then run tests in a project dir by doing
truffle test