Skip to content

Commit 91704b5

Browse files
authored
docs: Add ADR template (#291)
1 parent 1e45c74 commit 91704b5

File tree

1 file changed

+74
-0
lines changed

1 file changed

+74
-0
lines changed

docs/adr/adr-template.md

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# ADR template
2+
3+
This is the base template that we use
4+
5+
```
6+
# ADR [Number]: [Title of Decision]
7+
8+
## Status
9+
[Proposed | Accepted | Deprecated | Superseded by ADR [number]]
10+
11+
## Submitters
12+
[List of people who proposed this decision. Include GitHub usernames or names with contact information if needed.]
13+
- @username1
14+
- @username2
15+
16+
## Decision Owners
17+
[List of people responsible for driving the decision and following up on its implementation. This may include teams or subject matter experts.]
18+
- @owner1
19+
- @team1
20+
21+
## Context
22+
Describe the problem, need, or feature request that prompted this decision. Include any relevant background information, constraints, and considerations that were taken into account.
23+
24+
- **Why do we need this decision?**
25+
- **What problem does it solve or avoid?**
26+
- **Are there any existing issues/discussions/pull requests related to this?** (Include links to relevant GitHub issues, forum threads, or discussion channels.)
27+
28+
## Decision
29+
Clearly state the decision that was made. Describe the chosen solution or approach in detail so that others can understand what was decided.
30+
31+
- **What will be done?**
32+
- **What will not be done?** (If applicable, specify what was explicitly ruled out.)
33+
34+
## Rationale
35+
Explain why this decision was made, including a discussion of the alternatives considered and why they were not chosen.
36+
37+
- **Alternatives Considered:**
38+
- Alternative 1: [Description and reasons for rejection]
39+
- Alternative 2: [Description and reasons for rejection]
40+
- **Pros and Cons**: Outline the pros and cons of the chosen solution.
41+
- **Why is this decision the best option?** (Explain the key factors that influenced this choice.)
42+
43+
## Consequences
44+
Describe the positive and negative outcomes of the decision, including any potential risks or technical debt.
45+
46+
- **Positive Impact**: What benefits does this decision bring to the project?
47+
- **Negative Impact**: What challenges or limitations does this introduce?
48+
- **Mitigations**: How will we address potential drawbacks or issues?
49+
50+
## Implementation
51+
(Optional, if relevant)
52+
Outline the steps required to implement the decision. This section is particularly useful if the decision involves a series of actions or a roadmap.
53+
54+
- **Phase 1**: [Description]
55+
- **Phase 2**: [Description]
56+
- **Estimated Effort**: Provide a rough estimate of time or effort needed.
57+
58+
## References
59+
Include any external links, documents, discussions, or research that were referenced during the decision-making process.
60+
61+
- [Link to relevant GitHub issue or pull request](#)
62+
- [Link to forum discussion](#)
63+
- [Documentation or research sources](#)
64+
65+
66+
## Changelog
67+
Track changes or updates to this ADR over time. Include the date, author, and a brief description of each change.
68+
69+
- **[YYYY-MM-DD]**: [@username] - [Brief description of the change]
70+
- Example: **[2024-10-22]**: @owner1 - Updated the decision to include support for Redis caching.
71+
- **[YYYY-MM-DD]**: [@username] - [Brief description of the change]
72+
- Example: **[2025-01-15]**: @username2 - Deprecated this ADR due to a shift in the database strategy.
73+
74+
```

0 commit comments

Comments
 (0)