PHPackages                             spryker/cakephp-statemachine - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. spryker/cakephp-statemachine

ActiveCakephp-plugin[Utility &amp; Helpers](/categories/utility)

spryker/cakephp-statemachine
============================

CakePHP StateMachine Plugin

2.0.4(9mo ago)824.0k4[1 PRs](https://github.com/spryker/cakephp-statemachine/pulls)proprietaryPHPPHP &gt;=8.2CI failing

Since Jul 30Pushed 9mo ago57 watchersCompare

[ Source](https://github.com/spryker/cakephp-statemachine)[ Packagist](https://packagist.org/packages/spryker/cakephp-statemachine)[ RSS](/packages/spryker-cakephp-statemachine/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (10)Versions (19)Used By (0)

CakePHP StateMachine Plugin
===========================

[](#cakephp-statemachine-plugin)

[![CI](https://github.com/spryker/cakephp-statemachine/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/spryker/cakephp-statemachine/actions/workflows/ci.yml)[![PHPStan level](https://camo.githubusercontent.com/3bcae20044ccbc7418cae0e9264f3cd12df82ccf921f56e5dd42663b64c4b060/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7374796c652d6c6576656c253230382d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265266c6162656c3d7068707374616e)](https://github.com/phpstan/phpstan)[![Latest Stable Version](https://camo.githubusercontent.com/b4e98f44935ac3b07a8071666029f90076b04588e66378576cdabfacc4bd9823/68747470733a2f2f706f7365722e707567782e6f72672f737072796b65722f63616b657068702d73746174656d616368696e652f762f737461626c652e737667)](https://packagist.org/spryker/dereuromark/cakephp-statemachine)[![Minimum PHP Version](https://camo.githubusercontent.com/0e9ac047546796cfdbe1423d1f4d91c8f37d2fbb11614a7900bb7686aaa5401f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344253230372e342d3838393242462e737667)](https://php.net/)

StateMachine engine for CakePHP applications.

This branch is for use with **CakePHP 5.0+**. For details see [version map](https://github.com/spryker/cakephp-statemachine/wiki#cakephp-version-map).

Features
--------

[](#features)

- Easy to use and modify
- Live preview as rendered image
- Simple admin interface included.

Note: This plugin is a sandbox/showcase for state machines. Use with Caution.

License
-------

[](#license)

License is not open source, but open code.

The plugin is offered are provided free of charge by Spryker Systems GmbH and can be used in any CakePHP project. They are experimental and under the Spryker Sandbox License (see LICENSE file). However, Spryker does not warrant or assume any liability for errors that occur during use. Spryker does not guarantee their full functionality neither does Spryker assume liability for any disadvantages related to the use of the experimental plugin. Spryker does not guarantee any updates, upgrades or similar to the experimental plugin. By installing the experimental plugin, the project agrees to these terms of use. Please check LICENSE every 90 days.

Install
-------

[](#install)

### Requirements

[](#requirements)

StateMachine plugin requires GraphViz. Please check  in order to install it for your system.

### Composer (preferred)

[](#composer-preferred)

```
composer require spryker/cakephp-statemachine

```

Setup
-----

[](#setup)

Enable the plugin in your `config/bootstrap.php` or call

```
bin/cake plugin load StateMachine

```

Run migrations:

```
bin/cake migrations migrate -p StateMachine

```

Or just copy the migration file into your app `src/config/Migrations/`, modify if needed, and then run it as part of your app migrations.

Fully tested so far are PostgreSQL and MySQL, but by using the ORM all major databases should be supported.

Usage
-----

[](#usage)

Navigate to `http://example.local/admin/state-machine` to view your currently setup state machines.

See [Documentation](/docs) for more details.

###  Health Score

51

—

FairBetter than 96% of packages

Maintenance58

Moderate activity, may be stable

Popularity32

Limited adoption so far

Community20

Small or concentrated contributor base

Maturity80

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 72% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~147 days

Recently: every ~2 days

Total

16

Last Release

276d ago

Major Versions

0.1.1 → 1.0.0-beta2020-04-15

1.4.0 → 2.0.02025-08-07

PHP version history (5 changes)0.1PHP &gt;=7.1

1.0.0-betaPHP &gt;=7.2

1.1.0PHP &gt;=7.3

1.4.0PHP &gt;=7.4

2.0.0PHP &gt;=8.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/10738957?v=4)[Spryker Bot](/maintainers/spryker-bot)[@spryker-bot](https://github.com/spryker-bot)

---

Top Contributors

[![dereuromark](https://avatars.githubusercontent.com/u/39854?v=4)](https://github.com/dereuromark "dereuromark (198 commits)")[![gechetspr](https://avatars.githubusercontent.com/u/42143273?v=4)](https://github.com/gechetspr "gechetspr (74 commits)")[![spryker-bot](https://avatars.githubusercontent.com/u/10738957?v=4)](https://github.com/spryker-bot "spryker-bot (2 commits)")[![spryker-release-bot](https://avatars.githubusercontent.com/u/26904324?v=4)](https://github.com/spryker-release-bot "spryker-release-bot (1 commits)")

---

Tags

cakephpcakephp-pluginfinite-state-machinephpstate-machine

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/spryker-cakephp-statemachine/health.svg)

```
[![Health](https://phpackages.com/badges/spryker-cakephp-statemachine/health.svg)](https://phpackages.com/packages/spryker-cakephp-statemachine)
```

###  Alternatives

[dereuromark/cakephp-tools

A CakePHP plugin containing lots of useful and reusable tools

338920.1k32](/packages/dereuromark-cakephp-tools)[markstory/asset_compress

An asset compression plugin for CakePHP. Provides file concatenation and a flexible filter system for preprocessing and minification.

3761.0M11](/packages/markstory-asset-compress)[ircmaxell/php-cfg

A Control Flow Graph implementation for PHP

24694.2k2](/packages/ircmaxell-php-cfg)[dereuromark/cakephp-shim

A CakePHP plugin to shim applications between major framework versions.

401.0M11](/packages/dereuromark-cakephp-shim)[cakedc/cakephp-phpstan

CakePHP plugin extension for PHPStan.

40676.6k31](/packages/cakedc-cakephp-phpstan)[dereuromark/cakephp-dto

A CakePHP plugin for generating immutable Data Transfer Objects with full type safety

2988.9k3](/packages/dereuromark-cakephp-dto)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
