Blog
Latest updates, tutorials, and insights about Rebase and building on Postgres
Every check in our CI is a post-mortem, and that is the problem
A gate added after an incident only covers that incident's shape. We keep a catalogue of named bug classes instead, with the sweep that finds each one.
Atlas plans your migration in a database that cannot hold your schema
A pgvector column made atlas schema apply impossible, because Atlas plans in a scratch database. Four workarounds that failed, and the carve-out that worked.
The docs gate was green, and six of the claims were still wrong
Checking that docs name only symbols the code exports is mechanical; we do it across 2952 code fences in six languages. Checking the claims are true is harder.
Row-level security does not raise on a write it forbids
A DELETE your RLS policy rejects and one that matched nothing look identical: zero rows, no error. That silence turns a 403 into a 204.
Your backend's security should not depend on remembering to check
Rebase generates Postgres row-level security from the same definition as the API, fail-closed and in the database. Why that matters, and how to check yours.
Supabase vs Appwrite vs Firebase vs PocketBase vs Convex: choosing a backend in 2026
An honest comparison of the major backend-as-a-service platforms: databases, authorization, realtime, self-hosting and pricing, and where Rebase fits.