Skip to content
This repository has been archived by the owner on Jan 11, 2022. It is now read-only.

findmypast/haar

Repository files navigation

Haar - DEPRECATED

Haar is a command line tool to help you write diagrams with plant uml and then surface and expose those diagrams to the people on your team.

In meteorology, haar is a cold sea fog. It usually occurs on the east coast of England or Scotland between April and September, when warm air passes over the cold North Sea.

npm npm

Setup

For the best experience of developing diagrams using Haar in Linux

Linux (Debian-likes)

Install Haar:

npm i -g haar

Install Graphviz to be able to generate all diagram types.

sudo apt-get remove libpathplan4
sudo apt-get install graphviz

Install Plant-UML Viewer (Atom package)

apm install plantuml-viewer

Instructions

Usage:  [options] [command]

 Commands:

   init    Initialise a new haar project
   add     Add a new diagram to an existing project or create a new project
   build   Build diagrams in project directories listed in .haar.yml
   serve   Run a local webserver to serve the diagrams

 Options:

   -h, --help     output usage information
   -V, --version  output the version number

To do

  • Init

    • Create folder structure based on a template folder
    • Create a yaml file with some defaults at the root of repo
  • Build

    • Iterate and find all puml files based on yaml config
    • Run puml files through the module for building them
    • Build high level readme's with descriptions and images for github viewing
    • Option for SVG or PNG or both
    • Delete orphaned files
    • Create 'add' command to add new diagrams to projects without manual editing of the .haar.yml file
  • Pre-Flight-Check

    • Check for locally installed dependencies (graphviz, java) and give good error messages
  • Serve

    • Simple site under Express to serve a presentation of the stuff
    • Navigation for folders of diagrams
    • Fix bug with views directory when installing globally
    • Directories metadata (i.e display name, display in web)
  • CI

    • Dockerfile
    • Usher to run tests under docker
    • Usher to publish NPM module under docker