Repository navigation
Home
Stream Engine is a modular content management system built with PHP and TypeScript. Choose the guide that matches your work.
The Administrator Guide is for people responsible for a Stream Engine site. It starts with server requirements and installation and covers configuration, content and routing, users and permissions, appearance and files, scheduled work, backups, upgrades, troubleshooting, and removal.
Start here if you need to deploy or operate a site:
- Check the requirements.
- Install Stream Engine.
- Complete the initial configuration.
- Publish content and configure routing.
- Manage users and permissions.
- Configure appearance, navigation, and files.
- Configure and verify scheduled tasks.
- Establish routine operational checks.
- Configure and test backup recovery.
- Plan upgrades and complete rollback drills.
- Diagnose operational problems safely.
- Retire or uninstall a site.
The Developer Guide is for people who want to understand the architecture, extend the engine, test changes, and contribute them to the open-source project.
Start with Getting started to prepare a checkout, install a local site, build the frontend, and run the baseline checks. Continue with Architecture and request flow before changing bootstrap, routing, rendering, caching, or background-task behavior. Use Database and migrations for schema changes, data migrations, migration state, and fresh-install snapshots. Use Modules to add site features while preserving autoloading, dependency, routing, template, frontend, API, cron, and removal contracts. Use Pages and routing when changing page trees, dynamic patterns, content bindings, canonical URLs, or route access. Use Themes to create a public-site presentation layer, declare its manifest and assets, override templates, and preserve the shared browser UI contract. Use Frontend development for TypeScript and React organization, Vite entries, shared browser utilities, localization, tests, builds, and committed release assets. Use API and security to add versioned JSON routes, enforce authentication, authorization and CSRF, validate untrusted data, and review output, uploads, secrets, and external-service boundaries. Use Testing to select unit and integration boundaries, write PHPUnit and Vitest regressions, run disposable-database tests and coverage, and reproduce the continuous-integration gates. Use Localization and accessibility for catalog ownership, plural/date/time formatting, RTL and bidirectional content, semantic markup, keyboard and assistive-technology contracts, and their verification. Use Performance to design indexed access paths, bounded request and background work, safe caching, and reproducible measurements. Use Releases to synchronize version metadata and release notes, rebuild snapshots and assets, verify clean installation and upgrades, tag the reviewed commit, and check public distribution. Use Contributing for the complete open-source workflow from issue scope and a fork through tests, pull-request review, CI, licensing, and merge readiness.
Important
Stream Engine is under active development and is not yet recommended for production use. Interfaces, migrations, and installation workflows may change before the first stable release.
The canonical documentation is maintained in docs/wiki/ in the
Stream Engine repository. The GitHub
Wiki is a published copy. Documentation changes should be submitted through
the same pull-request workflow as code changes.