Crypto has a problem, everything is complicated. Technologies we've used for years and have overtime grown to be comfortable with are intimidating for new users. StakingRewards is a step towards making DeFi more accessible by making it simple
My experience in crypto is not as a developer, in fact i only wrote my first JavaScript program 4 months ago. My background for the last 4 years has been in consulting/advising with primarily non-institutional investors who, whilst having 6 even 7 figure portfolios, have no real experience using the DeFi products that they're investing in. (They may hold a large position of $AAVE, but never taken advantage of the lending opportunities on platform itself.)
After hours spend talking to thousands of investors, i can boil down the reason for this lack of engagement to three main problems:
With StakingReward, we reimagined the process that a user will go through in order to stake their tokens, whilst ensuring the best APYs, to make it as fast and simple as possible:
The user can paste in or connect their wallet through Dynamic.
We then collect that users token holdings and find the best staking / lending opportunities across a range of hand select staking platforms
We show the user how much they could be making per year, in USD, if they were to stake their tokens today.
We provide the next steps, directing the user to an appropriate bridge, configured to take them in the direction of the yield. Then to the platforms with the highest APY's so they can stake / lend their tokens.
Staking Rewards tackles the three problems that i find investors are consistently met with when using DeFi products by:
Using an outcome-first strategy to show the user the motivation behind learning how to use these products, showing them what they stand to earn in the form of the annual yield. Now they have a reason to learn how to lend on AAVE, or convert their ETH into stETH on Lido.
Simplifying the process by filtering the best opportunities, the hurdle to start staking is much smaller when there are less factors to consider. We have to make some executive decisions on behalf of the user here, we do make some assumptions about the type of products we believe they would prefer to use. For example, we only search for yield on high-trust lending platforms (AAVE, Compound, FraxLend, Lido), we avoid any lending solutions with additional external risk (Uniswap, with impermanent loss)
We putting the APY second, and the ADR (Annual Dollar Return) first. Although this difference may seem insignificant, we've found a clear uptick in interest in the product when seeing the ADR instead of the APU.
As a consumer product, we've also made StakingRewards mobile friendly. I've numerous surveys targeting new crypto users and the majority of them are interacting with Crypto in all capacities through mobile, i think this is massively overlooked as most new DeFi products have a subpar mobile experience. Something as simple as making buttons bigger, and text smaller to fit the thinner screen size can make all the difference in improving mobile user experience.
StakingRewards frontend is build with React, Nextjs and Tailwind.
We've used a range of libraries to collect the users portfolio data, for example Dynamic enabled us to easily implement a connect wallet feature. Their SDK contains multiple React UI Components that let us try multiple different styles and formats before we decided on an embedded connect wallet component that the user activates at a click of a button.
To get user wallet holdings across a range of chains we are using Alchemy API
To get lending APYs & token prices we are using DeFillama and CoinGecko APIs. The data from these APIs was accurate as of Sunday morning, November 17th but may be inaccurate as of when you're reading this.
Backend github (seperate repo): https://github.com/salemalem/yields-backend
Figma File: https://www.figma.com/design/PGYzKHvrga219fI2beLGY6/staking-rewards?m=auto&t=tjBi1tvqRnA7CN2h-6