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

configuracao · Changes

Page history
Update configuracao authored Oct 25, 2025 by Gustavo Borges Pasquali's avatar Gustavo Borges Pasquali
Hide whitespace changes
Inline Side-by-side
configuracao.md
View page @ c50af700
......@@ -66,107 +66,86 @@ Este documento reúne as instruções "Começando / Getting Started" dos READMEs
---
## 🧰 PRÉ-REQUISITOS
Antes de iniciar, verifique se o seu ambiente possui as seguintes ferramentas instaladas:
# Backend — Ai Produtor
* **Git**
https://git-scm.com/
## 📥 Começando (Getting Started)
* **Node.js via NVM (recomendado)**
https://github.com/nvm-sh/nvm
```bash
nvm install --lts
nvm use --lts
```
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.
* **Docker e Docker Compose**
https://www.docker.com/products/docker-desktop/
**Pré-requisitos**
---
* Git
* Docker e Docker Compose
* Node.js e npm (recomendado para executar comandos do Prisma localmente e para integração com VS Code)
# Backend — Ai Produtor
**Instalação e Primeira Execução (Feito apenas uma vez)**
## 📥 Começando (Getting Started)
1. **Clone o repositório:**
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.
```bash
git clone https://tools.ages.pucrs.br/ai-produtor-sistema-de-cadastro-e-gestao-de-produtores-de-hortifrutie/aiprodutor-backend.git
cd aiprodutor-backend
```
### Instalação e Primeira Execução (feita apenas uma vez)
2. **Configure as variáveis de ambiente:**
1. **Clone o repositório:**
```bash
git clone https://tools.ages.pucrs.br/ai-produtor-sistema-de-cadastro-e-gestao-de-produtores-de-hortifrutie/aiprodutor-backend.git
cd aiprodutor-backend
```
```bash
cp .env.example .env # macOS / Linux
# no PowerShell (Windows):
# copy .env.example .env
```
As variáveis de ambiente estão disponíveis no chat designado ao backend, no discord
2. **Configure as variáveis de ambiente:**
```bash
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:**
```bash
docker compose up -d --build
```
```bash
docker compose up -d --build
```
4. **Aplique as migrações do banco de dados:**
```bash
npx prisma migrate dev
```
> Se for a primeira vez ou se precisar recomeçar do zero, `npx prisma migrate reset` é uma opção.
```bash
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):**
```bash
docker compose restart backend
```
```bash
docker compose restart backend
```
**Como rodar no dia a dia (breve):**
* Iniciar containers: `docker compose up` (ou `docker compose up -d` para rodar em background)
* API: `http://localhost:3000`
* Swagger (API docs): `http://localhost:3000/api-docs`
* 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
---
## ⚙️ Como Rodar o Projeto no Dia a Dia (modo desenvolvimento)
**Porque dois terminais?**
Normalmente você precisa de um terminal para os serviços orquestrados pelo Docker (banco de dados, e opcionalmente backend) e outro terminal para rodar o servidor de desenvolvimento (hot-reload) do frontend e/ou backend quando você preferir desenvolver localmente em vez de dentro do container.
### Fluxo recomendado (desenvolvimento rápido)
**Terminal 1 — Banco de dados (Docker):**
```bash
# na raiz do backend
cd aiprodutor-backend
docker compose up -d postgres
```
**Terminal 2 — Backend em hot-reload (local):**
```bash
cd aiprodutor-backend
npm install # se ainda não instalou
npm run start:dev
```
## 🌱 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:**
```bash
# com o banco rodando
npx prisma db seed
```
**Prisma Studio (visualização):**
```bash
npx prisma studio
# e acesse http://localhost:5555/
......@@ -176,13 +155,13 @@ npx prisma studio
## 🔄 Resetando o Banco de Dados
Se você precisar **resetar o banco de dados** (apagar tabelas e dados e reaplicar migrations):
Se você precisar resetar o banco de dados (apagar tabelas e dados e reaplicar migrations):
```bash
npx prisma migrate reset
```
**Atenção:** usar apenas em ambientes de desenvolvimento ou testes — todos os dados serão perdidos.
⚠️ Usar apenas em ambientes de desenvolvimento ou testes — todos os dados serão perdidos.
---
......@@ -198,28 +177,118 @@ Em seguida rode `npm run start:dev` novamente.
---
## ⚠️ Problemas comuns & soluções rápidas
# 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:**
```bash
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:**
```bash
cp .env.local.example .env.local
```
3. **Instale as dependências:**
```bash
npm install
```
* **Collation Version Mismatch (Postgres):** conectar ao container e rodar `ALTER DATABASE template1 REFRESH COLLATION VERSION;` (instruções completas no README do backend).
* **Portas ocupadas:** verifique se as portas padrão (`3000`, `5432`, etc.) estão livres.
---
## ✅ Checklist final antes de começar a desenvolver
## ⚙️ Como Rodar o Projeto no Dia a Dia (modo desenvolvimento)
### Por que dois terminais?
* [ ] Git instalado e configurado (nome/email)
* [ ] Node via nvm instalado e versão LTS ativa (`nvm use --lts`)
* [ ] Docker rodando
* [ ] Repositórios clonados e `.env` copiado
* [ ] Dependências instaladas (`npm install`)
* [ ] Banco de dados migrado/seed aplicado (se for necessário)
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:**
```bash
cd aiprodutor-backend
docker compose up
```
**Terminal 2 — Frontend (Next.js):**
```bash
cd aiprodutor-frontend
npm run dev
```
Acesse http://localhost:3001 no navegador.
---
## 🔗 Repositórios
## ⚙️ 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)
---
* 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`
## 📜 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):**
```bash
# 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:**
```bash
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