📓
v1
  • DAOstack Documentation
  • Introduction
    • What is DAOstack?
    • Architecture Overview
      • Smart Contracts
      • Subgraph
      • Arc.js (Javascript Library)
      • Decentralized Applications (Dapps)
    • Holographic Consensus
      • Genesis Protocol
  • Guides
    • Deploying a DAO
    • Deploy a template DAO
    • Adding Plugins to a DAO
      • Adding an Existing Plugin
      • List of Existing Plugins
      • Building a Plugin
    • Building a Custom DAO UI
    • Querying the Subgraph
  • Reference
    • Smart Contracts
    • Arc.js
    • Subgraph
Powered by GitBook
On this page

Was this helpful?

  1. Guides

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'

PreviousDeploying a DAONextAdding Plugins to a DAO

Last updated 4 years ago

Was this helpful?