Pular para conteúdo

Especificação Técnica

Objetivo

Definir os padrões técnicos oficiais para implementação do CoreFlow CRM.

Este documento serve como referência para desenvolvimento, revisão de código, automação por IA e evolução do produto.


Stack Oficial

Backend

  • Python 3.12+
  • Django 5+
  • Django REST Framework
  • Celery
  • Redis

Banco de Dados

  • PostgreSQL 16+

Frontend

  • React
  • Next.js
  • TypeScript
  • Tailwind CSS

Infraestrutura

  • Docker
  • Docker Compose
  • Nginx
  • GitHub Actions

Arquitetura

O projeto segue:

  • Clean Architecture
  • DDD
  • SOLID
  • API First
  • Event Driven
  • AI First Documentation

Organização

crm/

application/

domain/

infrastructure/

presentation/

Backend

Cada módulo deverá possuir:

  • Models
  • Services
  • Repositories
  • Serializers
  • Views
  • URLs
  • Permissions
  • Validators
  • Tests

API REST

Padrões:

  • JSON
  • UTF-8
  • HTTPS
  • JWT
  • OpenAPI

Versionamento

/api/v1/

Identificadores

Todos os registros utilizarão:

  • UUID

Nunca utilizar ID sequencial nas APIs públicas.


Datas

Sempre utilizar:

  • UTC

Formato:

ISO-8601

Soft Delete

Obrigatório.

Campos:

  • deleted_at
  • deleted_by

Auditoria

Obrigatória.

Campos mínimos:

  • created_at
  • updated_at
  • created_by
  • updated_by

Multiempresa

Todas as entidades deverão possuir:

company_id

Toda consulta deverá respeitar o tenant ativo.


Segurança

Obrigatório:

  • JWT
  • RBAC
  • HTTPS
  • Auditoria
  • LGPD

Cache

Redis será utilizado para:

  • Sessões
  • Cache
  • Filas
  • Rate Limit

Arquivos

Uploads utilizando serviço centralizado do Core.

Não armazenar arquivos diretamente no módulo CRM.


Eventos

Publicar apenas Domain Events.

Nunca disparar integrações diretamente pela camada de apresentação.


Logs

Registrar:

  • Erros
  • Auditoria
  • Eventos
  • Integrações

Testes

Obrigatórios:

  • Unitários
  • Integração
  • API
  • Permissões

Qualidade

Ferramentas:

  • Ruff
  • Black
  • Pytest
  • Coverage
  • mypy

Performance

Objetivos:

  • APIs < 300 ms
  • Paginação obrigatória
  • Lazy Loading
  • Índices adequados
  • Consultas otimizadas

Convenções

Seguir integralmente os Standards da HauxTech Engineering Portal.

Não criar exceções locais.


Compatibilidade

O CRM deverá integrar-se nativamente com:

  • Core
  • ERP
  • Finance
  • RH
  • BI
  • AI

Objetivo Final

Estabelecer uma base técnica consistente, escalável e padronizada para implementação e evolução contínua do CoreFlow CRM.