Forums Feature Requests Thread

[New] Cross-cutting infra: No arbitrary custom-page builder — tenants can edit one hard-coded 'About Us' page and four fixed legal slugs, nothing else

Patrick Bass · Jun 6 · 10 · 0
[High Priority] [New Feature] [Under Consideration]
🚀 OP Jun 6, 2026 8:05pm

Area: Cross-cutting infra (audit p14) · Surface: AdminSitePageController / SitePage model / routes.php · Dimension: competitor-gap · Severity: major

Every competitor in the community space ships a custom-pages / CMS surface so a community owner can publish a 'Start Here', FAQ, Contact, Events-info, Code-of-Conduct, or marketing landing page without a code deploy. Circle has custom 'Pages' and a Spaces-based content layout; Skool lets owners build an 'About' page plus custom links; Discourse ships admin-editable static pages and a 'pages' plugin; Mighty Networks has a full page/space builder. Mobieus lets a tenant super-admin edit exactly one prose page (About Us) and four legal documents — anything else requires Patrick to ship code (new route + controller method + template). A community owner who wants a 'House Rules' or 'New Member Orientation' page has no path. This is table-stakes self-service content management that we structurally cannot offer today.

Evidence

AdminSitePageController.php:24-26 `private const EDITABLE_PAGES = ['about-us' => 'About Us'];` — the ONLY editable site page. LegalPage.php:34-39 `ALLOWED_SLUGS` is locked to terms/privacy/community-guidelines/marketplace-rules. routes.php:122-126 every page is a hard-coded route (`/about`, `/terms`, ...); there is no catch-all `/{page}` route. SitePage.php has only find()/upsert() — no list/create/delete. The controller docblock even states the limit is intentional: AdminSitePageController.php:17-19 'Adding a new editable page = three small touches' (routes + controller + template).

Suggested fix. Generalize SitePage into a real CMS: an admin 'Pages' index where super-admins create/edit/delete arbitrary slugs, a single dynamic public route (e.g. `/p/{slug}` or a catch-all that checks site_pages before 404), per-page publish/unpublish, and optional inclusion in the footer/nav. Keep the existing about/legal slugs as reserved system pages so nothing breaks.

Filed by the automated tenant-app audit and adversarially evidence-verified. Status: verified. Open — not yet actioned.


Patrick Bass
@mobieus

Log in or register to reply to this thread.