When Farcaster Clicks

What I think will grow the whole crypto pie very soon is the de-social vertical- or more precisely the Farcaster project.

From an infra perspective, Farcaster architecture makes a ton of sense to me. I particularly like the breakdown of what goes on-chain vs off-chain.

  • Infrequent actions where consistency and decentralization are important is all on-chain.

    One example is the ID layer. There is an on-chain contract (on Optimism) called the IdRegistry. Users call this contract to get a new FID (Farcaster ID)when onboarding. Every account has a unique FID secured on-chain.

    The other example is the storage. Every account has to purchase storage units to be eligible to post messages on Farcaster. The storage units are tracked via on-chain smart contracts.

  • Frequent actions where performance is important is all off-chain.

    All user messages (casts, follows etc.) are replicated and stored off-chain by all Farcaster Hubs, who run a gossip protocol between them. This is not to be confused with consensus protocols run by validators of blockchains. Farcaster Hubs sync with each other and reach eventual consistency. No single Hub has a monopolistic power over data. But the gossip protocol of Hubs isn’t designed to tolerate byzantine nodes against double-spends. Hence Farcaster is called “sufficiently decentralized”.

    We can visualize the architecture in below diagram.


    “Farcaster” is the protocol run by the hubs so each one of them can entirely replicate and store all user data.

    On the other hand, user-facing apps read/write user data to/from Hubs. The first and largest app on Farcaster is a twitter like app called “Warpcast”, but there are already many other (albeit small/single feature type) apps on Farcaster tapping into same data.

The most important takeaway here is the architecture decouples the data itself from it’s distribution. Hubs store and maintain the data. Apps decide on how they distribute it to user. This is very powerful.

It all clicked to me when I was chatting with a developer building Supercast on Farcaster, an alternative app to Warpast. Supercast has entirely different features, UI etc, from Warpcst. Yet when he followed me from his Supercast app and I was able to see this follow the action from Warpcast; an entirely different app that has nothing to do with him or Supercast.

When making a case for Farcaster, you’ll hear people praising censorship resistant apps. I think this gives an incomplete picture of the motivation behind the Farcaster project. The main thing that will move the needle for Farcaster is that it creates an environment for perfect competition between apps bc now apps can’t have monopolistic power over data.

For example, if Twitter was on Farcaster and Clubhouse came along, Clubhouse would have all the user data (aka. social graph; follows, casts etc.) from day one.

Some random dev can come along and build a Twitter v2, where everything is the same except the algorithm for the home feed is different and can be customized by users. Another Twitter v3 can add a new feature like follow-all-accounts-that-this-account-follows and see an inflow of users just bc of this. I don’t know. The bottom line is that Farcaster pushes innovation to the edges of the network where data distribution happens and massively accelerates the rate of innovation on the app side.

There is a lot of engineering work here for Farcaster to scale but I’m very much sold on the vision. Not to mention there is also a decent community in there generating interesting conversations.

In retrospect, I think it’ll look silly how all data distribution across humanity was in the hands of few humans owning these centralized social media platforms.

Leave your comment...

Hmm it’s quiet here. Be the first to comment on this post!