evolution-cms/evolution
Evolution CMS is an open-source PHP content management system focused on speed, security, and flexibility. Build and manage websites with a familiar manager interface, powerful templating, plugins, and extensions, with modern development tools and an active community.
Evolution CMS 3.5.7 is a maintenance and stability release focused on safer updates, improved manager usability, more reliable backups, and cleaner developer experience.
@ bindings in TVs, chunks, and snippets in CodeMirror.niceCount() helper for compact quantity formatting.This release is recommended for all Evolution CMS 3.5.x users.
The update flow received significant internal improvements. As always, make a full database and filesystem backup before upgrading production projects, especially when using custom Composer packages or custom update branches.
[2106997] - [FIX] Keep the light theme toggle out of the active state. (middle:Duck) [6c1a94b] - [FIX] Prevent zero-size dump batches for small tables. (middle:Duck) [8d8dcdd] - [FIX] Replace redundant roles logout and view developers list with dashboard widgets recent changes and online users view roles. (Artur Kyryliuk) [1aff71a] - [FIX] Fixed semi-transparency making protected resource titles hard to read. (Artur Kyryliuk) [8ca05ab] - [FIX] Keep lightness active menu items readable. (middle:Duck) [9f3f064] - [FIX] Remap dashboard widget permissions during updates. (middle:Duck) [d3ff323] - [FIX] Bootstrap legacy tree state for TinyMCE4 link dialogs. (middle:Duck) [bb537a0] - [UPD] Guard file_groups creation in migrations. (middleDuckAi) [35b4820] - [DEL] Liquid draft theme. (middle:Duck) [09f072f] - [UPD] Refresh Store module for 0.2.0. (middleDuckAi) [a4188e5] - [UPD] Polish Store UI follow-ups. (middleDuckAi) [b42873e] - [UPD] Restore TinyMCE4 legacy API compatibility. (middleDuckAi) [de3cef1] - [UPD] Add legacy Store delete flow and UI polish. (middleDuckAi) [8cec37b] - [REF] Stabilize Store runtime task flows and installed-state handling. (middleDuckAi) [652631c] - [UPD] Cache console catalog and unify initial load. (middleDuckAi) [b361c6a] - [UPD] Align catalog loader with Evo default style. (middleDuckAi) [6f019f1] - [UPD] Remove custom catalog loader and align layout. (middleDuckAi) [ddfa745] - [UPD] Remove module version from title. (middleDuckAi)
[d027f4d] - [REF] Finalized the MODX_* to EVO_* compatibility transition and prepared legacy constants for removal. (Seiger) [8b0e83a] - [ADD] Added resource group ACL management for the file and image managers. (Artur Kyryliuk) [dd7e331] - [ADD] Added deprecated:list command to find code marked for removal by semantic version. (Artur Kyryliuk) [550cf13] - [FIX] TransAlias now uses the current manager language for alias transliteration. (middle:Duck) [01e4267] - [FIX] Preserved explicit TransAlias table overrides when custom table settings are used. (middle:Duck) [d4dfcb9] - [FIX] Preserved portable path settings when saving system configuration. (middle:Duck) [6f77af6] - [FIX] Prioritized KCFinder callbacks over TinyMCE fallback in the file browser flow. (middle:Duck) [a6ff481] - [FIX] Prevented moving documents into deleted resources from the manager tree. (middle:Duck) [63f3bd5] - [FIX] Resolved an internal forward loop that could break request processing. (Seiger) [44ab3f4] - [REF] Updated Composer dependencies, improved tests, and fixed multiple PHP 8.4 deprecation warnings. (Artur Kyryliuk)
[1dc4453] - [REF] Mark $modx as Deprecated. (Seiger) [1aaf916] - [FIX] Reverted prefix placeholder support and fixed login issue. (Elcreator) [236b1ec] - [FIX] Reverted inability to login if NO_SESSION is set. (Elcreator) [5e4704f] - [FIX] MCPUK via evo.EVO_MANAGER_URL. (Seiger)
[032c5dd] - [ADD] Automatic register alias config file for custom packages. (Seiger) [e46ec54] - [ADD] Laravel session compatibility layer through EvoSessionProxy and middleware integration. (Dmi3yy) [6ded2cb] - [ADD] Initialize Laravel session support in manager via EvoSessionProxy. (Dmi3yy) [8541461] - [ADD] SQLite to the web installer. (Elcreator) [b3db5ce] - [ADD] Init new theme liquid. (Dmi3yy) [243020b] - [ADD] Introduce refined tab and popup styles, update theme variables, and adjust menu padding for improved UI consistency. (Dmi3yy) [7857ee8] - [ADD] Add SqliteDumper class and integrate SQLite backup support into database management actions. (Dmi3yy) [60da28d] - [ADD] Preset install command. (Dmi3yy)
Full Changelog: https://github.com/evolution-cms/evolution/compare/3.5.2...3.5.3
Evolution CMS 3.5 — 21 Years of Proven Evolution
Evolution CMS is a content management platform with 21 years of continuous development, originating in 2004 with MODX Evolution 0.7 and evolving into a modern, stable system used for projects of any scale — from simple websites to complex digital products.
⸻
What Evolution CMS Is Today
Evolution CMS is: • a fast and reliable CMS, • a platform that covers a full spectrum of use cases, • a flexible system designed for long-term projects and sustainable growth.
⸻
Laravel as a Strategic Foundation
Since Evolution CMS 2.0, the entire backend has been built on Laravel. This was a strategic decision that: • significantly expanded the platform’s capabilities, • provided a modern, industry-standard architecture, • reduced long-term maintenance and development costs, • eliminated risks related to custom backend support.
By leveraging Laravel, Evolution CMS benefits from a stable, well-supported ecosystem and predictable long-term development.
⸻
Evolution CMS 3.5
Release 3.5 delivers: • a core upgrade to Laravel 12, • architectural and UI improvements, • a solid foundation for future updates.
We deliberately focus on updates, not breaking changes. Backward compatibility remains a core principle, ensuring existing projects continue to work without disruption.
⸻
Ecosystem and Scalability
Evolution CMS features a growing ecosystem of modules, including solutions for: • e-commerce, • SEO, • multilingual content, • multisite architectures, • asynchronous task processing, • structured content and media management.
This ecosystem allows Evolution CMS to function as a flexible platform for building scalable digital products.
⸻
Development Direction
Our approach is evolution, not revolution. Stability, backward compatibility, and long-term value are the foundation of every decision.
Further platform updates and ecosystem expansion are planned for 2026, continuing the steady and predictable growth of Evolution CMS.
⸻
Key Points
• 21 years of continuous development • Laravel-based backend as a strategic core • Backward compatibility as a priority • Scalable architecture and modular ecosystem • Clear long-term development roadmap
Evolution CMS 3.5 represents a mature platform that continues to evolve with modern technology while preserving long-term stability.
!!! Notice: minimum PHP version 8.3. !!!
[GitHub: 74dd478] - Add Priority registration Service Providers. (Seiger) [GitHub: 8400156] - Add niceEta - Format ETA seconds into human-readable format. (Seiger) [GitHub: 7858c0a] - Add Multiply Tailwind css files compile. (Seiger) [GitHub: f2355a6] - Fix missing value from config. (elcreator) [GitHub: d6ecb76] - Fix Ignore suffix is Manager Middleware. (Seiger) [GitHub: bfef7e7] - Fix Mark nicesize() as deprecated, use niceSize() via ISO standard. (Seiger) [GitHub: b3a71f2] - Fix Refactor MODX_CLASS to EVO_CLASS. (Seiger) [GitHub: af8c774] - Fix Support PHP 8.4. (Seiger) [GitHub: 0899f09] - Fix Logo images. (Dmi3yy)
[GitHub: 10ad67b] - Add Core up to Laravel 11. (Seiger) [GitHub: d746b49] - Add Specified Evolution CMS version via platform-packages to check module compatibility. (Seiger) [GitHub: 8316dd8] - Add Directive @evoConfig(). (Seiger) [GitHub: c187865] - Add Tailwind CSS v4 with Build command without Node.js. (Seiger) [GitHub: 5a3272b] - Add CSP via nonce and removed jQuery dependency in the web installer. (elcreator) [GitHub: 8be64dc] - Add Command for missing translation keys. (elcreator) [GitHub: 1588ec7] - Fix Core Method sendRedirect(). (Seiger) [GitHub: af8c774] - Fix Installation failure when DB name contains dash. (elcreator) [GitHub: 0071423] - Fix CLI EVO installer. (Seiger)
[GitHub: c6db1d0] - Add Implemented automatic detection of foreign key dependency handling for database backup. (Seiger)
[GitHub: 4e1078c] - Add EVO_ define configs. (Seiger)
[GitHub: 746d8c7] - Add Composer update in CLI installation. (Seiger)
[GitHub: e0ee516] - Add Azerbaijani lang. (Seiger)
[GitHub: 50c6d16] - Add DE core updater. (Seiger)
[GitHub: 74bd6e5] - Add Access to all groups is Role Admin on frontend. (Seiger)
[GitHub: 6654bf6] - Add Name of the module being Execute module. (Seiger)
[GitHub: 54c455e] - Add Ability to log module events. (Seiger)
[GitHub: e836aa7] - Add Daily log with project name. (Seiger)
[GitHub: 0986af2] - Fix Replaced hardcoded path with actual one in the error description. (elcreator)
[GitHub: 2c4a0dc] - Fix Inability to log in to admin panel if NO_SESSION is set. (elcreator)
[GitHub: 9ca046e] - Fix Assets path and Url generate. (Seiger)
[GitHub: af8c774] - Fix TracyServiceProvider for PHP 8+. (Juniorbuka)
[GitHub: 2376df3] - Fix RSS widgets error if an RSS link is empty. (Seiger)
[GitHub: 464b891] - Fix Last active users action. (Seiger)
[GitHub: 9436cb6] - Fix Deprecated htmlspecialchars(). (Seiger)
Evolution CMS 1.4.18
Full Changelog: https://github.com/evolution-cms/evolution/compare/1.4.17...1.4.18
[GitHub: 25400e7] - Fix PHP 8.3 fixes. (Seiger) [GitHub: e275891] - Fix Json error in TV Controller. (Seiger) [GitHub: 0692c69] - Fix Manager CSS version and refactor code. (Seiger) [GitHub: ef7241f] - Fix Last users highlight. (Seiger) [GitHub: e33b3ec] - Fix Image browser. (Seiger) [GitHub: 8f1fde6] - Add License file. (Seiger)
[GitHub: 29045e9] - Add Nginx config file. (Seiger) [GitHub: bda3ee8] - Add 'document' as content type in case if it's defaulted due to plugin error. (elcreator) [GitHub: 9a0f5e9] - Fix security CVE-2023-43340-Evolution-Reflected-XSS---Installation-Admin-Options (GHSA-432f-967f-vxg4). (Seiger) [GitHub: 770a6f3] - Fix security CVE-2023-43341-Evolution-Reflected-XSS---Installation-Connection- (GHSA-5h47-9rm5-fx3f). (Seiger) [GitHub: 77064bb] - Fix PHP 8 errors in page to show document's data. (Seiger) [GitHub: 7d8e446] - Fix Resources tree. (Seiger) [GitHub: c2d7261] - Fix text/html content type by default.text/html content type by default. (Seiger) [GitHub: 12862bf] - Fix UK translates. (Seiger) [GitHub: a49b088] - Fix Manager lang if install lang is English. (Seiger) [GitHub: fe7f44c] - Fix Refactor installation. (Seiger) [GitHub: 1e472b3] - Fix Refactor executeParser(). (Seiger)
[GitHub: 818812a] - Add WEBP thumbnail. (Seiger) [GitHub: 1a1e0e9] - Add Active class for custom admin panel menu item. (Seiger) [GitHub: 779f4ad] - Add setLexicon(). (Seiger) [GitHub: a975842] - Fix Standard link not working #2065. (Seiger) [GitHub: 5643a1e] - Fix Bug with getDocumentChildren() and getAllChildren() #2089. (Seiger) [GitHub: 16d1956] - Fix Error: The session id is too long or contains illegal character #2104. (Seiger) [GitHub: 2931ba6] - Fix Help tabs refactor. (Seiger) [GitHub: 8a8725a] - Fix Core toDateFormat with Nesbot Carbon. (Seiger) [GitHub: ed97c18] - Fix CLI Installer. (Seiger) [GitHub: 32f1834] - Fix Legacy/Cache/escapeDoubleQuotes(). (Seiger) [GitHub: 660d7d1] - Fix HTTPS:// for route(). (Seiger) [GitHub: 594dc1b] - Fix Mutate content dynamic. (Seiger) [GitHub: b1ad0b4] - Fix UK translate. (Seiger) [GitHub: 3fa7d70] - Fix Last login in Manager widget. (Seiger) [GitHub: 40219fb] - Fix Tree sorting if id is 0. (Seiger) [GitHub: 2ec0607] - Fix Friendly url in php 8.2. (Seiger) [GitHub: bbfc1b8] - Fix Attempt to modify property "config" on null. (Seiger) [GitHub: b1a7abe] - Fix Mainloader. (Seiger) [GitHub: dcd99ad] - Fix Double slashes in resourcePath(). (Seiger)
[GitHub: a3ebb44] - Fix Version Updater. (Seiger)
[GitHub: 0442861] - Fix Errors bkmanager. (Seiger ) [GitHub: ff1d0b7] - Add Check Role and Blade directive. (Seiger) [GitHub: 2ccccc4] - Add Redirect after save configuration #91. (Seiger) [GitHub: 5c99f20] - Add Sortable Table in Manage Files #169. (Seiger)
Notice: minimum PHP version 8.1.
Change-log:

Change-log:
Bugfixes
Update oh-thumb for correct work with Google Page Speed and web
Update oh-thumb for correct work with Google Page Speed and web
Hot fix for 3.1.4
Updated phpthumb
Support for autoloading from the "assets/vendor" folder. You should create your composer.json and run composer commands in the "assets" folder, not root, because composer.json changes in root folder are lost after updates. Ability to disable aliasListing completely. Ability to disable elements (chunks, snippets, plugins) caching. Some bugs were fixed, some components were updated.
How can I help you explore Laravel packages today?