There has been a lot of talk recently about the reliability of Supabase and migrating away to other database providers (or even hosting Postgres yourself).
I'm a big proponent of writing actual backend code rather than locking yourself into frameworks like Supabase. If you already built all your client-side code around it though, then migrating is not a trivial task.
Replacebase is designed to help with that. It's a Typescript library that you can plug into actual backend code that exposes a Supabase-compatible API so that you don't have to make significant changes to your frontend.
It's designed to be a stepping stone for further migration, letting you switch database and storage providers and eventually move to a bespoke backend architecture without Supabase lock-in (at which point you can also remove Replacebase!)
Would love your thoughts: https://github.com/specific-dev/replacebase
coreylane•1h ago
- better-auth is amazing and made moving off supabase a lot less scary for. auth is very sticky.
- Is this offering an alternative to https://github.com/PostgREST/postgrest or a wrapper around it?
- I tried to self-host supabase/realtime recently and couldn't even get it working locally, so i migrated to postgres LISTEN/NOTIFY, which doesn't work for a lot of uses, but is perfectly fine for mine. Not sure what adoption is like of realtime, but helping people migrate off that could have value.
- Re: storage, is this only for cases when using supabase-js to access storage? In my case, I was already using AWS SDKs to access the supabase bucket so there were zero code changes.
- I kind of miss the supabase security & performance advisor, do any other postgres hosts have this feature? or is there a pg security tool I can run myself on a schedule?
fabianlindfors•1h ago
Part of this is a reimplementation of PostgREST, but as a Typescript library. The big difference is that this is designed to help you migrate away from the auto-generated and to an API that is better designed for your actual use case. That’s why this is a library so you can integrate it as part of your backend and gradually replace the PostgREST parts
The storage part is really only for Supabase-js, yeah. The idea being that folks will eventually move to a model where they integrate directly through S3 (if they want)