IMO anything that can't be viewed in a web browser without relying on any client-side state is destined to fail. You should be able to send people links to things. So this automatically means you can't use any p2p protocol at all for decentralized social media.