So, my next iteration for the GSoC project has begun :)
I will be mainly focusing on the implementation of the “Web of Trust” model for MetaCPAN.
For the initial Web of Trust plan, every author on metacpan.org will be able to list down his/her own set of “trusted” authors.
On the front end, this can be done by searching for the PAUSE id of the author with the help of an auto-complete box. And, this information will be stored in the API in the ‘author’ endpoint as an array which contains the PAUSE id of the trusted authors. As of now, my mentors and I are thinking of simplifying the implementation by modifying the author endpoint though, later stages may call for an implementation of a separate endpoint.
So, these trusted contacts can be displayed on a page for quick reference and each time the author updates his contacts, this page can display it accordingly. This is obviously personalized for every user. So, here we will have to retrieve the gravatar images of the trusted authors for the display and a separate HTML page will be created. After the author lists down his trusted contacts, all the distributions favorited by them will be highlighted in the author’s feed. Here, the recent ++ers can be queried to retrieve only the dists favorited by the trusted PAUSE user and can be displayed. These feeds will be highlighted on the search page.
A few future insights:
1. We could have a “Leaderboard” page which will tell us who appears in most of the trusted lists.
2. Hence, the authors will have a rank/trust value which can be displayed on the author’s page like the coderwall endorsements.
3. Also, a button can be added on the author’s page which lets you add him/her to the trusted list. This will work alongside the autocomplete search box.
The discussion for this initial implementation can be viewed here: Web of Trust for MetaCPAN
So, my work for this week will be to,
1. Get the autocomplete search feature working for saving the “trusted” authors list.
2. Displaying the LeaderBoard page.