Pular para o conteúdo

Packs de ADR

O que são os packs de ADR — coleções curadas e revisadas de Architecture Decision Records que você pode importar em qualquer projeto — além da diferença entre packs curados e links da comunidade, e como funciona a importação.

Um pack de ADR é uma coleção curada de Architecture Decision Records agrupados sob um tema compartilhado, pronta para importar em qualquer projeto. Os packs permitem que você inicialize a governança a partir de convenções comprovadas, em vez de escrever cada decisão a partir de uma página em branco. Um projeto novo pode passar de não governado para aplicar um baseline testado de rigor de TypeScript, um padrão de testes e um baseline de segurança em poucos comandos.

Os packs são hospedados no registro open-source awesome-adrs. Cada pack contém:

  • Um manifesto com metadados — nome, versão, mantenedores e tags.
  • Um ou mais documentos de ADR em um diretório adrs/.
  • Arquivos de regras complementares opcionais que aplicam cada decisão automaticamente no momento em que você a importa.

O registro distingue dois tipos de fontes:

FonteO que éSinal de confiança
Packs curadosPacks revisados e mantidos pelos mantenedores do ArchgateGanham um selo “Curated”; CI completa no repositório
Links da comunidadeApontadores para repositórios externos de ADR compatíveis com o ArchgateNão mantidos pelo Archgate; “not curated”

Os packs curados vivem no diretório packs/ do registro e cobrem preocupações arquiteturais comuns. O catálogo abrange preocupações como rigor de TypeScript, padrões de testes, baselines de segurança, acessibilidade, observabilidade, convenções de API REST, padrões do Next.js App Router e pacotes completos específicos de stack para configurações como apps desktop Tauri — e cresce à medida que a comunidade contribui.

Os links da comunidade são um modelo de contribuição leve e git-native: em vez de incorporar cada conjunto externo de ADR no registro, a seção da comunidade simplesmente aponta para repositórios externos que seguem o formato de ADR do Archgate. Eles carregam um tratamento visual distinto para que você sempre saiba que uma fonte é externa e não revisada. Importar de um deles usa o mesmo fluxo de um pack curado — você apenas aponta para a URL git dele, em vez de um caminho packs/....

A importação é uma operação de CLI. Você pode puxar um pack inteiro, selecionar um único ADR ou importar de qualquer repositório de terceiros — a CLI clona a fonte, copia os ADRs (e seus arquivos de regras complementares) para o .archgate/adrs/ do seu projeto e remapeia os IDs para se adequarem aos prefixos de domínio do seu projeto, de modo que não haja colisões com o que você já tem. Toda importação é registrada em um manifesto para que você possa rastrear exatamente de onde veio cada ADR e quando.

Conceitualmente, o fluxo é:

  1. Procurar no registro os packs que combinam com sua stack e suas preocupações.
  2. Importar um pack inteiro, um único ADR ou um repositório externo vinculado pela comunidade.
  3. Adaptar — os ADRs importados agora são seus ADRs; edite-os com a skill adr-author para se adequarem ao seu projeto. Suas regras funcionam imediatamente.

Procurar packs em um terminal funciona, mas uma superfície visual torna a descoberta e a composição muito mais fáceis. A plataforma Archgate fornece um construtor de ADR — procure e filtre packs (alterne para apenas curados ou inclua a comunidade), leia cada pack e ADR, selecione decisões em um conjunto personalizado e copie o comando exato de importação para rodar localmente. A plataforma compõe e recomenda; a CLI ainda faz a importação propriamente dita. Isso mantém a CLI totalmente funcional offline enquanto a plataforma adiciona visibilidade por cima.