142 lines
3.1 KiB
Markdown
142 lines
3.1 KiB
Markdown
# 🚀 Quick Setup - Seu Projeto com Supabase Self-Hosted
|
|
|
|
## 📋 TL;DR - Setup Rápido
|
|
|
|
Você está usando: **`https://supabase.stackbackup.cloud/`** (Supabase Self-Hosted)
|
|
|
|
### Passo 1: Copie suas Chaves API
|
|
|
|
1. Acesse: `https://supabase.stackbackup.cloud/`
|
|
2. Selecione seu projeto
|
|
3. Vá para: **Settings** → **API**
|
|
4. Copie:
|
|
- `Project URL` → `SUPABASE_URL`
|
|
- `anon public` → `SUPABASE_ANON_KEY` (público)
|
|
- `service_role secret` → `SUPABASE_SERVICE_KEY` (secreto)
|
|
|
|
### Passo 2: Configure Backend
|
|
|
|
```bash
|
|
cd backend-api
|
|
cp .env.example .env
|
|
```
|
|
|
|
**Edite `backend-api/.env`**:
|
|
```dotenv
|
|
SUPABASE_URL=https://supabase.stackbackup.cloud
|
|
SUPABASE_ANON_KEY=paste_your_anon_key_here
|
|
SUPABASE_SERVICE_KEY=paste_your_service_key_here
|
|
JWT_SECRET=sua_chave_secreta_com_minimo_32_caracteres
|
|
JWT_EXPIRATION=7d
|
|
NODE_ENV=development
|
|
PORT=3000
|
|
API_PREFIX=/api
|
|
CORS_ORIGIN=http://localhost:3000,http://localhost:3001
|
|
```
|
|
|
|
### Passo 3: Configure Frontend
|
|
|
|
```bash
|
|
cd frontend-next
|
|
cp .env.example .env.local
|
|
```
|
|
|
|
**Edite `frontend-next/.env.local`**:
|
|
```dotenv
|
|
NEXT_PUBLIC_API_URL=http://localhost:3000/api
|
|
NEXT_PUBLIC_API_TIMEOUT=10000
|
|
NEXT_PUBLIC_SUPABASE_URL=https://supabase.stackbackup.cloud
|
|
NEXT_PUBLIC_SUPABASE_ANON_KEY=paste_your_anon_key_here
|
|
NEXT_PUBLIC_APP_NAME=Task Manager
|
|
NEXT_PUBLIC_APP_VERSION=1.0.0
|
|
```
|
|
|
|
### Passo 4: Executar o RLS SQL Script
|
|
|
|
1. Acesse: `https://supabase.stackbackup.cloud/`
|
|
2. Vá para: **SQL Editor**
|
|
3. Crie uma nova query
|
|
4. Cole todo o conteúdo de: `backend-api/SQL_TASKS_TABLE_RLS.sql`
|
|
5. Clique em **Run**
|
|
|
|
✅ Se não houver erro em vermelho, pronto!
|
|
|
|
### Passo 5: Teste Localmente
|
|
|
|
**Terminal 1 - Backend**:
|
|
```bash
|
|
cd backend-api
|
|
npm run start:dev
|
|
# Deve mostrar: Listening on port 3000
|
|
```
|
|
|
|
**Terminal 2 - Frontend**:
|
|
```bash
|
|
cd frontend-next
|
|
npm run dev
|
|
# Deve mostrar: ▲ Next.js 16 ready
|
|
```
|
|
|
|
**Acesse**: `http://localhost:3000`
|
|
|
|
---
|
|
|
|
## ✅ Checklist Final
|
|
|
|
- [ ] **Chaves copiadas** do Supabase
|
|
- [ ] **Backend `.env`** configurado
|
|
- [ ] **Frontend `.env.local`** configurado
|
|
- [ ] **SQL de RLS** executado no Supabase
|
|
- [ ] **Backend rodando** (http://localhost:3000)
|
|
- [ ] **Frontend rodando** (http://localhost:3000 no navegador)
|
|
- [ ] **Conseguiu fazer login**
|
|
- [ ] **Conseguiu criar uma tarefa**
|
|
|
|
---
|
|
|
|
## 🔗 Links Importantes
|
|
|
|
- **Seu Supabase**: https://supabase.stackbackup.cloud/
|
|
- **Guia Completo**: Ver `SUPABASE_SELFHOSTED_SETUP.md`
|
|
- **API Documentation**: Ver `backend-api/API.md`
|
|
- **Docker Setup**: Ver `DOCKER_SETUP_GUIDE.md`
|
|
|
|
---
|
|
|
|
## 🆘 Erros Comuns
|
|
|
|
### ❌ "Cannot find module '@supabase/supabase-js'"
|
|
|
|
```bash
|
|
cd backend-api
|
|
npm install
|
|
```
|
|
|
|
### ❌ "Invalid API key"
|
|
|
|
1. Copiar novamente do Supabase (Settings → API)
|
|
2. Certifique-se sem espaços extras
|
|
3. Reiniciar backend
|
|
|
|
### ❌ "CORS error"
|
|
|
|
Verificar se o `CORS_ORIGIN` no backend (.env) inclui `http://localhost:3000`
|
|
|
|
### ❌ "401 Unauthorized"
|
|
|
|
Seu JWT_SECRET pode estar incorreto. Gere um novo:
|
|
|
|
```bash
|
|
# Linux/Mac
|
|
openssl rand -base64 32
|
|
|
|
# Windows PowerShell
|
|
[Convert]::ToBase64String((1..32|ForEach-Object{[byte](Get-Random -Max 256)}))
|
|
```
|
|
|
|
---
|
|
|
|
**Você está pronto! 🎉**
|
|
|
|
Se tiver dúvidas, consulte `SUPABASE_SELFHOSTED_SETUP.md` para mais detalhes.
|