Inspiration
I started working on crypto about two years ago on Celo, another blockchain. Celo had just released mainnet at the time and the DeFi ecosystem was kicked off shortly after. I quickly started experimenting, providing liquidity on an AMM, depositing on a lending platform and using other DeFi projects and found that keeping track of my funds was really difficult. Also, most of the teams focused on the protocols they were building so their UIs were really confusing to use, slow and not intuitive at all.
So the origin of Strigo was a small script I ran on my computer to track my DeFi positions. It was quickly upgraded to a website called "Celo Tracker" which I shared with friends and they loved it, so I kept going and adding features to make DeFi simple and delightful to use. For the last month during this hackathon I've been implementing a Polygon version of Celo Tracker I'm calling Strigo.
What it does
- Track your portfolio
- Swap tokens
- Provide or withdraw liquidity on some of the more popular protocols.
- Add collateral or borrow on Aave V2.
- See token list and price changes over time.
How we built it
We wrote some custom multicall contracts that fetch the user's portfolio quickly and the available farms so that they can start exploring investment opportunities and see their portfolio.
We also integrated with Sequence wallet and are taking advantage of their smart contract wallet by allowing users to batch transactions and send several of them at once to improve UX (only need to approve one tx instead of many).
We are using Firebase Cloud Functions for some of the data fetching, rainbowkit/wagmi/ethers for connecting to a wallet and sending transactions, React+Typescript for the frontend and Solidity/Hardhat for smart contract development.
Challenges we ran into
We are fetching a lot of info! Fetching it normally by only querying each protocol's contract was very slow and expensive since we had to make thousands (really) of calls. There are a lot of deployed pools on Polygon! So we started writing custom multicall contracts that reduced the number of contract calls to just a few per protocol, which makes everything much faster to load.
Accomplishments that we're proud of
We think we've build one of the best UX on crypto today to interact with DeFi. It required understanding how each of the protocols we integrated work in-depth and showing that information to users in a simple way and even though there's still much to do we've built an amazing foundation to build on top of!
What's next for Strigo
- Bridging, including gas tokens with the bridge.
- Add Uniswap V3 liquidity providing UI
- Adding more protocols such as Beefy, Balancer, QiDAO, Meshswap, KlimaDAO and more!
- Track NFTs.
- Support other networks such as Ethereum and other L2s.
Built With
- ethers
- firebase
- google-cloud
- rainbowkit
- react
- solidity
- typescript
Log in or sign up for Devpost to join the conversation.