From 07fc4875c9ab1091c2fdc6bff65ae3bb0a64a223 Mon Sep 17 00:00:00 2001 From: Erik Silva Date: Mon, 1 Dec 2025 01:52:27 -0300 Subject: [PATCH] docs: Add QUICK_START guide for Supabase self-hosted setup --- QUICK_START.md | 141 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 QUICK_START.md diff --git a/QUICK_START.md b/QUICK_START.md new file mode 100644 index 0000000..13d75fe --- /dev/null +++ b/QUICK_START.md @@ -0,0 +1,141 @@ +# 🚀 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.