I've been working on API platform technologies for the better part of a decade, and I've always tried to lead teams to build:
- Spec-first consistent APIs
- Backwards compatible schema migration tools
- A platform for applications
- audits
- APIs
- Webhooks
- SSE
- Middleware for platform code
- Hooks for application code
- AuthN for multiple auth collections (users, bots, scoped)
- AuthZ DSL
Had i had the people/ funding for it, Pocketbase (but on Postgres) is exactly what I would have built. It is wild what kind of convincing it takes to build a cohesive data platform in a big company. Pocketbase is written by one (brilliant) person!
The main things I'd add are:
- Customer-controlled schema creation (a la Salesforce) with base tables / table inheritance
- Public API versioning and down-migrations (a la Stripe)
- Tenant isolation
These features could be built into Pocketbase - the system tables already serve the table inheritance use case nicely.
Go is fantastic too. I know a lot of the snappy performance comes from sqlite, but I am constantly in disbelief seeing our p90 response time around 5ms.. crazy.
Pocketbase + Litestream on [fly.io](http://fly.io) with h2c has been a really good fit for us. We're running thousands of real-time long-lived connections while running on a potato of a cloud vm. Litestream point-in-time recovery has been extremely helpful in recovery and migration scenarios.
Most importantly though, building applications on Pocketbase is **fun.**