Tools used in project¶
Backend¶
The backend is written in Python, requiring at minimum Python version 3.6.8, but is tested with 3.7 and 3.8 as well. Additionally the following libraries are used in the program development:
Frontend¶
The frontend is written as an SPA (Single Page Application), in ES6 Javascript. The frontend code is not tested for cross-compilation to ES5. The following libraries are used in writing the frontend:
Tests¶
Tests are written to be run with Pytest. The following libraries are used in writing the tests:
- tox for test automation
- cypress for UI test automation
- pytest-timeout for timing out UI tests, which can hang when failing
UI tests also require the WebDrivers for Chrome and Firefox, if tests are to be run locally.
Documentation¶
The documentation is automatically built with sphinx
Charts¶
The charts in documentation are made with Dia. The program is old
fashioned, but versatile and can be installed without adding repositories,
with the added benefit of not requiring the use of browser tools for making
the charts. Charts are located in docs/charts
, and the exported vector
graphics file is linked into the documentation image directory.