TL;DR: AppLauncher loads your app at startup. These four files are what actually wire it into Horilla CRM: registration.py (features + permissions), menu.py (sidebar & FAB), signals.py (cross-module events), and dashboard.py (charts). Skip registration.py and your model is invisible to global search, import, export, and workflows. In last post on AppLauncher , we saw how a Horilla CRM app declares url_prefix , auto_import_modules , and Celery schedules — then integrates without touching the root urls.py . The next question every developer asks: “What runs when AppLauncher imports registration , menu , signals , and dashboard ?” This post answers that using the Leads module ( horilla_crm/leads ) — the reference implementation for every CRM app in Horilla CRM .…