Liking RSS Items

While RSS.chat mostly solves the issue of comments (at least read-only), it does not really solve the issue of liking in a distributed system - it depends on a central server. So either there is still a centralized system, assuming everybody would use the same likes server, or every feed has a different server and you need to authorize with them before you can like something. And even that does not do a good job preventing like-spam.

My solution for liking is different:

  • every feed still needs a like-server, but in order to like, you don't need to log into them. The like-server must implement the webmention protocol.
  • every user maintains a JSON feed of their likes - for all their sites. If you like something, add the like to your OWN RSS like feed, at a fixed, permanent URL, and use webmention to notify the site of your like.
  • when an article is being liked, the site's like-server publishes the like in its own JSON feed which contains a list of all the likes it got with their permanent URL.

This system makes sure that every like can be validated and allows you to detect cheaters. Clients should validate at least one like before accepting the like count and showing it.

Users can only like once per hostname. By default, the like server must only accept one like per second-level domain, to avoid someone creating dynamic domain names to add an infinite number of likes. Only whitelisted domains can like with subdomains. This should limit the ability to cheat.

And if like-cheating is getting out of hand, there could be a validator service that requires additional proof from likers the first time they like something. But that would be a later step.