DAVI - Decentralised Autonomous Voting Interface

Overview

DXvote

DXdao recognizes the need to adapt and build new systems that reach consensus in a scalable, decentralized and effective way. Consensus is not an end, but a process.

DXdao Manifesto https://ipfs.io/ipfs/QmfGgQYwL4ZrXLVshYuwH2WHeSvPFQCDXeYTzPPFReCJqJ

With the requirements mentioned above DXdao built DXvote, an application that instead of trusting external and centralized services commonly used by other dapps DXvote brings complete control and maintenance responsibilities to the DXdao members, a huge responsibility that brings the decentralized freedom that DXdao needs.

Versions

Stable Release

Hosted in https://dxvote.eth.link/ and under control of dxdao.

Release Candidate

Source code of master branch built and hosted on IPFS in https://prod.project-davi.dev/ and under control of DXgovernance code owners.

Developer Version

Source code of develop branch built and hosted on IPFS in https://project-davi.dev/ and under control of DXgovernance developers.

Maintenance

Like we mention before the maintenance of the dapp is in charge of the users of it, this does not mean that they have to work full time to make the DAO worked, truth be told the maintenance of the application is not hard. The application gets all the necessary configuration information from a single file (called config file), inside the file all the cache, contracts, and dapp information is stored. From this file the dapp knwos from which URL should fetch the cache hosted in IPFS for each network.

All maintenance actions are executed in the blockchain network trough transactions, this is extremely helpful to refund the maintenance cost instantly as well as providing an economic incentive to those who maintain the dapp.

Cache

To update the cache a script need to be executed, this script will fetch and index all the necessary information to be served in the dapp when it starts, so the dapp will only need to fetch the remaining information to the last block.

Example: If the dapp is used in mainnet and the last block number is 11 million and the cache file has all the data till block number 10 million the application will get all the remaining data between block number 10 million and 11 million before starting, once it finish it will start the dapp.

Pros and Cons: The big Pro of this is that there wont be loading times between actions while the user is using the dapp, all actions would seem to be instant, and they are because the information is already there. The Con in this approach is that if the cache is not updated often (days or weeks depending on the network) it can cause low loading times when you open the application for the first time.

The cache script will gather all immutable information from the ethereum networks supported and save all of it in cache files uploaded in IPFS. This script is ran

To understand a bit better what the script will do you can see src/services/cacheService.ts.

Configuration

The configuration is even easier than the cache, it is just one file that stores all the smart contracts addresses, the tokens to be used, and the proposal templates and the calls to be recommended to be used in the new proposal.

Each network in the config file has a token array, recommended calls array and templates array, if you want to add new tokens, templates and recommended calls to the dapp just add them in the config file. You only change the file when you want to change the values mentioned before.

Install

Be sure you are using correct node version listed in ./package.json (engines.node)

nvm use

Install all dependencies with yarn.

yarn

Development

The development script will start a local hardhat node, deploy all dxdao contracts with local development configuration and start the dapp with the development configuration in the port 3000.

yarn dev

To understand a bit better what the script will do you can see scripts/dev.sh and scripts/deployDevContracts.ts.

Start

The script will start the dapp with the production configuration locally on port 8080 serving the folder build after running the production build.

yarn start

Build

The script build the dapp with the production configuration and save it in the build folder.

yarn build

Comments
  • Feat #297 Support default values from rich contract data

    Feat #297 Support default values from rich contract data

    Description

    Support default values from rich contract data. Disable input by default when receiving data. Adding unlock icon to enable.

    22-09-26 Support default values from rich contract data.webm

    2022-09-26 09-38-25 Support default values from rich contract data

    Closes #297

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [X] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Tested manually and added Tests

    Checklist:

    • [X] My code follows the existing style of this project
    • [X] I have performed a self-review of my own code
    • [X] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [X] I have added tests that prove my fix is effective or that my feature works
    • [X] New and existing unit tests pass locally with my changes
    • [X] Any UI changes have been tested and made responsive for mobile views
    opened by rulfo71 44
  • Set Guild Config action

    Set Guild Config action

    Description

    Include new action in ActionsBuilder to change guild config. All fields by default will have current guild config values. Infoline component will display only updated fields with prev-> new values.

    Closes https://github.com/DXgovernance/DAVI/issues/313

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [x] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

    Checklist:

    • [x] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [ ] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [x] I have added tests that prove my fix is effective or that my feature works
    • [x] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views

    https://user-images.githubusercontent.com/25844967/200446024-646e3b86-5d87-462a-a9df-f7fd8dca4f10.mov

    Screen Shot 2022-11-07 at 21 43 38 Screen Shot 2022-11-07 at 21 43 24
    opened by MiltonTulli 37
  • Feat/permission check actions

    Feat/permission check actions

    Description

    This issue highlights whenever there's an action trying to be executed but for which the user does not have permission.

    See video:

    https://user-images.githubusercontent.com/59825171/201974426-423dd4a9-f2c7-4008-95c5-a2d4efad9dab.mp4

    Closes # (issue)

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [x] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Unit testing and hook testing.

    Checklist:

    • [x] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [x] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [x] I have added tests that prove my fix is effective or that my feature works
    • [x] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by Kenny-Gin1 36
  • Display consistent params for generic calls

    Display consistent params for generic calls

    Description

    Show the parameters in a simple way once initially expanding generic call actions.

    Closes https://github.com/DXgovernance/DAVI/issues/207

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [x] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

    Checklist:

    • [ ] My code follows the existing style of this project
    • [ ] I have performed a self-review of my own code
    • [ ] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [ ] I have added tests that prove my fix is effective or that my feature works
    • [ ] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views

    Video

    https://user-images.githubusercontent.com/25844967/189235418-7bd61481-8750-4526-a545-70eea998073a.mov

    opened by MiltonTulli 28
  • refactor: Switch to `wagmi`.

    refactor: Switch to `wagmi`.

    Description

    This PR removes web3-react from the DAVI codebase in favor of much newer and better maintained wagmi.

    Closes https://github.com/DXgovernance/DAVI/issues/69.

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [x] New feature (non-breaking change which adds functionality)
    • [x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Existing test suite has been updated to work with wagmi. Most of DAVI has been tested manually, but additional testing is welcome!

    Checklist:

    • [x] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [x] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [x] I have added tests that prove my fix is effective or that my feature works
    • [x] New and existing unit tests pass locally with my changes
    • [x] Any UI changes have been tested and made responsive for mobile views
    enhancement Refactor 
    opened by mprasanjith 28
  • Feat #229 - Better UX around proposals, adding expire time and a few seconds left

    Feat #229 - Better UX around proposals, adding expire time and a few seconds left

    Description

    • Issue #229
    • Fix of "a second" left on proposal when it was under a minute left. I had to do it manually because i couldn't find the error... i tried the exact same lines in a playground and moment.js (with the same version number) returns "a few seconds" but on DAVI returns "a second".

    Closes #229

    image

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [X] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

    Checklist:

    • [x] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [x] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [x] I have added tests that prove my fix is effective or that my feature works
    • [x] New and existing unit tests pass locally with my changes
    • [x] Any UI changes have been tested and made responsive for mobile views
    enhancement 
    opened by rulfo71 24
  • Refactor/ether swr guilds

    Refactor/ether swr guilds

    Description

    This is the third part of three to refactoring our hooks to use wagmi completely. With this third refactoring, we have finally sunset ether-swr. This will hopefully come together as a better experience for the end-user since we are now optimizing how we fetch data from our contracts. E.g. polling.

    I added some tests to it as well.

    • Refactoring and moving all the hooks/Guilds/guild to Module/Guilds/Hooks.
    • Adding tests for all the hooks.

    Note that the tests just mock out the entire file. It is not optimal - but the purpose of these tests is rather to enhance the developer experience and quickly understand what should be returned from the hooks.

    NOTE: This is a very big refactor and moving of files. I have tried to check for as many errors and/or bugs as possible manually that might have appeared with this refactor. But please be vigilant of any changes that you might see.

    Questions to ponder in this PR:

    • The test files basically mock out the entire corresponding hook file and the purpose is for them to understand the usage of the hooks and what it is meant to return. Is this useful or not? If not, I will remove all of them.
    • There is one known error I am getting at the moment Invalid BigNumber value argument="value", value=null, code=INVALID_ARGUMENT. I cannot see that it breaks anything at the moment and am not sure if it was introduced in this branch or not.

    Closes # (issue)

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [ ] New feature (non-breaking change which adds functionality)
    • [x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Unit-testing and manual testing.

    Checklist:

    • [ ] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [x] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [x] I have added tests that prove my fix is effective or that my feature works
    • [x] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by Kenny-Gin1 24
  • Fix block explorer links

    Fix block explorer links

    Description

    Fixing block explorer links through the app

    Closes #338

    image image

    Type of change

    • [x] Bug fix (non-breaking change which fixes an issue)
    • [ ] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Manually for now

    Checklist:

    • [x] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [x] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [ ] I have added tests that prove my fix is effective or that my feature works
    • [x] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by rulfo71 23
  • First Orbis implementation

    First Orbis implementation

    Description

    This is the first implementation of Orbis to DAVI. It required a few updates to our dependencies and webpack configurations and thus will include breaking changes. In the first implementation, we will have a button that redirects us to :guildAddress/discussion and from there we will connect to Orbis and be able to create our first post.

    • Adds the Orbis implementation (Ceramic Client) to DAVI.
    • Adds a Create Discussion button beside the Create Proposal button.
    • connect,** isConnected, createPost-methods to interact with Orbis
    • Updating react-scripts from 4.0.3 to 5.0.1
    • Configuration updates to Webpack to work with Ceramic
    • Test added for postTemplate

    TODO:

    • Add more functionalities to the createPost method to allow for mentions, replies, master references, and so on.
    • Add integration test for our CreateDiscussion-page
    • Refactor the state management in the CreateDiscussion page to maybe use useReducer or.useContext
    Screenshot 2022-08-10 at 14 53 47 Screenshot 2022-08-10 at 14 55 12 Screenshot 2022-08-10 at 14 55 43

    Closes # (issue)

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [ ] New feature (non-breaking change which adds functionality)
    • [x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

    Checklist:

    • [x] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [x] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [x] I have added tests that prove my fix is effective or that my feature works
    • [x] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by Kenny-Gin1 23
  • fix: Remove proposal types page and fix nft factory

    fix: Remove proposal types page and fix nft factory

    Description

    • Renamed create pages a little
    • Removed proposal types from links since they currently have no functionality
    • Add check before adding nft factory to localhost
    • Removed search and create button from landing page since they currently have no functionality

    Closes #219 Closes #72 Closes #73

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [ ] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

    Checklist:

    • [ ] My code follows the existing style of this project
    • [ ] I have performed a self-review of my own code
    • [ ] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [ ] I have added tests that prove my fix is effective or that my feature works
    • [ ] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by rossneilson 22
  • General updates and fixes for demo

    General updates and fixes for demo

    Description

    -Adding project davi to header

    • Adding extra toLowerCase function to ensure matching tokens
    • Added weth and correct swpr token to goerli token list
    • Added new goerli subgraph for swapr (no pairs yet)

    Additional changes

    • Allowing zero value when setting function permissions
    • New rich contracts with correct swapr fee setting address
    • Fixed ens on all networks

    Closes # (issue)

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [ ] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

    Checklist:

    • [ ] My code follows the existing style of this project
    • [ ] I have performed a self-review of my own code
    • [ ] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [ ] I have added tests that prove my fix is effective or that my feature works
    • [ ] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by rossneilson 21
  • feat: Adding discussion to proposal flow and pages

    feat: Adding discussion to proposal flow and pages

    Description

    The new flow for governance is: Create discussion -> Create proposal

    Discussions can have multiple proposals created from them

    Our proposals now reference an orbis/ceramic stream ID so we can easily link discussions and proposals and do more complex queries

    RIght now its very simple and we will later add reactions, links and more

    Closes # (issue)

    Type of change

    • [ ] Bug fix (non-breaking change which fixes an issue)
    • [ ] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

    Checklist:

    • [ ] My code follows the existing style of this project
    • [ ] I have performed a self-review of my own code
    • [ ] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [ ] I have added tests that prove my fix is effective or that my feature works
    • [ ] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by rossneilson 11
  • White screen opening a proposal with a raw transaction

    White screen opening a proposal with a raw transaction

    Steps to Reproduce Steps to reproduce the behavior:

    1. Go to DXDGuild
    2. Click on a proposal with a raw transaction
    3. See white screen

    Expected behavior Shouldn't get white screen

    Device Information

    • Browser: Brave
    • Version: 2.2.0:development
    • Device: PC
    opened by rulfo71 0
  • White screen adding a raw transaction action

    White screen adding a raw transaction action

    Description A clear and concise description of what the bug is.

    Steps to Reproduce Steps to reproduce the behavior:

    1. Go to DXDGuild
    2. Click on Add Action
    3. Scroll down to Advanced Options
    4. Click on Raw transaction
    5. Fill with any Ethereum address, 0 on value and 0x01 on Data

    Expected behavior Should add an action

    Device Information

    • Browser: Brave
    • Version: v2.2.0:development
    • Device: PC
    opened by rulfo71 0
  • Two actions being added on Vesting Contract

    Two actions being added on Vesting Contract

    Description When adding an action on vesting contracts two actions are being added. Same problem when visualizing actions on a proposal already created

    Steps to Reproduce Steps to reproduce the behavior:

    1. Go to DXDGuild
    2. Click on 'Create Proposal'
    3. Click on Add Action
    4. Vesting Contract for DXD Token
    5. Create vesting contract
    6. Any amount, any Asset, click on Approve
    7. Complete everything with random data

    Expected behavior Only one action should be added

    Screenshots Two actions are being added: image

    Device Information

    • Browser Brave
    • Version v2.2.0:development
    • Device: PC
    opened by rulfo71 0
  • Various fix on actions (Vestings and raws)

    Various fix on actions (Vestings and raws)

    Closes:

    • #464
    • #465
    • #466

    Description

    • Removing call from editable action and checking null.
    • Iterating on decodedActions instead of Actions for options
    • Fix on getPermissionArgs for raw transactions

    both bugs found with madusha and ross

    Before: Screencast from 15-12-22 12:05:41.webm

    After: Screencast from 15-12-22 12:06:54.webm

    Type of change

    • [x] Bug fix (non-breaking change which fixes an issue)
    • [ ] New feature (non-breaking change which adds functionality)
    • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • [ ] This change requires a documentation update

    How Has This Been Tested?

    adding action vesting contracts

    Checklist:

    • [x] My code follows the existing style of this project
    • [x] I have performed a self-review of my own code
    • [ ] I have commented my code, particularly in hard-to-understand areas
    • [ ] I have made corresponding changes to the documentation
    • [ ] I have added tests that prove my fix is effective or that my feature works
    • [ ] New and existing unit tests pass locally with my changes
    • [ ] Any UI changes have been tested and made responsive for mobile views
    opened by rulfo71 7
Releases(v2.2.0)
  • v2.2.0(Dec 12, 2022)

    DAVI Release v2.2.0

    https://projectdavi.eth.limo/

    This release of DAVI has again been autonomously executed via a guild on DAVI with controller ownership over the ENS name.

    At the beginning of the new year we will kicking off DXdao’s new budget structure with DXdao teams using DAVI for daily operations. You can read the budget proposals in the forum and we are looking forward to dogfooding DAVI!

    https://daotalk.org/t/phase-3-dxdao-budgetary-process-v1/4711

    This release sees a major performance improvement in how DAVI works and fetches data. Previously we used polling for new data which hit both our RPC providers and user machines very hard. Now we are listening for events

    The week before this change we saw daily relay’s by pokt in the millions and now we are down to a daily average of just a few thousand relays. The CPU usage graphs are also below (not entirely scientific benchmark, but a clear improvement). This comes at a great time before we scale our users up to the entirety of DXdao.

    Before

    https://user-images.githubusercontent.com/75996796/205053634-d6e0ed90-f22d-4f5a-ad37-43c68bbf11fc.png

    After

    https://user-images.githubusercontent.com/75996796/205053580-be1ed17a-a4ad-45eb-a8eb-91600e3f21b5.png

    Changelog

    • 🚀 Added approve call to asset transfer permissions

    • 🔧 Replaced watch flags for event listeners - Huge performance improvements

    • 🔧 Upgraded wagmi library to 0.7.15

    • 🐛 Fixed "X" incorrectly showing on some NumericalInput components

    • 🐛 Fixed error display on setGuildConfig

    Providing feedback

    To collect feedback we have set up canny:

    https://davi.canny.io/features

    For larger feature requests or suggestions please write them here. Also, feel free to vote on existing features that you would like to see. All of this will help us build DAVI into a better product.

    For bug reports or general feedback you can also write them down in a google doc and send them to the DXgov team, they will then be aggregated into one notion document. Updates will then be provided by comments in this document. The more screenshots and descriptions you give the better.

    Coming up in the next release

    Source code(tar.gz)
    Source code(zip)
  • v2.1.1(Nov 25, 2022)

    DAVI Release v2.1.1

    https://projectdavi.eth.limo/

    We have been almost 3 weeks now in public beta for DAVI and in that time have had good initial feedback and some fun opportunities to test things.

    Some initial user testing showed very promising feedback on the user experience and it seems DXdao contributors are excited about moving more operations to DAVI!

    We also uncovered some bugs and UX improvements that are making their way into this release.

    We had the first ever known inter DAO vote performed from the DXD guild to DXdao where we voted with a fraction of a percentage of rep on the phase 2 restructuring proposal passing. All went well and it gives us the signal to move ahead with the DXD guild plans. The process for voting is still in very early alpha stages and much more is planned to give a good DAO-DAO voting experience to all DAOs on DAVI, but for the time being the functionality is there for exploration!

    Inter-DAO vote

    We also utilised DAVI to distribute $26500 in hackathon prizes to the winners of infinite hackathon. This provided us a use case where doing this in DXvote would have required 8 proposals and instead we had one clean propsoal in DAVI, created by non technical contributors with little instruction.

    Infinite hackathon prize distribution

    And again this release of DAVI has been autonomously executed via a guild on DAVI with controller ownership over the ENS name.

    The next major use case for dogfooding DAVI will be launching guilds for each of the squads in DXdao as part of the restructuring to increase accountability and budgeting, read more here and keep an eye out for those guilds going live in December

    Phase 3 Budgetary process

    Changelog

    • Set Guild Config action - You can now update your guild configs with an easy to use core action
    • Support default values from rich contract data - This was an immediate improvement we could make for inter-DAO voting and contract forms in general
    • Allow ens for address input - A nig request and one that made sending out prize money a breeze (you dont even need to write .eth on the end of names)
    • Use ENS subdomains for config fetching - A behind the scenes update but one that will allow us to quickly add functionality to DAVI without redeploying!
    • Offline screen - You cant do much offline but at least now you know you are offline
    • Block explorer links on addresses
    • Fix voting power on vote transaction for snapshot guilds - Thanks to Sky for finding this bug

    Providing feedback

    To collect feedback we have set up canny:

    DAVI canny

    For larger feature requests or suggestions please write them here. Also, feel free to vote on existing features that you would like to see. All of this will help us build DAVI into a better product.

    For bug reports or general feedback you can also write them down in a google doc and send them to the DXgov team, they will then be aggregated into one notion document. Updates will then be provided by comments in this document. The more screenshots and descriptions you give the better.

    Coming up in the next release

    Source code(tar.gz)
    Source code(zip)
  • v2.0.1(Nov 7, 2022)

    Public beta

    Project DAVI

    A few weeks ago we opened DAVI up in private beta for internal testing in DXdao and to get it into people’s hands alongside a demo. The private beta was defined as still being on testnets like Goerli. But now we have deployed to production networks we are entering public beta.

    The main audience is still very much DXdao as we need to dogfood guilds internally before onboarding external organisations onto DAVI.

    The public beta consists of our initial guilds launching on Mainnet and gnosis chain (maybe Arbitrum soon too):

    • ERC20 guilds - The guilds are built around an existing ERC20 token requiring users to lock the token for voting power.
      • SWPR guild - Coming soon 👀
      • DXD guild - In production now as we test inter-DAO voting. Please do not lock DXD yet, we will announce separately when it is ready with the initial 4% voting power in DXdao.
    • REP guilds - These operate around a reputation token the same as DXdao and will be used to facilitate DXdao actions usually undertaken by a MS. It can also provide a scalable solution to communities or teams just starting operations.

    You may also notice our guilds have the same addresses across chains now thanks to some upgrades to our deployment processes.

    And if you take a look at the Mainnet guild’s past proposals you’ll even see that we used DAVI to launch DAVI via ENS updates!

    We’ll see if we can find some time to demo DAVI’s public beta to everyone soon also.

    Changelog

    Compared to the previous version, 1.2.0, most of the changes have been under the hood and bug fixes.

    • Updated readability of contracts
    • Improved how we read guild types with added caching
    • Added Mainnet and gnosis chain registries
    • Support CID v1 in ENS update action

    We need you

    The whole logic behind the ecosystem vision of DXdao’s products enabling community freedom is that DXdao will be the first to use all of these products and is building them because it sees a need. This should encourage others to see DXdao doing cool things and want to emulate us. So in order to show others everything guilds can do inside DAVI we need to use them ourselves.

    We will likely use the current Mainnet rep guild for paying out hackathon prizes in the next week. In addition of course DXD guild will soon be getting tested utilising it’s REP.

    Beyond this, phase 2 of restructuring calls for each squad to have its own budget and OKRs which will require the squad having its own on chain entity, a perfect chance for guilds to shine.

    DXgov will lead since we are well positioned both for goals and in experience with DAVI but shortly all squads should be using DAVI for their operations. We can also use discussions and social features inside those guilds to document efforts and discussions specific to each squad.

    If you have any further ideas on how we can use DAVI internally please suggest them to the DXgov team!

    We also need to add contracts to our config, if you know a contract you want a DAVI DAO to be able to call then let us know!

    Longer term we have some potential partners and DXgov’s next priority is supporting Gov 1.5 and migrating DXdao to DAVI.

    Providing feedback

    To collect feedback we have set up canny:

    https://davi.canny.io/features

    For larger feature requests or suggestions please write them here. Also, feel free to vote on existing features that you would like to see. All of this will help us build DAVI into a better product.

    For bug reports or general feedback you can also write them down in a google doc and send them to the DXgov team, they will then be aggregated into one notion document. Updates will then be provided by comments in this document. The more screenshots and descriptions you give the better. https://rossneilson.notion.site/Feedback-v2-0-1-f2cd1bd645a847e9a9d5a5c4b102f2f9

    Coming up in the next release

    Source code(tar.gz)
    Source code(zip)
Owner
DXgovernance
DXdao's governance platform and products
DXgovernance
Mole is a tool to assist with testing and experimentation involving robots and autonomous systems.

Mole Mole is a tool to assist with testing and experimentation involving robots and autonomous systems. It can facilitate the following: test and expe

Naval Information Warfare Center Pacific 5 Jun 28, 2022
This is a decentralised application that allows you to pay your employees salary in Ethereum.

This is our project for Ethernals Hackathon. Built on Polygon and deploye dusing Spheron. You can check out live project here: https://ethernals_dapp-

Kushagra Sarathe 3 Sep 20, 2022
A decentralised portal that aims to help Government Educational organisations to track student and colleges data to provide them with fellowships and programs.

DeSIDB A decentralised database built on Ethereum & Solidity. Introduction - India is a country with a population of 6.8 crore students graduating eac

Sachin Pandey 14 Jul 10, 2022
A decentralised E-commerce platform with NFT based warranty

flipshop A decentralised E-commerce platform with NFT based warranty demo- video, developed for Flipkart Grid 4.0 Hackathon Problem Statement Currentl

maycodes 11 Dec 5, 2022
Alluo Decentralised App (dapp) allowing customers to interact with the Alluo protocol

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: ya

Alluo 4 Oct 21, 2022
Decentralised Oracle Network for Subjective Data Feeds (testnet).

deOracle.xyz deOracle.xyz is a decentralised P2P oracle platform with a cross-chain reputation system for digital identities. Our goal is to bring rel

DeOracle.xyz 2 Oct 28, 2022
Repository for DeCHO - a crowdfunding platform using Choice Coin for voting.

DeCHO Repository for DeCHO - a crowdfunding platform using Choice Coin for voting. ReactNative This project is built using ReactNative Code to run cd

Choice Coin 12 Oct 21, 2022
auto-vote-topgg automates voting for bots on top.gg using google chrome!

auto-vote-topgg auto-vote-topgg automates voting for bots on top.gg using google chrome! uses your account thats already logged into top.gg you must b

Anonymous 2 Jan 29, 2022
WebX DAO Voting - Membership Dapp for the community

WebX DAO Voting / Membership Dapp ?? This Dapp allow decisions to be made via voting amongst those who own non-fungible tokens (NFTs) from the DAO, wh

WebX DAO 6 Sep 28, 2022
In our last repo we learnt how to create a DAO on your own and how to use governance tokens and NFTs for voting purposes.

In our last repo we learnt how to create a DAO on your own and how to use governance tokens and NFTs for voting purposes. Now we will be stepping into the world of games with NFTs where a user has to play games with their character being an NFT which has unique powers, unique traits etc etc.

Daksh Paleria 6 Oct 1, 2022
Creates Photoshop-like guides and rulers interface on a web page

RulersGuides.js This Javascript package creates Photoshop-like guides and rulers interface on a web page. DEMO Main window: Menu: Guides are created b

Mark Rolich 925 Nov 27, 2022
The all-in-one interface for Chrome

Omni The most powerful interface for Chrome ?? With Omni you can use Chrome like a pro. Manage tabs, bookmarks, your browser history, perform all sort

Alyssa X 5.8k Dec 31, 2022
High-quality, customizable web components for common user interface patterns

Elix is a community-driven collection of high-quality web components for common user interface patterns. Most applications make use of common, general

Elix 699 Dec 19, 2022
Personal Blog - a project developed with Angular for the front-end interface and Wordpress for the back-end API served with Docker containers

PersonalBlog This project was generated with Angular CLI version 13.0.1. Front-end Interface Development server Run ng serve or ng serve --configurati

null 9 Oct 5, 2022
Universal interface for web3 wallets

Universal interface for web3 wallets

WeBill.io 76 Dec 31, 2022
Responsive Portfolio Website Using Html, Css and JavaScript, With a beautiful user interface

Responsive Portfolio Website Alexa Watch it on youtube Responsive Portfolio Website Alexa Responsive Portfolio Website Using Html, Css and JavaScript,

Alex Axel Mucyo 1 Mar 11, 2022
Veroo is a cappuccino delivery app. This application is for the purpose of studying modern interface and animations.

Veroo Veroo is a cappuccino delivery app. This application is for the purpose of studying modern interface and animations. Pleasant, fluid and lively

Lucas Augusto 14 Jun 12, 2022