The AppDaemon runs your application (your product software) at system boot. If your application crashes or hangs, the daemon will automatically reboot the system.
The "AppDaemon" application also monitors a GPIO button. When pressed, the system will stop running your application and switch to Access Point mode. It will broadcast an access point with the name of the system, when connected to that AP the user is presented with a configuration panel to set system parameters such as their home WiFi and password.
When the user saves the configuration, the system will reboot and continue your product application.
The AppDaemon is given an application to run, and will monitor that application for correct execution. If the application crashes, hangs, or exits the AppDaemon reboot the system and rerun the application.
The intent is for a high-reliability system where one process is doing something which might hang, crash, or otherwise become a problem. When a problem with the application is detected, this daemon will reboot and presumably clear the error.
(This program was originally made to monitor cell modem applications, where the cell modem can crash or hang or be unusable for myriad reasons, and sometimes even detecting that a problem exists is impossible.)
Installation instructions are in the file "INSTALL.md" supplied with the project.