We aim to get these to parity with each other, excepting some billing/server management features.
A big shout out to Sentry who do served as a good model for us (https://develop.sentry.dev/sentry-vs-getsentry/)
We have a similar split, and currently use lerna to publish a collection of individual packages that get imported and extended on the other side.
1. Hide sensitive code behind an API
2. Open source everything else (regardless of Platform/Self-Hosted
3. Use env vars and feature flags to determine what is visually displayed
The docker-compose for self-hosted is the same stack as every project on the Platform which helps.Would love to know your use-case, or why you'd prefer Supabase as a Function provider over one of the existing players? It's helpful for us to design the system around any weaknesses/difficulties you're facing
we're currently on AWS so it's a bit hard for us to price lower, at least until we go multi-cloud
I went with Hetzner instead, and I manage my servers by myself. I have been looking for providers in case that things do get serious with the project, as I do not have the experience in system administration, but I could not find any good offerings with reasonable egress rates, as the project does transfer large amounts of data.
And still point customers to a competitors... https://firebase.google.com/docs/firestore/solutions/search
This announcement doesn’t really matter to me since I really like having a hosted service. But it’s good to know it’s future proof - ie if Supabase go out of business or a project takes off and I want to self host with all the good stuff then I can.
Until you dig into the code base and realise that self-hosting isn't something that is sustainable, at all, the minute you need a bug fixed, or run into a limitation, without the original authors or solution partners around to support your specific installation.
Most proprietary software shops tend to have business continuity clauses and solution partners. So, on-paper, one could self-host those too in case their business goes under.
I'm assuming it's because of the db. Any advice / guide on setting that up?