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.Coreconcentra entidades base, paginação, respostas e tipos fundamentais.Archon.Applicationconcentra contratos de tenant, autenticação, persistência e serviços base.Archon.Infrastructureconcentra persistência, multitenancy, integrações e implementações concretas.Archon.Apiconcentra a camada HTTP, autenticação, autorização e middlewares do framework.Archon.Testingconcentra 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:
RequireAccessRequireRoot
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
Hangfirepara 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.