Pular para o conteúdo
☁️ QUICKSTART

Projeto no Cloud em 5 minutos.

Login, crie um projeto, copie as API keys e faça sua primeira query — passo a passo real.

O que você vai construir

Ao final deste guia você terá um projeto ativo no cloud do SuperDB com:

  • Projeto isolado com schema Postgres próprio
  • API keys copiadas e prontas
  • SDK instalado e cliente criado
  • Primeira tabela e primeira query funcionando
💡

Tempo estimado: 5–7 minutos. Sem cartão de crédito. O plano free inclui 5.000 usuários ativos, 500 MB de banco e 1 projeto.

Passo a passo

1Login e criar projeto

Acesse app.superdb.com.br/login e faça login com email e senha (ou crie uma conta grátis).

Na tela /projects, clique em + Novo projeto. Preencha apenas o nome — por exemplo, Meu Blog. O slug é gerado automaticamente: meu_blog.

Clique em Criar projeto. Em aproximadamente 1 segundo você é redirecionado para /projects/meu_blog.

bastidores (automático)
-- O SuperDB executa isso pra você:
CREATE SCHEMA proj_meu_blog;
-- + 5 tabelas de auth isoladas
-- + role dedicado com GRANTs
-- + JWT secret próprio
-- + free trial 30 dias ativado

2Copiar API Keys

No sidebar do projeto, clique no botão verde Connect (topo) ou vá em ⌨ API Keys no menu lateral.

O modal exibe:

  • URL do projeto: https://auth.superdb.com.br
  • Anon Key: JWT começando com eyJhbGc…
  • Service Role Key: mascarada por padrão — clique para revelar
⚠️

Anon Key = pública (pode ir pro browser/app). Service Role Key = secreta — nunca exponha no client. Só use em servidor (Node.js, Edge Functions, etc.).

.env.local
NEXT_PUBLIC_SUPERDB_URL=https://auth.superdb.com.br
NEXT_PUBLIC_SUPERDB_ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
SUPERDB_SERVICE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...SERVICE...

3Instalar o SDK

O SDK @superdb/client funciona em Node.js, browser, Bun e Deno. Use o gerenciador de pacotes da sua preferência:

terminal
# npm
npm install @superdb/client

# bun
bun add @superdb/client

# pnpm
pnpm add @superdb/client

4Criar o cliente

Crie o arquivo lib/superdb.ts (ou .js) na raiz do seu projeto. Este cliente é singleton — importe-o de qualquer lugar do app.

Use as variáveis de ambiente do passo 2 para conectar. O terceiro argumento { project } é obrigatório — ele define o schema do seu projeto (vira o Accept-Profile).

lib/superdb.ts
import { createClient } from '@superdb/client'

export const superdb = createClient(
  process.env.NEXT_PUBLIC_SUPERDB_URL!,
  process.env.NEXT_PUBLIC_SUPERDB_ANON_KEY!,
  { project: 'meu_blog' }
)

5Criar uma tabela

No dashboard do projeto, vá em 🗄 Banco de dados e clique em + Nova tabela, ou abra o SQL Editor e execute o SQL ao lado.

A tabela já estará disponível via API REST automaticamente — nenhuma configuração extra necessária.

SQL Editor
CREATE TABLE posts (
  id      serial PRIMARY KEY,
  title   text    NOT NULL,
  body    text,
  created_at timestamptz DEFAULT now()
);

-- Habilitar acesso público de leitura (opcional)
ALTER TABLE posts ENABLE ROW LEVEL SECURITY;
CREATE POLICY posts_public_read ON posts
  FOR SELECT USING (true);

6Primeira query

Com o SDK, os dados vêm direto de superdb.from('tabela') — mesmo estilo do supabase-js. O Accept-Profile é setado automaticamente pelo cliente a partir do { project }.

Se preferir REST cru (sem SDK), leia direto do endpoint PostgREST em https://api.superdb.com.br. O caminho é a raiz da tabela, sem prefixo /rest/v1/.

💡

No REST cru o roteamento é por header: Accept-Profile: proj_<slug> na leitura (GET) e Content-Profile: proj_<slug> na escrita (POST/PATCH/DELETE). O SDK @superdb/client cuida disso pra você.

Opção A — SDK @superdb/client (recomendado)
// app/page.tsx
import { superdb } from '@/lib/superdb'

export default async function Page() {
  const { data: posts } = await superdb
    .from('posts')
    .select('*')
    .order('created_at', { ascending: false })

  return (
    <ul>
      {posts?.map((post: any) => (
        <li key={post.id}>{post.title}</li>
      ))}
    </ul>
  )
}
Opção B — REST cru (fetch, sem SDK)
const ANON_KEY = process.env.NEXT_PUBLIC_SUPERDB_ANON_KEY!

// Leitura: host raiz + Accept-Profile (sem /rest/v1/)
const res = await fetch('https://api.superdb.com.br/posts?order=created_at.desc', {
  headers: {
    'Authorization': `Bearer ${ANON_KEY}`,
    'apikey': ANON_KEY,
    'Accept-Profile': 'proj_meu_blog',
  },
})
const posts = await res.json()

7Verificar no dashboard

Volte para app.superdb.com.br, abra seu projeto e vá em 🗄 Banco de dados. Você verá a tabela posts com as linhas inseridas.

O SQL Editor também permite explorar os dados interativamente com autocomplete.

dashboard
app.superdb.com.br/projects/meu_blog
  ├── 🗄 Banco de dados
  │     └── posts (1 registro)
  ├── ⌨ SQL Editor
  ├── 👤 Auth / Usuários
  └── 🔑 API Keys

Próximos passos

Você tem um projeto funcionando no cloud. Agora escolha seu framework:

Essa página ajudou?