Your Supabase. Your Server.
A Fraction of the Cost.
Supabase-compatible middleware for your own PostgreSQL.$7.59/month on Hetzner instead of $75+/project.
$ git clone https://github.com/ansoraGROUP/dupabase.git
$ cd dupabase && make up
# Hetzner CPX22 ($7.59/mo) + Dupabase = full Supabase APIEverything You Need
Zero bloat. Full Supabase compatibility. Production-ready.
Drop-in Compatible
Works with @supabase/supabase-js out of the box. Change one URL — everything works.
Single Binary
One Go binary + PostgreSQL. No microservice sprawl.
1
binary
15+
containers
Auth Built-in
GoTrue-compatible auth with JWT, signup, login, and token refresh.
REST API
PostgREST-compatible CRUD, filtering, ordering, and RPC.
Full Dashboard
Modern UI for managing projects, API keys, backups, and settings.
Multi-Tenant
Isolated databases and API keys per project.
S3 Backups
Scheduled backups to any S3-compatible storage.
Connect in 3 lines
Use the official @supabase/supabase-js client library. Just point it at your self-hosted Dupabase instance.
Auth, REST, filtering, ordering, pagination, RPC — it all works the same. Your existing code migrates with zero changes.
import { createClient } from '@supabase/supabase-js'
// Just change the URL — everything else works the same
const supabase = createClient(
'https://your-server.com',
'your-anon-key'
)
// Auth — signup, login, JWT sessions
const { data: { user } } = await supabase.auth.signUp({
email: '[email protected]',
password: 'secure-password',
})
// REST — query your tables with full filtering
const { data: todos } = await supabase
.from('todos')
.select('*')
.eq('user_id', user.id)
.order('created_at', { ascending: false })The Real Cost of Supabase
Supabase Pro + Medium compute = $75/project/month. A Hetzner VPS runs unlimited projects for $7.59.
Supabase Pro + Medium
$25 plan + $60 compute − $10 credit. Plus usage overages.
Dupabase + Hetzner CPX22
2 vCPU, 4 GB RAM, 80 GB NVMe. Unlimited projects.
At scale — Supabase is 10-40x more expensive
| RAM | Supabase/mo | Hetzner/mo | Premium |
|---|---|---|---|
| 4 GB | $75 | $7.59 | ~10x |
| 8 GB | $135 | $12.59 | ~11x |
| 16 GB | $235 | $22.59 | ~10x |
| 32 GB | $435 | $43.59 | ~10x |
| 64 GB | $985 | ~$39 | ~25x |
| 128 GB | $1,895 | ~$70 | ~27x |
Supabase = Pro $25 + compute − $10 credit, per project. Hetzner = flat rate, unlimited projects. 64+ GB from dedicated server auction.
Zero code changes
@supabase/supabase-js works unchanged. Just swap the URL.
3 envs, 1 server
Dev, staging, and production as multi-tenant projects.
BYO PostgreSQL
Bring your own database. We're just the API layer.
MIT licensed
Fork it, modify it, deploy it. No vendor lock-in.
API Compatibility
Works with @supabase/supabase-js out of the box.
| API | Status | Notes |
|---|---|---|
| Auth (GoTrue) | Supported | Signup, login, token refresh, user management |
| REST (PostgREST) | Supported | Full CRUD, filtering, ordering, pagination, RPC |
| Database | Supported | Direct PostgreSQL access, connection pooling |
| Dashboard | Supported | Full project management UI |
| Database Import | Supported | pg_dump custom & SQL format |
| S3 Backups | Supported | Scheduled backups with per-project selection, works with AWS S3, MinIO, R2 |
| Admin Panel | Supported | User management, invite system, registration control (open/invite/disabled) |
| Row Level Security | Supported | Standard PostgreSQL RLS policies |
| Storage | Planned | File/object storage |
| Realtime | Planned | WebSocket subscriptions |
| Edge Functions | Planned | Serverless functions |
Simple Architecture
No microservice sprawl. One server, one database, unlimited projects.
Client Application
@supabase/supabase-js
Dupabase Server
Single Go binary
Routes
Middleware
PostgreSQL
YOUR database (Hetzner, AWS, anywhere)
Databases
Per Project
S3 Storage
AWS / MinIO / R2
Backups
Security
Single Binary
One go build, one deploy
LRU Connection Pool
Auto-managed per project
AES-256-GCM
Encrypted credentials at rest
S3 Backup Scheduler
Automated backups to S3
Up and Running in 60 Seconds
Three steps. That's it.
Clone & point to your PostgreSQL
git clone https://github.com/ansoraGROUP/dupabase.git
cd dupabase
cp .env.example .env
# Edit .env — set DATABASE_URL to YOUR PostgreSQLStart with Docker
make build && make upOpen the dashboard
# Open http://localhost:16733
# Create a project, grab your API key, ship
# Unlimited projects on your $7.59/mo Hetzner VPSOpen Source. Always.
MIT licensed. Free forever. Built by the community, for the community.
MIT License
Use, modify, and distribute freely. No restrictions.
Community
Join discussions, report issues, suggest features.
Contribute
PRs welcome. Check the contributing guide to get started.