Guia de Setup Local
Como rodar o Portal Meu Núcleo - MBL na sua maquina do zero.
Pre-requisitos
- Node.js 20+ (
node --version) - npm 10+ (
npm --version) - Git 2.40+ (
git --version) - Docker (para Supabase local, opcional)
- Supabase CLI (
supabase --version)
1. Clonar o Repositorio
git clone https://github.com/agamenor/mbles.git
cd mbles2. Instalar Dependencias
npm installIsso instala as dependencias de todos os workspaces (web, api, shared, docs).
3. Configurar Variaveis de Ambiente
# Frontend
cp apps/web/.env.example apps/web/.env.local
# Backend
cp apps/api/.env.example apps/api/.envEdite os arquivos .env com suas keys. Veja a pagina Variaveis de Ambiente para a lista completa. As keys obrigatorias sao:
- Supabase:
SUPABASE_URL,SUPABASE_ANON_KEY,SUPABASE_SERVICE_ROLE_KEY - Asaas:
ASAAS_API_KEY,ASAAS_ENVIRONMENT(usesandboxpara dev) - OpenAI:
OPENAI_API_KEY(necessario para funcionalidades de IA — chat, resumos, matching) - Resend:
RESEND_API_KEY(necessario para envio de emails — boas-vindas, rejeicao, comunicados) - VAPID:
VAPID_PUBLIC_KEY,VAPID_PRIVATE_KEY,VAPID_EMAIL(necessario para push notifications). Gere com:npx web-push generate-vapid-keys
4. Opcao A: Usar Supabase Cloud (Recomendado)
Se voce tem acesso ao projeto Supabase, basta preencher as keys nos .env e pular para o passo 5.
4. Opcao B: Supabase Local (Docker)
# Iniciar Supabase local
supabase start
# Rodar migrations
supabase db push
# Rodar seed
supabase db query --linked -f supabase/seed.sql5. Rodar o Projeto
# Rodar tudo (web + api) em paralelo
npm run devOu rodar individualmente:
# Frontend (porta 3000)
cd apps/web && npm run dev
# Backend (porta 3001)
cd apps/api && npm run dev
# Docs (porta 3002)
cd apps/docs && npm run dev6. Acessar
- Frontend:
http://localhost:3000 - API:
http://localhost:3001/api - Docs:
http://localhost:3002 - Supabase Studio (local):
http://localhost:54323
Comandos Uteis
| Comando | Descricao |
|---|---|
npm run dev | Roda web + api em paralelo |
npm run build | Build de todos os packages |
npm run format | Formata codigo com Prettier |
supabase db push | Aplica migrations no banco |
supabase db query --linked "SQL" | Executa SQL no banco remoto |