diff --git a/DESCRIPTION.rst b/DESCRIPTION.rst new file mode 100644 index 0000000..5ac7c9b --- /dev/null +++ b/DESCRIPTION.rst @@ -0,0 +1,16 @@ +This is a testing tool for one proprietary enterprise app which in turn handles aviation lights on top of the wind turbines for aviation safety. +While working on that app it is not always possible to use real devices (so called light controllers). + +Thus the purpose of this tool to help with development via simulating those devices. +Communication with controllers is built upon **MODBUS** protocol via TCP/IP. + +The name ``abibas`` is more like a joke implying that it is not real devices but the simulated ones. +The tool consists of two parts - simulator (implemented using **pyModbusTCP**) and UI interface to it for configuration and monitoring (implemented using **Flask**) + +Type ``abibas`` in terminal to run the tool after installation +Type Ctrl+C to cancel (or stop) the tool +After stopping it a table will be printed out with some stats info + +Requires **python3.10** and above + +Licensed under **GPLv3** license diff --git a/README.md b/README.md new file mode 100644 index 0000000..da5447e --- /dev/null +++ b/README.md @@ -0,0 +1,42 @@ +Purpose +======= +This is a testing tool for one proprietary enterprise app which in turn handles aviation lights on top of the wind turbines for aviation safety. +While working on that app it is not always possible to use real devices (so called light controllers). + +Thus the purpose of this tool to help with development via simulating those devices. +Communication with controllers is built upon **MODBUS** protocol via TCP/IP. + +The name ``abibas`` is more like a joke implying that it is not real devices but the simulated ones. +The tool consists of two parts - simulator (implemented using **pyModbusTCP**) and UI interface to it for configuration and monitoring (implemented using **Flask**) + +Type ``abibas`` in terminal to run the tool after installation +Type Ctrl+C to cancel (or stop) the tool +After stopping it a table will be printed out with some stats info + +Requires **python3.10** and above + +Licensed under **GPLv3** license + + +Setup & debug +============= ++ clone the repo and cd to the cloned dir ++ ``python3.11 -m venv .venv`` ++ ``source .venv/bin/activate`` ++ ``pip install build`` ++ ``python -m build`` ++ ``pip install -e .`` ++ ``pip list`` (pip show abibas, pip uninstall abibas, etc) + +At this stage the package is installed in editable mode, to run it in debug mode: + ++ ``abibas-debug`` + +or in normal mode: + ++ ``abibas`` + +If in debug mode changes made to the Flask app will be applied automatically at runtime, +for the changes in simulator though the tool has to be restarted. + +**main** module can be manipulated for debugging purposes as well diff --git a/README.rst b/README.rst deleted file mode 100644 index 44722eb..0000000 --- a/README.rst +++ /dev/null @@ -1,34 +0,0 @@ -Purpose -======= -This is a simple helper tool designed specifically for one enterprise app, -which in turn controls flashing lights on the wind turbines for aviation safety. - -This tool simulates interaction with the light controllers via MODBUS protocol over TCP/IP and additionally provides a simple UI for configuration and monitoring. -UI is built using **Flask**, simulator - using the **pyModbusTCP** package - -Requires **python3.10** and above - -Licensed under **GPLv3** license - -Setup & debug -============= -+ clone the repo and cd to the cloned dir -+ ``python3.11 -m venv .venv`` -+ ``source .venv/bin/activate`` -+ ``pip install build`` -+ ``python -m build`` -+ ``pip install -e .`` -+ ``pip list`` (pip show abibas, pip uninstall abibas, etc) - -At this stage the package is installed in editable mode, to run it in debug mode: - -+ ``abibas-debug`` - -or in normal mode: - -+ ``abibas`` - -If in debug mode changes made to the Flask app will be applied automatically at runtime, -for the changes in simulator though the tool has to be restarted. - -**main** module can be manipulated for debugging purposes as well diff --git a/pyproject.toml b/pyproject.toml index df682cb..41bdb7c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,13 +8,18 @@ authors = [ {name = "Taryel Hlontsi", email = "xhaaix@gmail.com"}, ] description = "Aviation lights simulator for Environmental Control (EC)" -readme = "README.rst" +readme = "DESCRIPTION.rst" requires-python = ">=3.10" keywords = ["simulator", "MODBUS", "EC"] license = {file = "LICENSE"} classifiers = [ - "Framework :: Flusk", + "Development Status :: 3 - Alpha", + "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", + "Intended Audience :: Developers", + "Framework :: Flask", "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.10", + "Topic :: Software Development :: Libraries :: Python Modules", ] dependencies = [ "Flask",