CONFIGURAÇÃO
Guia passo a passo para configurar o ambiente de desenvolvimento dos projetos Ai Produtor - Backend e Ai Produtor - Frontend.
Este documento reúne as instruções "Começando / Getting Started" dos READMEs do backend e do frontend e acrescenta detalhes práticos (pré-requisitos, comandos na ordem correta e instruções de execução no dia a dia) para que qualquer desenvolvedor consiga configurar o ambiente rapidamente.
🧰 PRÉ-REQUISITOS
Antes de iniciar, verifique se o seu ambiente possui as seguintes ferramentas instaladas:
- 
Node.js e npm
https://nodejs.org/
Após instalar o Node.js (versão LTS recomendada), verifique a instalação com:node -v npm -v - 
Docker e Docker Compose
https://www.docker.com/products/docker-desktop/ 
Backend — Ai Produtor
📥  Começando (Getting Started)
Siga os passos abaixo para configurar e rodar o projeto.
A aplicação inteira (API e Banco de Dados) é orquestrada com Docker, garantindo um ambiente consistente para todos os desenvolvedores.
Instalação e Primeira Execução (feita apenas uma vez)
- 
Clone o repositório:
git clone https://tools.ages.pucrs.br/ai-produtor-sistema-de-cadastro-e-gestao-de-produtores-de-hortifrutie/aiprodutor-backend.git cd aiprodutor-backend - 
Configure as variáveis de ambiente:
cp .env.example .env # macOS / Linux # PowerShell (Windows): # copy .env.example .envAs variáveis de ambiente estão disponíveis no chat designado ao backend (Discord).
 - 
Construa e inicie os containers:
docker compose up -d --build - 
Aplique as migrações do banco de dados:
npx prisma migrate devSe for a primeira vez ou se precisar recomeçar do zero,
npx prisma migrate reseté uma opção. - 
Reinicie o container da API (se necessário):
docker compose restart backend 
Como rodar no dia a dia (breve):
- Iniciar containers: 
docker compose up -d postgres - Rodar a aplicação em modo desenvolvimento: 
npm run start:dev - API: http://localhost:3000
 - Swagger (API docs): http://localhost:3000/api-docs
 
🌱  Populando o Banco de Dados (Seed)
O projeto contém um script para popular o banco com dados de exemplo (produtores, áreas, safras, etc).
Execução automática:
- O seed pode ser executado automaticamente na primeira vez que o ambiente é criado com 
docker compose up --buildou apósnpx prisma migrate reset. 
Execução manual:
# com o banco rodando
npx prisma db seed
Prisma Studio (visualização):
npx prisma studio
# e acesse http://localhost:5555/
🔄  Resetando o Banco de Dados
Se você precisar resetar o banco de dados (apagar tabelas e dados e reaplicar migrations):
npx prisma migrate reset
🖥 ️ Dicas para Windows (PowerShell)
Se o PowerShell bloquear a execução de scripts como npm/npx, execute no mesmo terminal:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
Em seguida rode npm run start:dev novamente.
Frontend — Ai Produtor
🚀  Começando (Getting Started)
Interface do usuário desenvolvida com Next.js e TypeScript, que consome a API do backend.
Instalação e Primeira Execução (feita apenas uma vez)
- 
Clone o repositório:
git clone https://tools.ages.pucrs.br/ai-produtor-sistema-de-cadastro-e-gestao-de-produtores-de-hortifrutie/aiprodutor-frontend.git cd AiProdutor-frontend - 
Configure as variáveis de ambiente:
cp .env.local.example .env.local - 
Instale as dependências:
npm install 
⚙ ️ Como Rodar o Projeto no Dia a Dia (modo desenvolvimento)
Por que dois terminais?
Durante o desenvolvimento, você precisará de dois terminais:
- Um para o backend (API + banco, via Docker)
 - Outro para o servidor de desenvolvimento do frontend
 
Fluxo recomendado
Terminal 1 — Backend e banco de dados:
# na raiz do backend
cd aiprodutor-backend
npm install
docker compose up -d postgres
npm run start:dev
Para visualizar a documentação do backend, acesse http://localhost:3000 no navegador.
Terminal 2 — Frontend:
cd AiProdutor-frontend
npm install        # se ainda não instalou
npm run dev
Acesse http://localhost:3001 no navegador.
⚙ ️ Variáveis de Ambiente (Frontend)
As variáveis de ambiente são gerenciadas através do arquivo .env.local.
- 
NEXT_PUBLIC_API_URL: URL base da API do backend (http://localhost:3000) 
📜  Scripts Disponíveis (Frontend)
- 
npm run dev— Inicia o servidor de desenvolvimento (porta 3001) - 
npm run build— Gera o build de produção - 
npm run start— Inicia o servidor de produção (requer build prévio) - 
npm run lint— Executa o ESLint para análise de código 
✅  Checklist Final
- Git instalado e configurado
 - Node instalado
 - Docker rodando
 - 
 Repositórios clonados (
backendefrontend) - 
 Arquivos 
.enve.env.localcriados - 
 Dependências instaladas (
npm install) - Banco de dados migrado / seed aplicado
 - Backend acessível em http://localhost:3000
 - Frontend acessível em http://localhost:3001