Skip to content

The genesis contracts for the Binance Smart Chain (BSC) network. The project aims to provide a comprehensive set of smart contracts that define the initial state and rules of the BSC blockchain.

License

Notifications You must be signed in to change notification settings

BTC415/bsc-genesis-contract

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bsc-genesis-contracts

This repo hold all the genesis contracts on Binance Smart chain. More details in doc-site.

Prepare

Install dependency:

npm install

unit test

Generate contracts for testing:

# the first account of ganache
node generate-system.js --mock true
node generate-systemReward.js --mock true
node generate-validatorset.js --mock true
node generate-system.js --mock true
node generate-slash.js --mock true
node generate-crosschain.js --mock true
node generate-tokenhub.js --mock true
node generate-tendermintlightclient.js --mock true
node generate-relayerincentivizecontract.js --roundSize 30 --maximumWeight 3 --mock true

Start ganache:

ganache-cli --mnemonic 'clock radar mass judge dismiss just intact mind resemble fringe diary casino' --gasLimit 13000000  -e 10000

Run truffle test:

truffle compile
truffle migrate
truffle test

Flatten all system contracts:

npm run flatten

how to generate genesis file.

  1. Edit init_holders.js file to alloc the initial BNB holder.
  2. Edit validators.js file to alloc the initial validator set.
  3. Edit generate-validatorset.js file to change fromChainId and toChainId,
  4. Edit generate-tokenhub.js file to change refundRelayReward, minimumRelayFee and maxGasForCallingBEP20.
  5. Edit generate-tendermintlightclient.js file to change chainID and initConsensusStateBytes.
  6. run node generate-genesis.js will generate genesis.json

License

The library is licensed under the Apache License, Version 2.0, also included in our repository in the LICENSE file.

About

The genesis contracts for the Binance Smart Chain (BSC) network. The project aims to provide a comprehensive set of smart contracts that define the initial state and rules of the BSC blockchain.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •