Raven CMS Introduction

Raven is a self-hosted CMS focused on readable code, update-safe customization, and local ownership of your data. It supports traditional manual development and AI-assisted workflows, but runtime behavior does not depend on AI tooling.

Philosophy

  • Keep core runtime behavior in private/sys/.
  • Keep reusable shared logic in private/lib/.
  • Keep user customization in themes and extensions:
  • public themes in public/theme/{slug}/
  • extensions in private/ext/{slug}/
  • Keep runtime data local to the install (private/dat/ and .tmp/).

Runtime Snapshot

  • Public entrypoint: public/index.php
  • Panel entrypoint: panel/index.php
  • Installer entrypoint: public/install.php
  • Core bootstrap: private/Raven.php
  • Target PHP: 8.5
  • Composer dependencies install to composer/

Quick Start

  1. Install requirements:
  • PHP 8.5
  • web server (for example Nginx)
  • SQLite, MySQL, or PostgreSQL
  1. Install dependencies from project root:
  • composer install
  1. Run installer:
  • open /install.php in your browser
  1. Complete install form:
  • set site/panel config
  • configure database
  • create initial admin user
  1. Post-install hardening:
  • remove public/install.php
  • verify panel login and public homepage

Customization Surfaces

Developer References

  • System map: Filetree
  • Developer API index: Appendix API
  • Generated reference appendices: docs/appendix/
  • Release history: release-notes.md

Project Status

Raven is an active prototype. Some narrative docs still require full manual verification against the live codebase. When uncertain, treat AGENTS.md files and generated appendices as higher-confidence references.