Docs Menu

Understanding Bonafide

Why Bonafide?

The structural problem with how apps are built, and why we think it needs a protocol rather than a better app.

Let's start with what most people have noticed. Social apps tend to get worse over time. So do a lot of apps that start out great. A few companies end up dominating entire categories, and the alternatives never seem to reach anyone you know.

The usual explanations are about the companies. They got greedy, or they lost their way. Those explanations are sometimes true, but they don't explain why the same pattern keeps appearing across so many companies and industries. We think the underlying problem is structural.

How apps are built

The early internet was built around open protocols. Email is a good example. Anyone could run a mail server, and different email clients could communicate through the same network.

Then the web made it easy to build applications, and many of them took a different shape. A company runs a database, and everyone gets an account in it. Your profile, contacts, messages, and the rules about who can see what all belong to that application.

This isn't only a social media problem. The same basic structure appears in food delivery, ride hailing, marketplaces, and plenty of other services. Wherever one app controls the accounts and relationships, it also gets to write the rules for how everyone interacts.

What follows from it

When your data and relationships live inside an app, leaving becomes difficult. Your friends are there too, so switching to something better often means leaving them behind.

Businesses face the same problem. When most people ordering food delivery are using one or two services, a restaurant can't realistically leave, however painful the fees get. Drivers, hosts, sellers, and freelancers face similar constraints. It's everywhere.

The value of a network comes largely from who's in it, and the application controls access to that network.

What that does is end up changing the incentives. Once people and businesses can't easily leave, a company has less reason to compete on quality and more room to extract value from its position. That can mean more advertising, greater pressure to capture attention, or higher fees for businesses trying to reach customers.

It also makes life difficult for anyone trying to build something better.

There are plenty of good ideas out there: different takes on what social media could look like, a ride hailing service that takes a smaller cut from drivers, a food delivery service run by local restaurants, or a marketplace built around a particular craft.

But even a significantly better product has trouble competing when everyone is already somewhere else. The challenge isn't necessarily building something people prefer. It's getting enough of the people they want to interact with to move there too.

We end up with a few enormous competitors in each category, rather than a more dynamic market with lots of different offerings.

It should work more like coffee shops. There's room for the big chains, but they can't stop their customers from walking into the new place on the corner. Online should be even more competitive than the physical world, but in many categories it's less so.

The missing piece is interoperability.

Other work in this area

There's been renewed interest in foundational protocol work, and we think that's good. Projects like AT Protocol, ActivityPub and Solid demonstrate that people are looking for alternatives to the dominant model, but they only address part of a broader problem.

Bonafide starts from a different place. Rather than requiring a public, addressable identity, its network is built around individual connections, with fine-grained access control built into the protocol. That doesn't mean everything has to be private. Businesses, publishers, and people who want a public presence can have one too, though discovery would be done differently.

The same underlying connections and access control can also support many domains, from messaging and private sharing to marketplaces and other services. We think what's been missing is a common foundation that lets people and organizations exist and interact online across many domains, with control over their own data and connections, independent of any one app.

Why a protocol

People have been building "better apps" for a long time. But if each new app creates its own network of accounts and relationships, it eventually faces the same structural incentives as the apps it hoped to replace.

A structural problem needs a structural solution.

A protocol gives different applications a common foundation. Instead of every app owning its users' relationships, those relationships can exist independently and work across applications.

That's also why Bonafide is designed around connections rather than a single identity.

In everyday life, your relationship with a coworker is different from your relationship with a sibling. They don't automatically know one another, and you don't present yourself in exactly the same way to both.

Bonafide models relationships individually. Each connection is unique, made by mutual agreement, and controlled by the people involved. The network doesn't require one public identity linking all those relationships together.

What we're hoping for

If people can take their data and connections with them, apps lose much of their ability to compete through lock-in.

What's left is quality, price, design, speed, customer service, values, and the different preferences people have.

We'd expect that to create room for many more applications, including smaller, specialized ones. Having the largest audience would no longer be such an overwhelming competitive advantage. Someone could build a better interface, offer a different business model, or make an app for a particular kind of user, and people could choose it without having to rebuild their networks.

Developers would also have less to build from scratch. Connections, access control, and portability could come from the protocol rather than being reinvented inside each application.

And you wouldn't have to simply trust an app not to enshittify over time. If it gets worse, becomes too expensive, or adopts a business model you don't like, you could leave without losing the data and connections you've built up.

We don't know how quickly people will want this, or how many developers will build on it. The architecture took several iterations to reach where it is today. We're confident in the design, and we've built something real on it in Pools.