==================================================== kerbana - a data storage and visualization platform ==================================================== kerbana is a platform that receives data from MQTT, saves it into RRDs (Round Robin Databases) and generates and serves user-configured graphs. It is designed for ease of hosting and packaging inside distributions, and it's meant to be especially suitable for small installations with a few users. Think environmental monitoring at home, not data monitoring inside a datacenter (there are already many other versatile, if complex, solutions for that usecase). It has been written by a backend developer for backend developers and bearded sysadmins, and thus its perceived ugliness is a design and usability choice. The name comes from kerbaną_, cognate of γράφω_ .. _kerbaną: https://en.wiktionary.org/wiki/Reconstruction:Proto-Germanic/kerban%C4%85 .. _γράφω: https://en.wiktionary.org/wiki/%CE%B3%CF%81%CE%AC%CF%86%CF%89#Ancient_Greek Installation ------------ Contributing ------------ Running Tests ------------- To run the MQTT integration tests, create a file ``kerbana_tests.yaml`` in the base directory with at least the variable ``MQTT_SERVER`` pointing to a valid mqtt server you can use, then run the tests with ``KERBANA_CONFIG=kerbana_tests.yaml ./manage.py test``. The ``check`` script can be used to run the tests with the above setting and for other checks and common tasks, with the following subcommands: test run the test suite coverage run the test suite and print coverage data qa run qa checks (code style etc.) static run static analysis tests run runs the development server devdb initalizes the db and creates ad admin user (whose password needs to be set manually afterwards) License ------- Copyright (C) 2023 Elena Grandi This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see .