Playground & Docs
A universal database SDK that provides a 1:1 Supabase-compatible API on the frontend, but delegates to swappable backend adapters.
Use the familiar Supabase DX while targeting any backend:
@supabase/supabase-jsUser code: client.from('users').select('*').eq('status', 'active')
↓
Query Builder: Accumulates a QueryDescriptor object
↓
await / .then(): Dispatches descriptor to adapter
↓
Adapter: Translates QueryDescriptor → backend-native calls
The query builder implements PromiseLike - chained methods build up a descriptor, execution happens only on await.
import { createClient } from '@vibecode-db/client';
import { MockAdapter } from '@vibecode-db/client/adapters/mock';
const adapter = new MockAdapter();
const client = createClient('', '', { adapter });
const { data, error } = await client
.from('users')
.select('*')
.eq('status', 'active')
.limit(10);
Try the examples in the sidebar to see it in action!