PHPackages                             ifcastle/design-patterns - 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. [DevOps &amp; Deployment](/categories/devops)
4. /
5. ifcastle/design-patterns

ActiveLibrary[DevOps &amp; Deployment](/categories/devops)

ifcastle/design-patterns
========================

A library of common design patterns for building stateful server applications.

0.4.1(1y ago)526418MITPHPPHP ^8.4

Since Jul 29Pushed 5mo ago1 watchersCompare

[ Source](https://github.com/IFCastle/design-patterns)[ Packagist](https://packagist.org/packages/ifcastle/design-patterns)[ RSS](/packages/ifcastle-design-patterns/feed)WikiDiscussions main Synced yesterday

READMEChangelog (10)Dependencies (7)Versions (43)Used By (8)

Design Patterns [![PHP Composer](https://github.com/EdmondDantes/design-patterns/actions/workflows/php.yml/badge.svg)](https://github.com/EdmondDantes/design-patterns/actions/workflows/php.yml)
=================================================================================================================================================================================================

[](#design-patterns-)

Common Design Patterns for `Stateful` applications.

Patterns
--------

[](#patterns)

- `Execution Plan` - [Patterns that allow you to create a sequence of actions that can be executed in a specific order](docs/execution_plan.md).
- `Factory` - A pattern that allows you to create objects.
- `Final Handlers` - Method for determining handlers that will be executed at the very end of the FLOW, even if an error occurs.
- `Immutable` - A pattern/trait that allows you to create immutable objects.
- `Interceptor` - [A pattern that allows you to intercept the execution of a method and modify its behavior with arguments](docs/interceptor.md).
- `IntervalRunner` - Interval execution strategy that provides logic for running some code.
- `Iterators` - Group of contracts for iterators that extends basic conventions.
- `Pool` - Pool pattern focused on resource usage in a multithreaded environment.
- `ScopeControl` - A pattern that imposes restrictions on operations based on the current scope.

###  Health Score

39

—

LowBetter than 84% of packages

Maintenance55

Moderate activity, may be stable

Popularity17

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~3 days

Total

42

Last Release

586d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0bbbb16082fa2d9cb757d6e84fbac3c18c135b08111bf01611dfbd5123a77f68?d=identicon)[EdmondIf](/maintainers/EdmondIf)

---

Top Contributors

[![EdmondDantes](https://avatars.githubusercontent.com/u/1571649?v=4)](https://github.com/EdmondDantes "EdmondDantes (7 commits)")

---

Tags

serverdesign patternsstateful

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/ifcastle-design-patterns/health.svg)

```
[![Health](https://phpackages.com/badges/ifcastle-design-patterns/health.svg)](https://phpackages.com/packages/ifcastle-design-patterns)
```

###  Alternatives

[spatie/laravel-webhook-server

Send webhooks in Laravel apps

1.1k10.1M29](/packages/spatie-laravel-webhook-server)[felixfbecker/language-server-protocol

PHP classes for the Language Server Protocol

22581.4M5](/packages/felixfbecker-language-server-protocol)[clue/socket-raw

Simple and lightweight OOP wrapper for PHP's low-level sockets extension (ext-sockets).

35312.1M50](/packages/clue-socket-raw)[voryx/thruway

Thruway WAMP router core

6751.0M17](/packages/voryx-thruway)[php-mcp/server

PHP SDK for building Model Context Protocol (MCP) servers - Create MCP tools, resources, and prompts

850577.8k55](/packages/php-mcp-server)[laminas/laminas-server

Create Reflection-based RPC servers

2425.0M28](/packages/laminas-laminas-server)

PHPackages © 2026

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