Skip to content

icrcode/valida-ai

Repository files navigation

Valida AI

ETL de captação de documentos universitários com triagem e classificação utilizando arquitetura baseada em eventos.

Quality Gate Status

Valida AI é um sistema que automatiza o processamento de documentos universitários através de um pipeline ETL event-driven:

  1. Captação (Extract)

    • Recebe documentos (PDFs, imagens, etc) via upload
    • Armazena no MinIO com rastreamento
  2. Triagem e Classificação (Transform)

    • Processa documentos de forma assíncrona
    • Valida conteúdo e formato
    • Classifica automaticamente por tipo (diplomas, certificados, históricos, etc)
    • Extrai metadados e informações relevantes
  3. Armazenamento (Load)

    • Persiste dados estruturados no PostgreSQL
    • Mantém histórico de processamento
    • Permite consultas e análises

Arquitetura Event-Driven: Cada ação dispara eventos que desencadeiam processamento assíncrono através de geradores de filas, garantindo escalabilidade e rastreabilidade total.

Pré-requisitos

  • Docker e Docker Compose
  • Node.js (para desenvolvimento local)
  • npm ou yarn

Iniciar Infraestrutura

docker-compose -f docker-compose.dev.yml up -d

Isso inicia:

  • PostgreSQL 16 em localhost:5432
  • Redis em localhost:6379
  • MinIO Console em localhost:9001 (minioadmin:minioadmin)

Setup do Backend

cd backend
npm install
npm run dev

Servidor rodará em http://localhost:3000

Verificar saúde: curl http://localhost:3000/verificacao

Estrutura do Projeto

valida-ai/
├── backend/                 # API e serviços Node.js + TypeScript
│   ├── src/                # Código fonte
│   ├── dist/               # Build compilado
│   ├── package.json
│   └── README.md           # Documentação do backend
├── frontend/               # Dashboard web (a implementar)
├── infra/                  # Scripts e configurações de infraestrutura
├── docker-compose.dev.yml  # Serviços (PostgreSQL, Redis, MinIO)
├── .env.docker.example     # Variáveis Docker
└── README.md              # Este arquivo

Desenvolvimento

Backend

cd backend

# Modo desenvolvimento com hot reload
npm run dev

# Build
npm run build

# Linting e formatação
npm run lint
npm run lint:fix
npm run format

Documentação

About

Sistema de captação de documentos universitários com triagem e classificação.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors