Self-hosted Supabase as lightweight CMS for static site (Tiny server vs VPS)

Question: I’m building a company website for my dad and want to validate if this flow is possible with Supabase + Next.js + Netlify, and whether I should self-host Supabase (Lenovo Tiny at home) or run it on a VPS for reliability. Use case: The site is fully static on Netlify. Supabase is only used as a lightweight CMS so my dad can edit texts via an /admin page (visual interface), instead of touching code. Visitors never hit the DB directly β€” they only see static HTML.
## πŸ“ Text Management
- Admin route `/admin/home` with textarea(s) for editing texts
β†’ Only accessible for my dad (auth)
β†’ On load: 1x read call to Supabase to show current values

- Save functionality
β†’ On save: 1x write call to Supabase (update row)
β†’ Then trigger Netlify build hook

- Netlify build
β†’ Starts automatically after save
β†’ Next.js `getStaticProps` fetches the latest texts from Supabase
β†’ Texts get embedded in the static HTML (no runtime DB calls)

- Test flow
β†’ Change text in `/admin`
β†’ Build hook triggers β†’ Netlify rebuild
β†’ New version of the site goes live with the updated texts
## πŸ“ Text Management
- Admin route `/admin/home` with textarea(s) for editing texts
β†’ Only accessible for my dad (auth)
β†’ On load: 1x read call to Supabase to show current values

- Save functionality
β†’ On save: 1x write call to Supabase (update row)
β†’ Then trigger Netlify build hook

- Netlify build
β†’ Starts automatically after save
β†’ Next.js `getStaticProps` fetches the latest texts from Supabase
β†’ Texts get embedded in the static HTML (no runtime DB calls)

- Test flow
β†’ Change text in `/admin`
β†’ Build hook triggers β†’ Netlify rebuild
β†’ New version of the site goes live with the updated texts
Environment: β€’ OS: Ubuntu (self-hosted on Lenovo Tiny) β€’ OS: Ubuntu (VPS) β€’ Framework: Next.js (latest) β€’ Hosting: Netlify (static build) Questions: 1. Is this approach technically possible with Supabase + Netlify using getStaticProps during build? 2. Would you recommend self-hosting Supabase on my Tiny server (lower cost, full control) or running it on a VPS for more reliability/uptime? Thanks πŸ™
4 Replies
Floppy Disk
Floppy Diskβ€’2mo ago
Check if Payload CMS meets your requirements. It can integrate with Supabase, whether self-hosted or not. The downside is that you won't be rebuilding your NextJS as for requirements but you can just set long cache time or whatsoever
DancingDonut πŸ‘ΏπŸ”›πŸ”
Thanks for the suggestion! πŸ™ Payload looks cool, but in my case I actually want the rebuilds. The whole point is that all site visitors only ever see static HTML, with zero runtime DB calls. That’s why I’m leaning towards Supabase + Netlify build hook + getStaticProps β†’ so every text change triggers a rebuild and gets baked directly into the static pages. So for my use case, caching at runtime wouldn’t really solve it β€” I specifically want the β€œupdate β†’ rebuild β†’ new static site” flow.
Floppy Disk
Floppy Diskβ€’2mo ago
https://payloadcms.com/community-help/discord/redeploy-trigger I can see that it was once a feature, I guess you would need to host payload and nextjs as two different projects and use redirects to access admin panel from your domain. Then rebuild your nextjs application by firing a command yourself I think I love both Payload and Supabase, your specific use case might not need payload but from my experience its very feature rich tool which allows you to do many things that with your solution (building custom admin dashboard as supabase route) won't be easy
DancingDonut πŸ‘ΏπŸ”›πŸ”
Thanks for clarifying πŸ™ Makes sense that Payload has a lot of built-in features, but for my use case I actually don’t need a full CMS. It’s just one authenticated admin (my dad) editing a handful of texts, and I actually prefer building a small custom /admin page on top of Supabase. Combined with a Netlify build hook + getStaticProps, that already gives me the β€œupdate β†’ rebuild β†’ static site” flow I want. So I think Supabase is the simpler and lighter fit here β€” no need for a full CMS stack. anyone else an idea???

Did you find this page helpful?