project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

GHO YearnV3 vault

A Yearn multi-strategy V3 vault that uses the ERC 4626 Standard to aggregate current yield sources available for GHO

GHO YearnV3 vault

Created At

LFGHO

Winner of

Aave - Vaults 2nd place

Family - Pool Prize

Prize Pool

Project Description

Our team noticed that the variety of DeFi products for GHO is very limited, so we decided to build a yield aggregator for GHO, which aggregates some of the current yield sources for GHO. We used the novel Yearn V3 architecture to make each strategy independent and at the same time composable. We have included strategies that harvest rewards from GHO stable-LPs from Curve finance and Balancer. Both strategies receive GHO from depositors, provide liquidity into Curve/Balancer stable-pools and stake the received pool token into their respective yield maximator protocols: Convex to maximize Curve yield and Aura to maximize Balancer yield. The rewards obtained are $CRV and $CVX for the Curve strategy, and $BAL and $AURA for the balancer strategy.

How it's Made

Front End : The front end is was built/mocked to be easy to use for users with a modern feel. Built using NextJS 14 to enhance performance, ease of use and development speed. For styling Tailwindcss was used for it modern themes and development speed. A further css library was used ShadcnUI, a lightwieght css library that allows you to only install the css componets you want therefore keeping the project smaller and ligthwieght, while still proviidng clean modern and interactive components. For wallet interactions and blockchain connectivity we used the Family ConnectKit npm plugin into NextJS. This allowed us to easily plugin wallet interactvitry, for both metamask, coinbase and other wallets thanks to Family ConnectKit's support of most popular connectors and chains whoch made the ui expereice much better due to the UX of the Family ConnectKit wallet popup. Finally, for further interaction with the blockchain and smart contracts, we used Ethers.js version 5.7, which is known for its stability and TypeScript-friendly environment. Ethers.js provided a comprehensive set of tools to communicate seamlessly with the Ethereum network. Its made it easier to send transactions, interact with smart contracts, and manage wallet connections as its worked well with the Family ConnectKit for getting the user address and token balance.

We use Yearn v3's tokenized strategies to implement both strategies. For the Curve strategy, we allow users to deposit GHO, use Zaps to LP into the GHO-crvUSD pool on Curve. The LP tokens are then staked to convex to further boost yield. Compounding rewards are done by swapping CRV token rewards for crvUSD in the CRV-ETH-crvUSD (TriCrv) pool. The crvUSD is then redeposited for LP tokens and staked back into Convex. We use a similar strategy for Balancer, where we LP GHO for BPT and stake into Aura for rewards. This is still a very PoC application. Much more optimization can be done in terms of gas optimization, and finding additional sources of yield. A challenge was testing these strategies. Currently there are not that many incentives using GHO on mainnet. so a lot of the testing was done by forking mainnet and modifying state manually.

background image mobile

Join the mailing list

Get the latest news and updates