Aside from the main program which resides in bin/ there are libraries supporting SmartHomeNG. If a library has requirements for a Python package that is not met by the standard Python installation, it has to be added to the requirements.txt file in the ../lib directory.

The description of the libraries’ functions is shown here:

The following libraries are more public. They can be used for plugin development too.