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
This is an old version of this page. You can view the most recent version or browse the 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 via NVM (recomendado)
    https://github.com/nvm-sh/nvm

    nvm install --lts
    nvm use --lts
  • 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:

cd aiprodutor-backend
docker compose up

Terminal 2 — Frontend (Next.js):

cd aiprodutor-frontend
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 (ex: 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

⚙️ Como Rodar o Projeto no Dia a Dia (modo desenvolvimento)

Por que dois terminais?

São necessários dois terminais, um para rodar o Backend e outro para rodar o Frontend.

Fluxo recomendado (desenvolvimento rápido)

Terminal 1 — Backend em hot-reload (local):

# 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, entrar em http://localhost:3000

Terminal 2 — Frontend:

cd AiProdutor-frontend
npm install        # se ainda não instalou
npm run dev

Para visualizar o frontend, entrar em http://localhost:3001


✅ Checklist Final

  • Git instalado e configurado
  • Node via nvm (nvm use --lts)
  • 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 (opcional)
  • 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