ambrion/evocms-feature-flags

Feature Flags module for EvolutionCMS CE 3 with rules engine, A/B testing and analytics

Maintainers

Package info

github.com/Ambrion/evocms-feature-flags

Documentation

Type:evolutioncms-package

pkg:composer/ambrion/evocms-feature-flags

Statistics

Installs: 12

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.0-alpha 2026-05-14 12:49 UTC

This package is auto-updated.

Last update: 2026-05-14 12:50:40 UTC


README

πŸ‡·πŸ‡Ί Русский | πŸ‡¬πŸ‡§ English

🚩 Feature Flags for EvolutionCMS CE 3

Manage feature flags with rules engine, statistics, and A/B testing β€” built for EvolutionCMS CE 3.

πŸ“¦ Installation

cd /core
php artisan package:installrequire ambrion/evocms-feature-flags "v0.1.0-alpha"
php artisan vendor:publish --provider="EvolutionCMS\FeatureFlags\FeatureFlagsServiceProvider"
php artisan migrate

βš™οΈ Requirements

Requirement Version Notes
PHP ^8.3 Required for typed properties and readonly classes
EvolutionCMS CE β‰₯3.1.30 Tested on v3.1.30; may work on earlier 3.x versions
Composer ^2.0 For package installation and dependency management

πŸ’‘ Note: The module uses modern PHP 8.3 features (readonly classes, typed properties, match expressions). PHP 8.1–8.2 are not supported.

βš™οΈ Quick Start

  1. Open Manager β†’ Modules β†’ Feature Flags in EvolutionCMS admin panel
  2. Create your first feature flag
  3. Use in your snippets:
if ($flags->isEnabled('my_flag', context: ['user_role' => 'manager'])) {
    // show the feature
}

🎯 Key Features

  • βœ… Rule-based evaluation: Enable features by user role, document category, date, percentage, and more
  • βœ… A/B Testing: Split traffic between variants with deterministic user assignment
  • βœ… Statistics & Analytics: Track flag evaluations, export data, visualize distributions
  • βœ… Admin UI: Manage flags directly in EvolutionCMS manager β€” no config file edits needed
  • βœ… TDD-friendly: Domain-driven design, fully testable without Evo bootstrap

πŸ”— Documentation

πŸ“¬ Support

πŸ“œ License

MIT Β© Ambrion

πŸ’‘ Note: For Russian documentation, see README.ru.md.