adr-tools is a set of command-line tools by Nat Pryce that allows people in software projects to record their design decisions, as they go along, a bit like the captain’s log on the Enterprise. (Much more on such log entries at this wiki for trekkers.) You type adr new Use Postgres
, and it creates a formatted Markdown file, with headings in place, ready for you to fill out, fleshing out your reasoning for the decision.
Computer book author Michael T. Nygard explains ADR in much more detail in this 2011 blog post. (Book tip: Release It! Nine years old, now. It’s about the things you have in production.)
That library, I had the good fortune to be able to make a Homebrew package (a tap, in the parlance) for it, making installation of the tool a one-liner. This is such a package: homebrew-adr-tools. That’s all there’s to it, just a homebrew-
prefixed GitHub repository with that file in it.
I tried adding a feature to the tool, which led me to its outout-expectation-based test suite with its attendant Makefile. Pretty decent experience using them!