DeltaVerseDAO / fractal-metafactory

Decent DAO fractal metafactory DAO deployer metafactory

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fractal-Metafactory

Architecture

Metafactory deploys MVD, Governor Contract, Treasury, Token, and any other associated modules.

Metafactory.sol

The Metafactory contract acts as a factory proxy which quickly sets up a MVD and attaches any modules that a user would like to include. It creates permissions in the access control and removes renounces its role at the end of setup

Local Setup & Testing

Clone the repository:

git clone ...

Lookup the recommended Node version to use in the .nvmrc file and install and use the correct version:

nvm install 
nvm use

Install necessary dependencies:

npm install

Add .env values replacing the private key and provider values for desired networks

cp .env.example .env

Compile contracts to create typechain files:

npm run compile

Run the tests

npm run test

Deploy Contract to

npx hardhat deploy --network <network>

Local Hardhat deployment

To deploy the base Fractal contracts open a terminal and run:

npx hardhat node

This will deploy the following contracts and log the addresses they were deployed to:

  • MetaFactory

Deploys all other contracts for testing purposes

Creating a module

Each module should inherit the MVD contracts to include:

  • moduleBase.sol
  • IModuleBaseFactory.sol

Install the npm package

npm i fractal-contracts-package

Including un-compiled contracts within typechain-types. Follow theses steps hardhat plug-in https://www.npmjs.com/package/hardhat-dependency-compiler

About

Decent DAO fractal metafactory DAO deployer metafactory

License:The Unlicense


Languages

Language:Solidity 62.9%Language:TypeScript 35.9%Language:Shell 0.7%Language:JavaScript 0.5%