MCPSERV.CLUB
WonderCMS

WonderCMS

Self-Hosted

Tiny flat‑file CMS for fast, privacy‑first sites

Stale(65)
710stars
0views
Updated Jul 12, 2025

Overview

Discover what makes WonderCMS powerful

WonderCMS is a minimalistic, flat‑file content management system written in pure PHP. From a technical standpoint it eliminates the need for a database server, web‑server configuration beyond standard PHP support, or any runtime dependencies. Content is stored in simple UTF‑8 text files (YAML/Markdown or plain PHP arrays), and the engine parses these files on every request, caching the parsed results in a small JSON blob to keep memory usage low. The core engine is only about 50 KB of code, which means it can be dropped into any LAMP/LEMP stack with a single `unzip` operation and immediately serves dynamic pages without any compile‑time steps.

Language & Runtime

Data Layer

Templating

Routing

Overview

WonderCMS is a minimalistic, flat‑file content management system written in pure PHP. From a technical standpoint it eliminates the need for a database server, web‑server configuration beyond standard PHP support, or any runtime dependencies. Content is stored in simple UTF‑8 text files (YAML/Markdown or plain PHP arrays), and the engine parses these files on every request, caching the parsed results in a small JSON blob to keep memory usage low. The core engine is only about 50 KB of code, which means it can be dropped into any LAMP/LEMP stack with a single unzip operation and immediately serves dynamic pages without any compile‑time steps.

Architecture

  • Language & Runtime: PHP 8.1+ (fully backward‑compatible with 7.4) running on any web server that supports PHP as a module or CGI.
  • Data Layer: Flat files stored under content/ – each article, page or taxonomy is a separate file. The system uses an internal cache/ directory for JSON‑encoded metadata and optional compiled templates.
  • Templating: A tiny, built‑in template engine based on PHP’s output buffering. Templates are plain .php files that can include other templates and access a global $page object. No external templating libraries are required, keeping the footprint minimal.
  • Routing: A single‑file front controller (index.php) maps URLs to content files using a simple globbing algorithm. Custom routes can be defined in config/routes.php if needed.
  • Admin Interface: A lightweight MVC‑style admin panel built with vanilla PHP and minimal CSS/JS. It serves as both a content editor (in‑place Markdown editing with live preview) and an extension manager.

Core Capabilities

  • REST‑like API: /api/v1/ exposes endpoints for retrieving, creating, updating and deleting content via JSON. Authentication is token‑based (X-API-Key) allowing integration with external services or headless front‑ends.
  • Webhooks: Plugins can register callbacks for events such as post.published, page.updated, or user.logged_in. These are invoked synchronously during the request lifecycle.
  • Plugin System: A hook‑based architecture lets developers drop a PHP file into plugins/. Each plugin registers hooks in its own namespace, making it trivial to add features such as SEO metadata generators, analytics integrations, or custom form handlers.
  • Theming: Themes are simple directory structures under themes/. A theme declares a theme.json with metadata and optionally overrides core templates. The admin panel includes a one‑click theme installer that pulls packages from the official repository.

Deployment & Infrastructure

  • Self‑Hosting: No database, no external services – just a web server and PHP. Suitable for shared hosting, VPS, Docker, or even static site generators that support dynamic PHP execution.
  • Containerization: Official Docker image (wondercms/wondercms) bundles Nginx, PHP‑FPM and the CMS files. A docker-compose.yml example is provided in the repo, making it trivial to spin up a local dev environment or CI pipeline.
  • Scalability: Because the CMS serves static files after initial parsing, it can be fronted by a CDN. The lightweight cache ensures low memory usage even under high concurrency. Horizontal scaling is achieved by replicating the file system across nodes (e.g., using NFS or a distributed object store) and keeping the cache in Redis if desired.

Integration & Extensibility

  • External APIs: The REST API can be consumed by headless front‑ends (React, Vue, Svelte) or static site generators that support dynamic content fetching. OAuth2 is supported via a third‑party plugin for authentication against external identity providers.
  • Webhooks: External services can listen to content events, enabling automated deployments, search‑index updates, or notification workflows.
  • Customization: Developers can extend the core by writing plugins that hook into any lifecycle event, modify request/response objects, or replace entire modules. The source code is fully open‑source (GPLv3), encouraging community contributions.

Developer Experience

  • Configuration: Minimal – a single config.php with path constants and API key generation. All advanced settings are optional and documented in the online docs.
  • Documentation: The official docs cover installation, API usage, plugin development, and migration scripts. Inline code comments are plentiful, and the GitHub repo hosts a wiki with best‑practice guides.
  • Community: Over 50 contributors and thousands of downloads. The project maintains an active issue tracker, a Discord channel for real‑time support, and a quarterly newsletter.

Use Cases

  • Personal Blogs: Fast page load times, zero database overhead make it ideal for solo developers who want a lightweight blogging platform.
  • Documentation Sites: Markdown support, in‑place editing, and API access allow teams to maintain internal docs or public APIs with minimal friction.
  • Static Site Generation: Use WonderCMS as a headless CMS to feed content into static site generators, then deploy the generated HTML to an edge CDN.
  • Prototype & MVP: Quickly spin up a functional website or product landing page without provisioning a database, ideal for rapid prototyping.

Advantages

  • Performance: Zero‑dependency architecture yields 100/100 PageSpeed scores on both desktop and mobile; the engine parses only a handful of

Open SourceReady to get started?

Join the community and start self-hosting WonderCMS today

Weekly Views

Loading...
Support Us

Featured Project

$30/month

Get maximum visibility with featured placement and special badges

Repository Health

Loading health data...

Information

Category
other
License
MIT
Stars
710
Technical Specs
Pricing
Open Source
Database
None
Supported OS
LinuxWindowsmacOSBSD
Author
WonderCMS
WonderCMS
Last Updated
Jul 12, 2025