🎰DeFi777🎰 Roadmap 🛣

David Mihal
5 min readJun 15, 2020

DeFi777 has received a great response from the community since it was presented at the HackMoney hackathon. I’m excited to move this project forward and take it from a hackathon project to a piece of the growing DeFi ecosystem. This post outlines the plans and ideas that I’ll be working on going forward.

Security Audits 🔍

If successful, the DeFi777 contracts will end up wrapping large amounts of existing tokens. This means that the security of these wrapper contracts is crucial to keeping user funds safe (and not becoming the next LendfMe).

The most important component of this project is the ERC-777 wrapper factory, which can wrap any ERC20 token. Hopefully this wrapper contract can act as a key component of any DeFi protocol that wants to take advantage of ERC777, similar to WETH.

Smart contract audits are extremely expensive, in the tens of thousands of dollars rangeđź’°! Hopefully, these audits can be funded by Gitcoin Grants, as well as individual grants from DeFi companies.

Additional Protocols

The current prototype included adapters for Uniswap, Aave and Balancer. Additionally, support for Set tokens is provided using Uniswap.

Ideally, DeFi777 will provide easy access to all major DeFi protocols. Moving forward, I’ll be investigating the feasibility of adaptors for PoolTogether, Compound, Chai (Maker DSR), Kyber, Synthetix, Kyber, Curve & dYdX.

If teams behind any other protocols are interested in supporting DeFi777, please reach out to me!

Smart ENS routing 🔀

ENS is an important part of DeFi777, and acts as the “user interface” for the project.

Currently, the basic public resolver is used to simply map ENS names (such as dai.uniswap777.eth) to contract addresses. However, custom ENS routers can provide additional functionality.

For example, imagine a user wants to purchase some WBTC from Balancer using ETH. When the user enters wbtc.balancer777.eth, the resolver will compare the price across the various Balancer pools (there’s 14 WETH/WBTC pools at the time of writing). It will then return an address that maps to the best pool.

Another example would be a user purchasing a Set protocol token, such as ETHBTCRSI. When the user enters ethbtcrsi.set777.eth , the resolver will compare the cost of minting ETHBTCRSI against swapping on Uniswap or Balancer.

These calculations all happen during the ENS resolution, meaning that they won’t incur any gas costs (they’ll actually save the user gas).

Advanced DeFi Actions

Currently, all actions supported by DeFi777 are simple token swaps (send 1 token, receive 1 token). This covers the most popular DeFi use cases (lending & trading), but leaves out more complex use cases such as borrowing.

These more complex actions are somewhat constrained by the “user interface” of DeFi777. Users can only take actions by sending tokens to ENS addresses, and we can only display information using token balances.

Still, it may be possible to implement these advanced actions by creating new tokens.

Imagine a user wants to open a vault on MakerDAO to borrow Dai. They can send ETH to newvault.maker777.eth. Not only will the user generate and receive Dai777, but they’ll receive a new asset representing their vault, with the token name “Vault 1548”. When the user wants to close their position, they can send their Dai777 to vault1548.maker777.eth.

Mockup of a Maker Vault opened usind DeFi777

These idea are still early concepts, the next step will be to create prototypes and test this user experience.

Cross-protocol actions

In addition to providing access to existing protocols, we can create new actions that combine multiple DeFi protocols.

The simplest example would be a simple “swap” endpoint that would act as a DEX aggregator. Using this endpoint would compare prices across various DEXs (Uniswap V1 & V2, Balancer, Kyber, Curve) and use the DEX with the best price.

Protocols can also be combined in even more complex combinations, letting users take advantage of pooling, leverage, and lending to maximize their returns.

I’ve already had discussions with Nodar from Zapper.Fi about potentially combining their existing cross-protocol actions with the simple user experience of DeFi777.

An example of a complex, cross-protocol action from DeFiZap (now Zapper.Fi). Source

Educational Resources 🎓

DeFi777 is primarily aimed at introducing DeFi to users that are new to Ethereum. This projects eases the transition from traditional cryptocurrencies like Bitcoin, since users can

To help onboard new users, I will be creating a series of videos and blog posts, showing how users can get started with DeFi in just a few simple token transfers.

Check out my YouTube channel for examples of previous content I’ve created.

Developer Resources đź› 

Not only does DeFi777 make it easier for users to access DeFi protocols, it also make it easier for developers to build on top of other protocols. I’ll work to create documentation for the various contracts, as well as tutorials showing how developers can use DeFi777 in their own contracts and dapps.

I made the comparison earlier to WETH, the ERC20 wrapper for ETH. WETH was originally created by the 0x team to use in their exchange, but has become a key piece of infrastructure and powers apps such as MakerDAO and Uniswap V2.

With the right tools and resources available, I believe DeFi777 wrappers can become key infrastructure as well.

Support the project!

Gitcoin Grants round 6 just started, please throw a Dai or two at our grant!

Also, check out the grant for my other project, the 🔥Burner Factory🏭, which has exciting features releasing soon!

Want to follow the project? Join our Telegram group.

--

--