Post

For the past year, I've been working hard on HappyView. I've built so many features, and there are now hundreds of apps built on top of it. It's been a long, winding ride, and I've loved every minute of it. #atproto

HappyProto@happyproto.at

Hi, we're HappyProto. We help you build on atproto... without the hard parts. You create the app, we'll run the backend: auth, private data, scripting, and an API over 46 million accounts. Welcome to atproto on easy mode. Join the waitlist at happyproto.at. #atproto

I realized a few months ago that HappyView users were paying to host the software on various services, but HappyView makes none of that money. Beyond that, those platforms don't offer anything special for HappyView, or for atproto users. Now I'm no mathemagician, but that doesn't add up.

Over the past month I've been building this platform to offer managed hosting for HappyView instances. But I wanted to make it so hosted HappyView makes sense, rather than Just Another Hosting Platform™.

I'll talk more over the coming weeks about why HappyProto is really special, but I'll start with just one example: instant backfill.

When you run a backfill on HappyView today, it hits the relay to find out what repos have records in a collection. Then it hits the PLC directory potentially millions of times to find the relevant PDSes. Then it hits every PDS to collect the data. It's a heavy load on the entire network.

HappyProto alleviates that entirely by keeping the entire network close to your HappyView instance. If you try to backfill Standard Site documents in HappyView today, it takes ~3 hours to get every record. On HappyProto, it takes ~30 seconds. The only bottleneck is your scripts.

0 reposts22 likes

> entire network close to your HappyView instance jetstream v2 archive? or something else (all of this is very cool/exciting btw)

Jetstream archive maybe. Right now I'm just planning to consume the entire network from the firehose. It's all getting read into a local db that gets mirrored into HappyProto instances when they backfill.

Basically, HappyProto instances share a record cache, but they can still keep their own separate copy of their modified record.

So anyway... I'm stoked. I've been busting ass to get this out the door, and I'm finally closing in on that magical day. I'll be sending out beta invites within the next couple of weeks, and hopefully opening the doors to everyone by early December.

Threw my email in and left a note with something I'm building, but a huge congrats regardless of whether I get in. 😄