Development
# app/modules/mymodule/controller.py
from app.core import status
def my_action() -> None:
status.success("Action executed!")
def register(menu) -> None:
menu.add("My Action", my_action)
Keep controllers small and move complex logic into a local service.py file.
Put processing logic in a dedicated service module.
Use nested menus for related actions and workflows.
Read user settings from app/config.json.
Use shared libraries instead of duplicating code.
try:
result = risky_operation()
status.success(f"Done: {result}")
except Exception as exc:
status.error(f"Unexpected error: {exc}")
Prefer clear status messages over raw exceptions so the menu stays usable.
python run.py.status.* for all user feedback.