# JaLHyd : Javascript Library For Hydraulics

## All the things to know for developping the library

The library needs nodeJS installed and the following node packages installed globally: typescript, karma, tslint. This can be done by the command line:

`npm install -g typescript`

Then, you can install the necessary packages of the library: 
`npm install`


### For compiling the typescript code

`npm run build`


### For compiling and testing the code with karma

`npm test`


### For flagging suspicious language usage

`npm run lint`


### UML visualisation

The tsviz package can be used for drawing class diagram of the current code.

For installing tsviz: `npm install -g tsviz`

There's currently a bug on debian like distribution due to a wrong declaration of graphviz path in the code: https://github.com/joaompneves/tsviz/issues/5
To work around, you can create a link to the good path: `sudo ln -s /usr/bin/dot /usr/local/bin/dot` 

For drawing the diagram: `npm run viz`