Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • aiprodutor-wiki aiprodutor-wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Ai Produtor Sistema de Cadastro e Gestao de Produtores de Hortifrutie
  • aiprodutor-wikiaiprodutor-wiki
  • Wiki
  • configuracao

Last edited by Gustavo Borges Pasquali Oct 25, 2025
Page history

configuracao

Home

Escopo

Arquitetura

Configuração

Mockups

BD

Gerência

Qualidade

Processo

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:

  • Git
    https://git-scm.com/

  • 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)

  1. 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
  2. Configure as variáveis de ambiente:

    cp .env.example .env    # macOS / Linux
    # PowerShell (Windows):
    # copy .env.example .env

    As variáveis de ambiente estão disponíveis no chat designado ao backend (Discord).

  3. Construa e inicie os containers:

    docker compose up -d --build
  4. Aplique as migrações do banco de dados:

    npx prisma migrate dev

    Se for a primeira vez ou se precisar recomeçar do zero, npx prisma migrate reset é uma opção.

  5. 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 --build ou após npx 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

⚠️ Usar apenas em ambientes de desenvolvimento ou testes — todos os dados serão perdidos.


🖥️ 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)

  1. 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
  2. Configure as variáveis de ambiente:

    cp .env.local.example .env.local
  3. 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 (backend e frontend)
  • Arquivos .env e .env.local criados
  • 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

🔗 Repositórios

  • Backend: https://tools.ages.pucrs.br/ai-produtor-sistema-de-cadastro-e-gestao-de-produtores-de-hortifrutie/aiprodutor-backend.git
  • Frontend: https://tools.ages.pucrs.br/ai-produtor-sistema-de-cadastro-e-gestao-de-produtores-de-hortifrutie/aiprodutor-frontend.git
Clone repository

📚 Wiki

🏠 Home 🔸Descrição do Projeto
🔸Sumário
🔸Equipe
📋 Escopo
🏗️ Arquitetura
🛠️ Configuração
🎨 Mockups
🗄️ Banco de Dados
📊 Gerência 🔸Termo de abertura do projeto
🔸Estrutura analítica de projeto (EAP)
🔸Cronograma
🔸Plano de comunicação
🔸Matriz de responsabilidades
🔸Plano de riscos
✅ Qualidade
🔄 Processo 🔸Papeis
🔸Sprints
🔸Apresentações
🔸Artefatos
🔸Acompanhamento das Entregas