Skip to content

ADR Packs

What ADR packs are — curated, reviewed collections of Architecture Decision Records you can import into any project — plus the difference between curated packs and community links, and how importing works.

An ADR pack is a curated collection of Architecture Decision Records bundled under a shared theme, ready to import into any project. Packs let you bootstrap governance from proven conventions instead of writing every decision from a blank page. A new project can go from ungoverned to enforcing a tested TypeScript-strictness baseline, a testing standard, and a security baseline in a few commands.

Packs are hosted in the open-source awesome-adrs registry. Each pack contains:

  • A manifest with metadata — name, version, maintainers, and tags.
  • One or more ADR documents in an adrs/ directory.
  • Optional companion rules files that enforce each decision automatically the moment you import it.

The registry distinguishes two kinds of sources:

SourceWhat it isTrust signal
Curated packsPacks reviewed and maintained by Archgate maintainersEarn a “Curated” badge; full CI on the repo
Community linksPointers to external, archgate-compatible ADR repositoriesNot maintained by Archgate; “not curated”

Curated packs live in the registry’s packs/ directory and cover common architectural concerns. The catalog spans concerns such as TypeScript strictness, testing standards, security baselines, accessibility, observability, REST API conventions, Next.js App Router patterns, and full stack-specific bundles for setups like Tauri desktop apps — and it grows as the community contributes.

Community links are a lightweight, git-native contribution model: rather than vendoring every external ADR set into the registry, the community section simply points to external repositories that follow the Archgate ADR format. They carry a distinct visual treatment so you always know a source is external and unreviewed. Importing from one uses the same flow as a curated pack — you just point at its git URL instead of a packs/... path.

Importing is a CLI operation. You can pull an entire pack, cherry-pick a single ADR, or import from any third-party repository — the CLI clones the source, copies the ADRs (and their companion rules files) into your project’s .archgate/adrs/, and remaps the IDs to fit your project’s domain prefixes so there are no collisions with what you already have. Every import is recorded in a manifest so you can track exactly where each ADR came from and when.

Conceptually, the flow is:

  1. Browse the registry to find packs that match your stack and concerns.
  2. Import a whole pack, a single ADR, or a community-linked external repo.
  3. Adapt — imported ADRs are now your ADRs; edit them with the adr-author skill to fit your project. Their rules work immediately.

Browsing packs in a terminal works, but a visual surface makes discovery and composition far easier. The Archgate platform provides an ADR builder — browse and filter packs (toggle curated-only or include community), read each pack and ADR, cherry-pick decisions into a custom set, and copy the exact import command to run locally. The platform composes and recommends; the CLI still does the actual import. This keeps the CLI fully functional offline while the platform adds visibility on top.