Everest TCR: Proposal for Funding

Task:

Members of the MetaCartel have been working since ETHBerlin to build a TCR called ‘Everest’, with the aim of solving information discovery and coordination from within the Ethereum community. This proposal outlines a grant to finish the work done by the team and launch the project MVP in the next few weeks.

Unique experimental value proposition:

  • This will be the first TCR in history where the initial bonding curve liquidity and token distribution will be directed towards members of a DAO (MetaCartel DAO and potentially Moloch DAO).
  • This will also become the first DAO joint venture between Moloch & MetaCartel.

Problem tldr;

It is really hard to find things in the Ethereum ecosystem.

It is extremely difficult to discover, become aware and to search for valuable information around Ethereum community projects, people and resources. This need has been signalled internally within the MetaCartel DAO and by the EF.

Some problem journeys include:

  • Recruiting
    • I need an audit for my project. I want to browse a list of smart contract auditors
    • I need a freelance designer to help redesign my landing page
  • Research & coordination
    • I am looking to explore L2 scaling solutions for my dapp, I want to see all the state channels implementation SDKs.
  • Ecosystem participation
    • I want to see all the DAOs out there in the ecosystem so that I can conduct research and perhaps join some of them.

Externalities of these problems include:

  • Unrealized opportunities for people and projects who aren’t discovered by the community as they don’t have a good network
  • Undiscovered work and often resulting in duplication efforts around solved problems

Solution tldr;

Create a universally shared ‘yellowpages’ registry for the Ethereum community that lists out every crypto project in the ecosystem.

Scope of the proposal

  • The $6,000 USD will help the project complete…
    • Unit Testing
    • Bonding Curve Implementation
    • Frontend Integration
    • Audit Contracts
    • Project Management
    • Launch the full project in the next month

What makes this Everest TCR unique?

Community: Initial token distribution: Initial bootstrapping of the TCR bonding curve and token distribution will be initiated by MetaCartel DAO and potentially Moloch DAO. Going to be pushed by the MetaCartel community. There is meme firepower.

Implementation

  • A poll is entered into a queue when an ENS domain and/or web domain is submitted to the registry. The submission requires a user defined deposit amount of TCR tokens. Once a poll reaches the head of the queue, the poll opens. There can only be one poll open at a time. There are only two types of polls, adding a domain entry to the registry or remove a domain entry from the registry.
  • Voters submit their encrypted vote and the amount of tokens to stake. Once a vote closes, there is a reveal period where all voters need to reveal their vote. If a voter does not reveal their vote during the reveal period, their voting stake is slashed and shared equally amongst winning voters. All losing voters also will have their losing stake slashed and shared amongst winning voters. Once the reveal period for a vote has concluded, anyone can call the process function to start the next poll.
  • The bonding curve will use code from Limechain (coordinating this week 9-24).

Smart Contract Overview

  • The TCR design consists of 3 smart contracts (not including additional imports for ERC20 support and libraries like SafeMath). The design principle is to allow for any Moloch DAO based contract to interact and launch a TCR with arbitrary members. The majority of the code will be written in Solidity expect for the bonding curve math which will be written in Vyper.
    • Registry.sol - The registry contract is a proxy used to facilitate the ragequitting and launch the TCR. Once the registry contract has started the TCR, it is no longer needed. Separating the registry from the TCR allows for future modularity so that other types of DAO “drivers” can be integrated using the same TCR design.
    • TCR.sol - The tcr contract manages the tcr and is the main contract that voters will interact with once started by the registry contract. Voting starts with a submission. Each submission is put into a queue and only one ballot can be processed at a time. A ballot consists of a voting period and a reveal period. During the voting period, voters vote by putting in a vote deposit and submitting an encrypted vote. Once the voting period has ended, there is a reveal period in which voters need to reveal their votes. Failure to reveal a vote results in the loss of the vote deposit. After the reveal period has ended, the poll needs to be processed. This marks the poll as complete and begins the voting period of the next ballot in the queue.
    • Voters on the losing side of a vote (less than majority) lose their voting deposit. Voters on the winning side of a vote get their voting deposit back and equally split, amongst the other winning members, the losing and non-revealed voting deposit.
  • Boostrap.sol
    • The bootstrap contract has the list of members that should be airdropped tcr tokens. If the list is exceptionally large, the registry contract can incrementally airdrop tcr tokens until the list has been exhausted.

Registry data

Each project is an object that is then added to the registry has the following fields…

  • Project name
  • Project logo
  • Project website link
  • Project twitter link
  • Arbitrary metadata (containing details and tags that enables the dapp to sort and filter projects on the registry by categories and other tags)

User experience

  • Craigslist-like user experience, simple and minimal (project was formerly called dHole)

MctUTTFLhfrk02hQ492aeRc5ctZIHWL818sqL3cQsslyS8YQ9d6M1TNh8LhNlmaSgjA-7r6IzQ6v6OWiUlCxOICNCjG1Pd-YKQIsEztFz16rw7zkpqy5jKStmSSWgWEvrGY6Oy6f.png1428×694 58.6 KB

  • Simple information architecture
    • (Page 1) Homepage:
      • Lists all the items in the registry
      • Can filter out by tags/topic/category eg. Auditors, Dev shops etc.
      • Functionality to add and remove items from the list (add button obvious, remove button less obvious)
    • (Page 2) Manage page:
      • See all the user’s listings that they have submitted
      • Allows user to update the listings

How to bootstrap the listings on the site

Some strategies…

  • Use the registry to list relevant and useful things category by category eg…
    • List all auditors
    • List all development shops
    • List all user login and authentication tooling
  • Exclusivity eg…
    • MetaCartel will only fund projects if that list themselves in the registry

Simply begin using it and adding to it as a universal yellow book.

Token distribution & initial liquidity

The appreg TCR contract, once it receives grant funding from a DAO will immediately rage quit and allow members one voting share. The grant funding amount also effectively sets the base price for the bonding curve.

  • Tokens are needed to…
    • Add a new listing to the registry
    • Remove a listing to the registry
  • Tokens can be acquired…
    • Via the TCR’s token bonding curve
    • Through an initial token distribution airdrops
  • Initial TCR Drop Offering
    • This is a novel innovation to bootstrap a token network via DAOs. In this case the MetaCartel DAO or any other DAO can provide liquidity to the bonding curve and DAO members are given tokens in return.
    • MetaCartel DAO will seek to provide a small amount of liquidity to the bonding curve and initially generate tokens (1-2k USD amount), where all members will receive a flatshare amount of tokens where they are then able to participate in the TCR registry or further fairly distribute tokens to the community.

Progress and timeline

Need to do: Unit Testing, Frontend Implementation, Bonding Curve Implementation, Contract Audit
Oct 4th Target Launch

2 Likes

I have been working to last months to collect useful information for Ethereum and I can understand the problem that you are trying to solve. I would like to contribute as I can to your project and help you to move faster. I you are interested PM me.
I can help with the system administrator stuff, front , project managment and what ever else seems interested :wink:

1 Like