KMP developer documentation

Kingdom Management Portal is a CakePHP 5.4 application with a Vite-built Stimulus/Bootstrap frontend and first-party domain plugins. Hosted KMP is a managed, database-per-tenant platform: one PostgreSQL database owns platform metadata and each kingdom has an isolated application database.

These guides describe current behavior. Source code, migrations, tests, and runtime configuration remain authoritative when a low-level detail changes. Generated PHP and JavaScript class references are rebuilt during the Pages workflow instead of being maintained by hand.

Start here

Goal Guide
Learn the system’s purpose and boundaries Introduction
Run KMP locally Getting started
Understand the system Architecture
Work safely across tenants Multi-tenant architecture
Configure the runtime Configuration
Make and verify a change Development workflow
Choose the correct test lane Testing infrastructure
Extend KMP or a plugin Extending KMP
Operate the managed platform Deployment and operations

Architecture and data

Domain and extension points

Frontend and UI

Development and quality

Operations

The standalone installer and provider-specific single-tenant quick starts are retained only where they help maintain legacy environments. They are not a supported path for new hosted tenants.

Documentation maintenance

When behavior changes, update the nearest owning guide and remove superseded instructions. Do not copy secrets, customer data, generated reports, temporary plans, or exhaustive class snapshots into this site. See docs/AGENTS.md for the documentation contract.

The for_kids material is a separate educational audience; it is not part of the developer reference.