Description

If Alice collaborates with Bob on a Github repo, and Bob collaborates with Vitalik on a different github repo - Bob has Vitalik number 1, Alice has Vitalik number 2 and so on... This is inspired by Erdos number. Where scientists get assigned an erdos number 1 if they write a research paper with Erdos himself.

Vitalik Number showcase

How it's made

Github crawling to determine shortest path; Lens protocols' Profile (for user representation), Follow (to represent an edge in the graph), Post (to publish the Vitalik Number for others to see). Once this graph is created on the lens protocol, there's a n-DFS to determine how many hops you are from Vitalik. There are 2 optimisations done. On day 0 ofcourse the graph will be sparse. So, we allow the users to calculate their estimated Vitalik Number which we pull from crawling github. However, this is inefficent and time consuming because github doesn't exposes APIs that make this traversal easy. Also, we "confirm" a Vitalik Number if based on what we're able to calculate on Lens alone. The second optimization is since the compute takes a long time, we store the last calculated value by broadcasting it using a Lens Post, so that anyone can come and see the latest Post i.e. the latest Vitalik Number