DM Editors
A modern headless CMS built on Laravel 12 — content models, entries, components, media, forms, i18n, and a versioned JSON-based REST API.
What is DM Editors?
DM Editors is a self-hosted headless CMS designed for developers who want the flexibility of a Strapi-style content engine on top of a familiar PHP/Laravel stack. Editors build content using model-driven entries; developers consume that content over a clean, key-authenticated REST API.
The admin panel is built with Blade, Livewire 3, and Alpine.js — no third-party CMS frameworks, no Filament. Storage uses MySQL 8 with UUID primary keys and JSON columns for flexible per-entry schemas.
Where to go next
Architecture & Stack →
How the app is wired: routing, layout, conventions, design decisions.
Database Schema →
All 35 tables, UUID conventions, JSON columns, foreign keys.
Content Models →
Define content types, configure fields, single vs collection.
Developer API →
Consume content from any frontend with the v1 REST API.
Highlights
- Dynamic content models — define types in the admin, fields stored as JSON, served through a generic REST endpoint.
- Components & computed fields — reusable field groups and server-evaluated derived values.
- Versioned entries — every save creates a revision you can diff against and restore.
- Built-in i18n — entries are locale-scoped; multi-language slugs and translatable settings.
- Forms engine — collect submissions from the frontend with throttled, public submit endpoints.
- Webhooks & activity log — outbound events on content change plus a full audit trail.
- Scoped API keys — per-key scopes (
read,write,delete), origin allowlists, rate limits.
Project status
| Phase | Scope | Status |
|---|---|---|
| 1 | Foundation — auth, layout, media, users, roles, settings, activity | Done |
| 2 | Content Engine — content models, field builder, entries, revisions | Done |
| 2.5 | Strapi-level features — components, dynamic zones, single types | In progress |
| 3 | API & Developer Tools | In progress (v1 endpoints live) |
| 4 | Advanced Features | Pending |