Skip to content
Java based command-line tool for working with Architecture Decision Records
Java
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.adr
doc
gradle/wrapper Switch to Gradle, JUnit5, and enable IntelliJ Jan 21, 2019
launch-scripts
src
.editorconfig
.gitattributes
.gitignore
CHANGELOG.md
README.md
build.gradle
gradlew Switch to Gradle, JUnit5, and enable IntelliJ Jan 21, 2019
gradlew.bat
settings.gradle Switch to Gradle, JUnit5, and enable IntelliJ Jan 21, 2019

README.md

ADR Tools

A Java based command-line tool for working with Architecture Decision Records (ADRs).

Based on the script based tools from Nat Pryce

Quick Start

Install ADR-J tool

Use the adr command to manage ADRs. Try running adr help.

ADRs are stored in your project as Markdown files in the doc/adr directory.

  1. Create an ADR directory in the root of your project:

     adr init doc/architecture/decisions
    

    This will create the first ADR recording that you are using ADRs to record architectural decisions and linking to Michael Nygard's article on the subject.

    To use a different template to the standard, specify the path of a template:

    adr init -t ~/standards/madr.md doc/architecture/decisions
    

    A guide to writing templates can be found here.

  2. Create Architecture Decision Records

     adr new Implement as Unix shell scripts
    

    This will create a new, numbered ADR file and open it in your editor of choice (as specified by the VISUAL or EDITOR environment variable).

    To create a new ADR that supersedes a previous one (ADR 9, for example), use the -s option.

     adr new -s 9 Use Rust for performance-critical functionality
    

    This will create a new ADR file that is flagged as superseding ADR 9. It then opens the new ADR in your editor of choice.

    To create a new ADR that references another ADR, use the -l option.

    adr new -l 4:"Links to" Use JMS interface for messaging
    

    This will create a new ADR that references ADR 4 and inserts the message "Links to" in the new ADR.

  3. For further information, use the built in help:

     adr help
    

The decisions for this tool are recorded as architecture decision records in the project repository.

Compile

This project uses Gradle for compilation. Execute following command to generate build/release/adr-j.jar.

gradlew releaseJar
You can’t perform that action at this time.