Docs

Project overview

uticms.project · verified 2026-07-17

Overview

Scope
Laravel application
Architecture
Modular headless-first CMS; Kernel (app/bootstrap) plus installable Domain and Extension modules
Runtime
PHP 8.3+, Laravel 12/13, Filament 5, Livewire 4, Vite 6, Tailwind CSS 4

Key concepts

Kernel
UTICMS platform code in app/ and bootstrap/; distinct from modules/Core/.
Core Module
modules/Core/ with is_core true; updates Kernel files and reports core_version.
Domain Module
Self-contained business domain such as Shop or Blog.
Extension Module
Feature built on one or more Domain modules, such as ShopB2C or OneCBridge.
Module
Filesystem package registered by module.json and optionally installed or active in the modules table.
Active Module
Installed module whose is_active database flag permits runtime integration.
Cms Frontend Preset
CMS_FRONTEND resolving feature flags for full, small, or headless runtime.

Structure

  • Kernel
    • Codeapp/
    • Bootstrapbootstrap/
    • RolePlatform foundation; not a module
  • Distribution
    • Configurationconfig/
    • Routesroutes/
    • Databasedatabase/
    • Vendorvendor/
  • Core Module
    • Pathmodules/Core/
    • Manifest Flagis_core
    • RoleKernel updater and core_version source for license sync
  • Extension Model
    • Module Sourcesmodules/
    • Module Manifestmodules/<ModuleName>/module.json
    • Module Database Recordmodules table
    • Layers
      • kernel
      • core_module
      • domain_module
      • extension_module
  • User Interfaces
    • AdministrationFilament panel
    • Public SiteFeature-gated Laravel routes and Blade/Livewire views
    • ApiCore and module API routes
  • Data Stores
    • PrimaryMySQL
    • Supported
      • MariaDB
      • MySQL
      • PostgreSQL
    • Cache QueuesRedis via predis or database driver

Facts

  • Composer declares PHP >=8.3, Laravel 12/13, Filament 5, Livewire 4, Sanctum, Reverb, Laratrust, durable-workflow/workflow, and uticms/platform. authoritative
  • Vite 6 builds JavaScript and Tailwind CSS 4 assets; Alpine.js 3 is a runtime frontend dependency; Editor.js powers Page CMS blocks. authoritative
  • Composer includes Flysystem AWS S3 and FTP adapters, GeoIP2, Telegram bot SDK, and predis for Redis. authoritative
  • Production targets MariaDB or MySQL; PostgreSQL is supported through DatabaseDialect; SQLite is used for local development. authoritative
  • Laravel route files separate web, API, CMS public, admin, console, channels, and CDN concerns. authoritative
  • CMS feature flags resolve from CMS_FRONTEND presets and optional CMS_FEATURE_* overrides. authoritative
  • full enables public routes, page CMS, and site resolution; small enables public routes but disables page CMS and site resolution; headless disables public routes and enables public CORS. authoritative
  • Kernel code in app/ and bootstrap/ does not depend on business module implementations; modules attach to Kernel. authoritative

How-to guides

Scoped Change

  1. identify affected subsystem and active module boundary
  2. inspect code, migrations, config, and module manifests for that scope
  3. apply and verify the smallest change that respects constraints

Rules

Architectural rule

Do not assume public CMS routes or page rendering exist unless their resolved CMS feature flags are enabled.