Architecture Decision Records
This directory contains all architecture decisions for Decksmith.
ADRs are living documents: they can be amended as the project evolves. Each ADR tracks its evolution history.
Active ADRs
| ID | Title | Status | Date |
|---|---|---|---|
| 0001 | Use Fastify as Web Framework | Active | 2026-01-03 |
| 0002 | Monorepo Structure with pnpm and Turborepo | Active | 2026-01-08 |
| 0003 | TypeScript Strict Mode Configuration | Active | 2026-01-08 |
| 0004 | Code Quality and Formatting Standards | Active | 2026-01-08 |
| 0005 | Package Boundaries and Dependency Graph | Active | 2026-01-08 |
| 0006 | Testing Strategy with Vitest and Storybook | Active | 2026-01-08 |
| 0007 | Job Queue with BullMQ and Redis | Active | 2026-01-10 |
| 0008 | Mobile-First Web Design Principles | Active | 2026-02-04 |
| 0009 | Responsive Feature Strategy | Active | 2026-02-04 |
| 0010 | Link Sharing Meta Tags | Active | 2026-02-04 |
| 0011 | File and Folder Conventions | Active | 2026-02-03 |
| 0012 | Prisma Database Package Configuration | Active | 2026-02-06 |
| 0013 | Migrate to Oxlint and Oxfmt | Active | 2026-03-15 |
How to Create a New ADR
Using Claude Code (recommended)
In VSCode, open Claude Code and use the ADR creation skill:
/adr.create
I want to document [your decision]Claude Code will guide you through the process using the template.
Manually
- Copy
template.mdto a new file:XXXX-short-title.md(use next sequential number) - Fill in all sections based on template structure
- Update this README with the new entry
- Commit with message:
docs: add ADR-XXXX [title]
How to Update an Existing ADR
In Claude Code:
/adr.update
Update ADR-XXXX: [describe the change]ADRs are living documents. Updates should:
- Preserve evolution history (add entry in "Evolution History" section)
- Update "Last Updated" date
- Change status if needed (Active → Deprecated → Superseded)
- Never delete or rewrite history
ADR Status Values
- Draft: Under discussion, not yet implemented
- Active: Current decision, implemented and in use
- Deprecated: No longer recommended, but not yet replaced
- Superseded: Replaced by a newer ADR (link to successor)