Deploy a template DAO

Getting Super PowersFirst{

First -- You must configure your migration file, mainly the Org name, Token name, and token symbol, Additionally you want to define the first founders of the DAO and how much reputation and tokens they will get.

  "StandAloneContracts":[
   {
      "name": "ContributionRewardExt",
      "fromArc": true,
      "arcVersion": "0.0.1-rc.51"
    },
    {
      "name": "Competition",
      "fromArc": true,
      "params": [
        { "StandAloneContract": 0 }
      ],
      "arcVersion": "0.0.1-rc.51"
    }
  ],
  "CustomSchemes":[
     {
         "name":"ContributionRewardExt",
         "schemeName":"ContributionRewardExt",
         "address": { "StandAloneContract": 0 },
         "isUniversal":false,
         "params":[
            "GenesisProtocolAddress",
            { "voteParams": 1 },
            { "StandAloneContract": 1 }
         ],
         "permissions":"0x00000000",
         "alias":"ContributionRewardExt",
         "fromArc":true,
         "arcVersion": "0.0.1-rc.51"
      },
      {
        "name":"GenericSchemeMultiCall",
        "schemeName":"GenericSchemeMultiCall",
        "isUniversal":false,
        "fromFactory": true,
        "params":[
          "GenesisProtocolAddress",
          1,
          [0,0,0,0,0,0,0,0,0,0,0],
          "0x0000000000000000000000000000000000000000",
          [],
          "0x0000000000000000000000000000000000000000"
        ],
        "permissions": "0x00000010",
        "alias": "GenericSchemeMultiCall",
        "fromArc": true,
        "arcVersion": "0.0.1-rc.51"
    }
  ],
  "ContributionReward": [{}],
  "SchemeRegistrar": [{ "voteParams": 1}],
  "schemes": {
   "ContributionReward": true,
   "SchemeRegistrar": true,
   "GlobalConstraintRegistrar": false,
   "UpgradeScheme": false
  },
  "VotingMachinesParams":[
     {
        "boostedVotePeriodLimit":"345600",
        "daoBountyConst":"10",
        "minimumDaoBounty":"200",
        "queuedVotePeriodLimit":"2592000",
        "queuedVoteRequiredPercentage":"50",
        "preBoostedVotePeriodLimit":"86400",
        "proposingRepReward":"100",
        "quietEndingPeriod":"172800",
        "thresholdConst":1200,
        "voteOnBehalf":"0x0000000000000000000000000000000000000000",
        "votersReputationLossRatio":"4",
        "activationTime":"0"
     },
     {
        "boostedVotePeriodLimit":"604800",
        "daoBountyConst":"10",
        "minimumDaoBounty":"500",
        "queuedVotePeriodLimit":"2592000",
        "queuedVoteRequiredPercentage":"50",
        "preBoostedVotePeriodLimit":"86400",
        "proposingRepReward":"500",
        "quietEndingPeriod":"172800",
        "thresholdConst":1500,
        "voteOnBehalf":"0x0000000000000000000000000000000000000000",
        "votersReputationLossRatio":"4",
        "activationTime":"0"
     }
  ],
  "orgName":"<YourDAOname>",
  "tokenName":"<YourTokenName>",
  "tokenSymbol":"<YourTokenSymbol>",
  "tokenCap":0,
  "metaData":"",
  "useDaoCreator": true,
  "founders": [
    {
      "address": "<FristFounderAddress",
      "tokens": 1000,
      "reputation": 1000
    },
    {
      "address": "<SecondFounderAddress>",
      "tokens": 1000,
      "reputation": 1000
    }
  ]
}




  1. Insert a deploying private key which has enough ETH to pay for the deployment transaction

  2. Execute migration contract to deploy DAO

hello.sh
git clone https://github.com/daostack/migration.git
cd migration
npm install
npm run migrate.dao -- --restart --gasPrice 10 --provider <ETHEREUM_PROVIDER_URL> --private-key 0x<YOUR_PRIVATE_KEY> --params /path/to/your/params/migration-params-of-your-dao.json

echo 'You got to trust me on this, I saved the world'

Last updated