← Back to home

Recobee

Recobee is a use-case agnostic Recommendation-as-a-Service (RaaS) protocol layer that complements the Lens Protocol to enable personalized, social-graph based recommendations.

Screenshots

Recobee screenshot 1
Recobee screenshot 2
Recobee screenshot 3

Problem Statement

Problem: Classical Web2 platforms and social networks are in silos and typically need to bootstrap their user base and consequently their proprietary social graphs independently. As a result recommendation systems in this context are often impersonal and standardized. For example, TripAdvisor has the same recommendations for everyone, regardless of age, occupation, or background.Solution: Recobee is a Recommendation-as-a-Service (RaaS) layer between the Lens Protocol and theapplication layer. It takes the social graph as input and provides relevant ‘object’ recommendations based on the social graph.Use Cases: Notably, the recommendation engine is application-agnostic and can power arbitrary use cases from Web2 as well as Web3 such asSmart Tourist: Travel recommendations straight from your social-graphTinder 3.0: Romance without irrelevant filters and nothing in commonTalent Finder: Talent acquisition from social-graph of specific profile networksDown the Rabbit hole: Course & learning recommendations from your recent activitySPOT-ify: Music and concert discovery from your friendsBooks & Movies: Book and movie recommendations that keep you entertainedFind-a-DAO: Match governance and developer skills with to your passionsNFT-reco: No-shill recommendations on what your friends actually buyMetadvisor: Travel recommendations, but in a world where physics are defiedWithin the scope of the hackathon, the use case Metaverse Advisor (metadvisor) is implemented as a recommender system for places and activities in the Metaverse.Please find the complete pitch deck here: https://github.com/Project-Recommend-ETHAmsterdam/recobee/blob/main/ETHAmsterdam_Recobee%20vFull.pdf

Solution

Lens-Protocol Layer Module Extension: Two custom smart contract modules were written to extend the lens protocol and enable the recommender system data logic of recobee: The CuratorFeeFollowModule and RatingCollectModule. The RatingCollectModule is used to "rate" recommendation objects by users on a scale of 1-5. Objects are "Posts" with enriched meta data and users are "Profiles". The CuratorFeeFollowModule is used to implement the staking mechanism for curators if they want to add new places.Recommendation Engine: The recommendation engine was implemented as a react.js module. The implemented algorithm (1) receives the social graph as an input, (2) weights profiles that are closer in your social graph stronger and finally (3) computes a recommendation score based on the collect interaction of your social graph with the recommendation object. In the scope of the demo we deployed our own social graph with 8 profiles and 4 recommendation objects. The metadata of profiles/posts is hosted on IPFS.Metadvisor Front-End Webapp: The implemented front-end app is based on a lenster.xyz fork and implemented using react.js/next.js and typescript. The front-end interacts with the recommendation engine via function calls and with the lens protocol using a custom deployed lens hub.

Hackathon

ETHAmsterdam

2024

Contributors