Skip to content

Latest commit

 

History

History
92 lines (57 loc) · 1.81 KB

File metadata and controls

92 lines (57 loc) · 1.81 KB

ADR-[NNN]: [Decision Title]

Architecture Decision Record — Use whenever you make a significant technical choice. Examples: "PostgreSQL vs. Firebase," "Monolith vs. Microservices," "REST vs. GraphQL"


Status: Proposed | Accepted | Deprecated | Superseded
Date: [YYYY-MM-DD]
Deciders: [Names or roles involved]
Supersedes: [ADR-XXX if applicable]


Context

[What is the problem we are trying to solve? What are the constraints? What triggered this decision?]


Decision

[We will use X.]

[One clear, unambiguous statement of the choice made.]


Rationale

[Why X? What specific advantage does it give us? How does it align with our strategic goals?]


Alternatives Considered

Option A: [Name]

  • Description: [Brief explanation]
  • Pros: [What it offered]
  • Cons: [Why we rejected it]

Option B: [Name]

  • Description: [Brief explanation]
  • Pros: [What it offered]
  • Cons: [Why we rejected it]

Consequences

Positive

  • [What we gain from this decision]
  • [Another benefit]

Negative

  • [What trade-offs we accept]
  • [Constraints this creates]

Neutral

  • [Side effects that are neither good nor bad]

Implementation Implication

[Exactly how this affects the codebase—file structure, naming conventions, patterns to follow, patterns to avoid]

Affected Components:

  • [Component/Module 1]
  • [Component/Module 2]

Required Changes:

  • [Specific change needed]
  • [Another change]

References

  • [Link to relevant documentation]
  • [Link to research or benchmarks]
  • [Related ADRs: ADR-XXX, ADR-YYY]

Notes

[Any additional context, open questions, or future considerations]


Template from Stream Coding by Francesco Marinoni Moretto — CC BY 4.0