Skip to content

Borgno/ValidaDocs

Repository files navigation

ValidaDocs

React Router Node.js TypeScript PostgreSQL Docker Redis Lucide React

O ValidaDocs é uma plataforma para processamento, validação e conciliação de documentos e planilhas em larga escala. O sistema oferece uma experiência ágil e intuitiva para a gestão e cruzamento de grandes volumes de dados.


✨ Funcionalidades Principais

  • 🔄 Conciliação de Dados: Cruzamento de planilhas com documentos, garantindo operações seguras e consistentes (UPSERT/Delete) no banco de dados através de transações do Prisma.
  • 📄 Processamento Inteligente de PDF: Módulo dedicado à leitura e extração automatizada de dados em arquivos PDF, sincronizando as informações diretamente com a interface do usuário em tempo real.
  • ⚙️ Filas Assíncronas (BullMQ): Fila de processamento em background utilizando Redis para auto-save com debounce, processamento de documentos pesados e tarefas em lote, assegurando que a interface nunca fique bloqueada.
  • 🎨 UI/UX Premium: Design imersivo usando o padrão "Mono Blue", componentes Glassmorphism (cartões translúcidos com blur), e feedback visual de estados (sucesso, erro, processando).
  • 📂 Sistema de Histórico e Lotes: Controle de lotes e histórico de arquivos importados, com opções de exclusão em massa e pré-visualização de documentos diretamente no navegador via modais interativos.
  • ☁️ Integração S3: Armazenamento resiliente e seguro de ativos documentais em nuvem.

🛠️ Tech Stack

Categoria Tecnologia
Framework React Router v7 (Framework Mode)
Ambiente Node.js / Runtime compatível
Linguagem TypeScript
Banco de Dados PostgreSQL (pg) via Prisma ORM
Background Jobs BullMQ & Redis (ioredis)
Processamento xlsx (Planilhas) / pdf-lib & pdf-parse (Documentos)
Ícones Lucide React

📂 Estrutura Arquitetural

├── app/
│   ├── components/        # Componentes UI reutilizáveis e modais
│   ├── domain/            # Lógica de domínio, regras de negócio e extratores de PDF/Excel
│   ├── routes/            # Configuração de rotas de página (Loaders/Actions da API)
│   ├── services/          # Serviços de infraestrutura, banco de dados e mensageria
│   ├── styles/            # Folhas de estilo modularizadas (Vanilla CSS - Mono Blue)
│   ├── views/             # Componentes visuais principais (Conciliacao, ComprovantesFAT)
│   ├── root.tsx           # Entrada principal da aplicação React Router v7
│   ├── routes.ts          # Registro e mapeamento de rotas da aplicação
│   └── types.ts           # Interfaces e definições de tipos TypeScript globais
├── prisma/                # Schema do banco de dados (PostgreSQL)
├── public/                # Ativos e imagens estáticas
└── Dockerfile             # Configuração para deploy conteinerizado em produção

🏁 Primeiros Passos

Instalação e Execução

  1. Instale as dependências

    npm install
  2. Inicie o Servidor de Desenvolvimento (Certifique-se de ter os contêineres do banco rodando)

    npm run dev
  3. Produção (Build)

    npm run build
    npm start

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors