Project families
Every repository MIDDAG ships belongs to a named family. The family determines naming conventions, shared CI/CD pipelines, branching rules, and release strategy.
| Family | What it ships |
|---|---|
| Moodle plugin | Plugins distributed through our internal package registry and, where applicable, upstream. |
| WordPress plugin | Custom WordPress plugins, often product-specific. |
| WordPress theme | Custom WordPress themes, often paired with a plugin. |
| PHP package | Reusable PHP libraries published through our internal package registry. |
| Edge application | End-user applications running on a modern edge runtime. |
| Containerized stack | Full project stacks bundled as reproducible artifacts (Moodle sites, WordPress sites, ...). |
| Infrastructure | Shared internal services that other repositories depend on to build, deploy, or operate. |
Families are not arbitrary. Each one maps to a curated set of shared pipelines, a documented bootstrap path, and a stable release strategy. A new repository in any family should look familiar to anyone who has worked in another repository of the same family.
That means: a developer joining their third MIDDAG project this month already knows what the second one looked like. Onboarding to a new family is days, not weeks; onboarding to a new repository inside a known family is hours, not days.