GithubHelp home page GithubHelp logo

adr-bootstrap's Introduction

ADR Bootstrap

Simple process for bootstraping command line tools for working with Architecture Decision Records (ADRs).

I have been a big fan of using ADRs for a long time and find myself installing adr-tools in all git repos that I end up spending any amount of time on. Being able to view the context of my decisions has been extremely useful in retrospect.

The goal of this repo is to speed up the process of adding them to a git repo along with some helpful tasks to assist with automation.

Installation

Prerequsites

The following dependencies are required;

This bootstrapping process will install a makefile which is the tool that will provide the automation.

WARNING: If your project already uses a makefile then this process will overwrite it - in that case, you will have to manually add the tasks to your makefile.

cd <new-project>
curl -L -o Makefile https://raw.githubusercontent.com/shaunmclernon/adr-bootstrap/master/Makefile
make adr

That's it! It is ready to use.

Usage

Running make by default will display the help text.

make
Architectural Decision Record (ADRs) task generator

Options:
 adr                             : Generate a new ADR index, graph and README.md
 adr-new DECISION="new decision" : Generate a new decision record
 adr-graph (optional)            : Dynamically generate the visual graph of the ADRs
 adr-readme (optional)           : Dynamically generate the ADR readme

The first time, you call any of these commands, it will initialise the folder to store this decisions, currently; doc/architecture/decisions

It will also create the first decision record which is to use ADR

See 'doc/architecture/decisions/0001-record-architecture-decisions.md' for details.

Generate ADR index and graph

make adr

View the generated doc/architecture/decisions/README.md to see the list of ADRs and the graph of these decisions.

Adding a new decision

Recording a new decision is as simple as follows. Using this wrapper approach is purely a helper so that the dates are written in British format. You can still use the adr tools as normal should you wish.

make adr-new DECISION="make first decision"

Development

This is a makefile, so all the normal rules of using make are applied. Testing is performed using bats.

bats tests

adr-bootstrap's People

Contributors

shaunmclernon avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.