project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4

EtherMatch

A web3 dating platform where crypto enthusiasts go to find their true love!

EtherMatch

Created At

Scaling Ethereum 2024

Project Description

This project combines a nextjs front-end with a lens-protocol sdk backend. Dating apps are social networks which is why I decided to use the lens protocol. User onboarding, profile displaying, following, a lot of the things that are done on this project use the lens-protocol sdk. This project also uses lighthouse.storage and Irys for storage. Irys is used to store profile metadata before uploading to lens-protocol and lighthouse.storage is used to maintain a list of profiles that have registered to the app. Irys stores the data/files on arweave whereas lighthouse.storage stores the data on ipfs. I wanted to use both decentralized storage providers since this can potentially increase fault tolerance. This project also uses sign protocol to validate if users have met in person/online and then sets a lens profile attribute to persist this validation.

How it's Made

I initially started off this project trying to use scaffold-eth but then quickly realized it had too many features and was a bit distracting. I experimented with the lens-docs-quickstart nextjs starter kit template and found that to be the easiest to get started with. I also found the lens-protocol react-hook sdk to be easier to use then the client sdk, which is why I decided to use it. Then I used Irys and Lighthouse.storage for uploading files. Finally, I wanted a way to verify if users met each other either online or in person so I decided to use sign protocol. I store this validation in the user's lens profile and use it to filter by those who have at least met another person. This implementation with sign protocol was very smooth and, through this validation, allows an additional layer of security for users.

background image mobile

Join the mailing list

Get the latest news and updates