command module
Version: v0.0.0-...-97f5b14 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2019 License: GPL-3.0 Imports: 1 Imported by: 0



A tool for managing and writing ADRs for a project.

Warning: this is evolving quickly, its currently is usable in that you can init, create and render ADRs, but the code is in this 'get it working so I can use ADRs to track my thinking and make it better' so i can develop it while dogfooding the tool.

Contributions would be nice, eventually, but right now its probably not a good idea because so much changes and I'm not always in a position to push the code.

Vague Highlevel

  • The command creates the adrs as a machine readable (currently TOML, but will make that configurable, though i don't know why anyone would actually care) format.
  • This is rendred to markdown, because i'm too lazy to parse markdown to do things like update 'Status' and 'Related' fields. Much easier to manage this as toml and render.
  • Rendering is to markdowm, locations are set in config. config uses viper, and I'll document it sometime.
  • Its supposed to have a 'global' config, and a local config.
  • There will be autocomplete
  • It will make you coffee and ask about your day.

right now, it creates things in a DRAFT state, and will let you have multiple authors, multiple related, and superceeded adrs. It should update related and superceeded ones for you.

Rending to markdown is 'manual': adr render, or when creating a new ADR, pass in -R to auto render all adrs again.

It will use the EDITOR in you environment for new adrs. Or VISUAL. You have to save and close the editor for changes to be picked up.

There are status, but i haven't really implemented them and they are placeholders

TODO for Docs

actually document the behaviour and ideas. Some things are placeholder and I haven't actually thought them through

the --help text

Write, manage and list your  ADRs for a project.  For example:

initialize a new ADR directory:
        adr init docs/adrs

Add a new ADR:
        adr new Implement a Widget Factory

List the existing ADRs:
        adr list

  adr [command]

Available Commands:
  help        Help about any command
  init        initialize a new
  new         New ADR
  render      render all the ADRs to human readable format like markdown

      --config string   config file (default is $HOME/.adr.yaml)
      --dir string      where to store the adrs
  -h, --help            help for adr
      --version         version for adr

Use "adr [command] --help" for more information about a command. 


The Go Gopher

There is no documentation for this package.

Source Files


Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL