Archon Framework

Framework backend criado para padronizar a construção de APIs multi-tenant, reduzindo repetição técnica e consolidando autenticação, autorização, persistência, auditoria e infraestrutura em uma única base reutilizável.

Visão geral

O Archon Framework nasceu para resolver um problema clássico em ecossistemas internos: quando várias APIs precisam repetir os mesmos blocos de infraestrutura, a manutenção fica cara, a segurança fica inconsistente e a evolução da plataforma perde velocidade.

A proposta do framework é justamente centralizar essas decisões técnicas em uma fundação única, para que novos sistemas possam nascer com uma base já pronta de:

  • multitenancy;
  • autenticação;
  • autorização;
  • persistência;
  • auditoria;
  • paginação e contrato de resposta;
  • convenções de API;
  • integração com o restante do ecossistema.

Na prática, ele atua como plataforma-base para aplicações internas que precisam crescer com consistência arquitetural.

Como o framework funciona

O Archon foi desenhado para que a aplicação consumidora foque no domínio e nas regras de negócio, enquanto o framework assume a maior parte da infraestrutura transversal.

Resolução de tenant

O framework trabalha com um modelo de tenant por conexão. Quando uma request chega, ele resolve o tenant a partir do contexto da aplicação e preenche o TenantContext, permitindo que toda a infraestrutura subsequente use a conexão correta.

Isso significa que o framework já nasce preparado para cenários multi-tenant sem exigir que cada sistema reimplemente essa lógica.

Persistência híbrida

A base de persistência combina:

  • Entity Framework Core para escrita, domínio, tracking e fluxo transacional;
  • Dapper para leituras mais especializadas e consultas mais sensíveis a performance.

Esse modelo dá flexibilidade para usar a abordagem mais adequada em cada cenário, sem quebrar a coerência da arquitetura.

Camada HTTP padronizada

O Archon fornece uma base pronta para APIs com:

  • controllers base;
  • controllers CRUD reutilizáveis;
  • tratamento central de exceções;
  • middlewares de tenant, sessão e sincronização de usuário;
  • autenticação dinâmica;
  • autorização por convenção.

O resultado é uma API com comportamento previsível e menos duplicação entre projetos.

Estrutura da solução

O núcleo da solução está organizado em módulos com responsabilidades claras:

  • Archon.Core concentra entidades base, paginação, respostas e tipos fundamentais.
  • Archon.Application concentra contratos de tenant, autenticação, persistência e serviços base.
  • Archon.Infrastructure concentra persistência, multitenancy, integrações e implementações concretas.
  • Archon.Api concentra a camada HTTP, autenticação, autorização e middlewares do framework.
  • Archon.Testing concentra a base de testes unitários e de integração.

Essa separação torna o framework extensível e facilita o uso por aplicações diferentes dentro do mesmo padrão arquitetural.

Autenticação e autorização

O Archon foi desenhado para funcionar em conjunto com o Identity Management.

Autenticação dinâmica

Em vez de depender de uma configuração fixa por aplicação, o framework foi preparado para trabalhar com autenticação JWT baseada em client_id, consultando o contexto de contrato adequado.

Autorização por convenção

A autorização também foi pensada para reduzir acoplamento e repetição.

O framework usa convenções como:

  • RequireAccess
  • RequireRoot

Com isso, os recursos protegidos seguem um padrão lógico ligado ao controller e à action, permitindo um catálogo de permissões mais coerente em todo o ecossistema.

Auditoria automática

Um dos recursos mais fortes do Archon é a auditoria automática aplicada ao fluxo de persistência.

O que o framework registra

  • inserções;
  • atualizações;
  • exclusões;
  • propriedades alteradas;
  • usuário;
  • tenant;
  • correlação da request.

Isso reduz drasticamente a necessidade de criar mecanismos de auditoria separados em cada sistema consumidor.

Contrato padrão das APIs

O framework também define um contrato consistente para respostas HTTP.

O que isso traz na prática

  • envelope padronizado de resposta;
  • paginação consistente;
  • estrutura homogênea entre APIs diferentes;
  • alinhamento direto com consumidores frontend como o archon-ui.

Esse ponto é importante porque transforma o framework em uma base não só de backend, mas de integração coerente entre backend e frontend.

Migrations e jobs

O Archon já oferece base para:

  • migrations com FluentMigrator;
  • integração com Hangfire para processamento em background.

Isso amplia o papel do framework além da camada HTTP, ajudando também na sustentação operacional das aplicações.

Integração com o ecossistema

O Archon não foi pensado como biblioteca isolada. Ele existe para sustentar um ecossistema de aplicações.

Relação com o Identity Management

Ele se integra ao IAM para:

  • autenticação centralizada;
  • validação de sessão;
  • sincronização de acessos;
  • descoberta de segredos por client_id.

Relação com os sistemas consumidores

Projetos como:

  • Identity Management;
  • IntegrationPlataform;
  • outros sistemas do monorepo;

podem usar o Archon como base técnica comum.

Isso torna o framework uma peça estratégica da arquitetura, porque ele reduz desvio entre sistemas e acelera a evolução do ecossistema inteiro.

O que o projeto resolve

O Archon Framework resolve principalmente:

  • repetição de infraestrutura entre APIs;
  • inconsistência de autenticação e autorização;
  • dificuldade em sustentar multi-tenant de forma uniforme;
  • ausência de padrão entre respostas, paginação e controllers;
  • custo de manter auditoria e integrações transversais em cada sistema.

Diferenciais do projeto

Os diferenciais mais relevantes do framework são:

  • base multi-tenant pronta para uso;
  • persistência híbrida com EF Core e Dapper;
  • autenticação e autorização integradas ao ecossistema;
  • auditoria automática de operações críticas;
  • contrato padrão de API;
  • infraestrutura reutilizável para novos sistemas;
  • papel real como fundação arquitetural da plataforma.

Resumo executivo

O Archon Framework é a fundação backend do ecossistema. Ele foi criado para acelerar a construção de APIs multi-tenant com consistência técnica, reunindo autenticação, autorização, persistência, auditoria e convenções de API em uma única base reutilizável.

Isso faz dele um dos projetos mais estratégicos do portfólio, porque demonstra capacidade de construir não apenas aplicações, mas também a plataforma técnica que sustenta aplicações reais.