Architecture decision records¶
Significant decisions are recorded as ADRs using the
MADR template. An ADR is never edited after acceptance; a new
ADR supersedes it instead. Number the next record sequentially and add it to mkdocs.yml.
| ID | Title | Status |
|---|---|---|
| 0001 | Native C++20 with Qt 6 Widgets | Accepted |
| 0002 | Layered libraries with a Qt-free core | Accepted |
| 0003 | CMake presets and vcpkg manifest mode | Accepted |
| 0004 | GPL-3.0 license | Accepted |
| 0005 | Unsigned distribution through free channels | Accepted; Linux formats amended by 0016 |
| 0006 | Documentation standard | Accepted; API reference replaced by 0017 |
| 0007 | Trunk-based development, Conventional Commits and automated releases | Accepted |
| 0008 | Testing strategy | Accepted |
| 0009 | Desktop shell: one main window with dock panels, tested offscreen | Accepted |
| 0010 | Map view: painted raster tiles with a disk cache | Accepted |
| 0011 | Track following and log replay as sources with a seekable transport interface | Accepted |
| 0012 | Log file format: timestamped plain-text sentences | Accepted |
| 0013 | AIS own-vessel messages encoded in core with an independent decoder in the tests | Accepted |
| 0014 | Outputs choose an encoding; every encoder lives in core and framing options in io | Accepted |
| 0015 | Release workflow: one reusable workflow, CPack on every platform, called by Release Please | Accepted |
| 0016 | Linux packages: AppImage and Flatpak; deb and rpm deferred | Accepted |
| 0017 | C++ reference generated from Doxygen XML into the MkDocs site | Accepted |
Template¶
# NNNN Title
- Status: proposed | accepted | deprecated | superseded by [NNNN](NNNN-title.md)
- Date: YYYY-MM-DD
## Context and problem statement
## Decision drivers
## Considered options
## Decision outcome
### Consequences
## More information