Arquitetura

Documentação da Arquitetura do Sistema P.I.T.E.R

Arquitetura do Sistema P.I.T.E.R

Arquitetura Atual

Stack Tecnológico Implementado

Frontend

  • Next.js 14 com App Router
  • React 18 com TypeScript
  • TailwindCSS para estilização
  • Atomic Design para organização de componentes
  • Custom Hooks para gerenciamento de estado

Backend

  • FastAPI com Python 3.10+
  • httpx para requisições HTTP
  • Correção automática de codificação UTF-8

Integrações Externas

  • Querido Diário API para dados oficiais
  • spaCy NLP API (planejado para análise de texto)

Diagramas C4 da Arquitetura

Sistema P.I.T.E.R - Diagrama de Contexto

Sistema P.I.T.E.R - Diagrama de Containers

Sistema P.I.T.E.R - Diagrama de Componentes Unificado


Padrões Arquiteturais

Frontend (React/Next.js)

  • Atomic Design: Organização em atoms, molecules, organisms
  • Custom Hooks: Encapsulamento de lógica de estado
  • Component-Based Architecture: Reutilização e composição
  • TypeScript: Type safety e developer experience

Backend (FastAPI)

  • API Gateway Pattern: Backend como proxy para APIs externas
  • Repository Pattern: Clientes especializados para cada API
  • Orchestrator Pattern: Coordenação de múltiplos serviços

Comunicação

  • REST API: Comunicação HTTP entre frontend e backend
  • JSON: Formato padrão de troca de dados
  • CORS: Configurado para desenvolvimento local e produção

Estrutura de Componentes

Estrutura de Diretórios

Frontend - Next.js React Application

  • app/ - Next.js App Router
  • components/ - React Components (Atomic Design)
    • atoms/ - Componentes básicos
    • molecules/ - Componentes compostos
    • organisms/ - Componentes complexos
  • hooks/ - Custom React Hooks
  • types/ - TypeScript Types
  • package.json - Frontend Dependencies
  • tailwind.config.js - Configuração TailwindCSS

Backend - FastAPI Python API

  • services/ - Business Logic & External APIs
    • api/clients/ - Clientes para APIs externas
    • integration/ - Orquestradores de integração
  • main.py - FastAPI Application
  • requirements.txt - Python Dependencies
  • venv/ - Virtual Environment

Docker

  • docker-compose.yml - Orquestração Local

Documentação atualizada em 30/09/2025. Para detalhes de implementação, consulte o código fonte e os diagramas C4.