PHPackages                             kaivladimirv/laravel-specification-pattern - 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. kaivladimirv/laravel-specification-pattern

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

kaivladimirv/laravel-specification-pattern
==========================================

Implementation of the specification pattern

v1.0.0(2y ago)01.2kMITPHPPHP ^8.1

Since Aug 30Pushed 2y ago1 watchersCompare

[ Source](https://github.com/kaivladimirv/laravel-specification-pattern)[ Packagist](https://packagist.org/packages/kaivladimirv/laravel-specification-pattern)[ RSS](/packages/kaivladimirv-laravel-specification-pattern/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

[![code style](https://github.com/kaivladimirv/laravel-specification-pattern/actions/workflows/code-style-check.yml/badge.svg)](https://github.com/kaivladimirv/laravel-specification-pattern/actions/workflows/code-style-check.yml)[![type coverage](https://camo.githubusercontent.com/418909bcd3753cc39761f3a8118564f4f86722b1fe3cdf20e760594859869e2b/68747470733a2f2f73686570686572642e6465762f6769746875622f6b6169766c6164696d6972762f6c61726176656c2d73706563696669636174696f6e2d7061747465726e2f636f7665726167652e737667)](https://shepherd.dev/github/kaivladimirv/laravel-specification-pattern)[![psalm level](https://camo.githubusercontent.com/43a6b4ca9baf4953de8d0c178bede5e4f641256b476b7a707e299d1dc94c68a7/68747470733a2f2f73686570686572642e6465762f6769746875622f6b6169766c6164696d6972762f6c61726176656c2d73706563696669636174696f6e2d7061747465726e2f6c6576656c2e737667)](https://psalm.dev/)[![tests](https://github.com/kaivladimirv/laravel-specification-pattern/actions/workflows/tests-check.yml/badge.svg)](https://github.com/kaivladimirv/laravel-specification-pattern/actions/workflows/tests-check.yml)[![sast](https://github.com/kaivladimirv/laravel-specification-pattern/actions/workflows/semgrep.yml/badge.svg)](https://github.com/kaivladimirv/laravel-specification-pattern/actions/workflows/semgrep.yml)[![Maintainability](https://camo.githubusercontent.com/30273d8ce843357cedfa47ef6537c88f18e38f05f26e8ac1f743775bdb3e91cc/68747470733a2f2f6170692e636f6465636c696d6174652e636f6d2f76312f6261646765732f39623363663262303032326331643833363036332f6d61696e7461696e6162696c697479)](https://codeclimate.com/github/kaivladimirv/laravel-specification-pattern/maintainability)[![Test Coverage](https://camo.githubusercontent.com/36c631893dbfe425bbc772d28a00a1345e51b165b97f7a4ad70762e3837ccb93/68747470733a2f2f6170692e636f6465636c696d6174652e636f6d2f76312f6261646765732f39623363663262303032326331643833363036332f746573745f636f766572616765)](https://codeclimate.com/github/kaivladimirv/laravel-specification-pattern/test_coverage)[![Latest Version](https://camo.githubusercontent.com/f85f14d1bc3210e1148d427a0aaaf79a99091a7d175cd72c192b18302ae58682/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6b6169766c6164696d6972762f6c61726176656c2d73706563696669636174696f6e2d7061747465726e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/kaivladimirv/laravel-specification-pattern)[![License](https://camo.githubusercontent.com/7c06c4cae9c71e409a2b30da180fe5c7ef2cdc3f77325212a5a03587d17ffe5b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6b6169766c6164696d6972762f6c61726176656c2d73706563696669636174696f6e2d7061747465726e)](https://github.com/kaivladimirv/laravel-specification-pattern/blob/main/LICENSE)[![PHP Programming Language](https://camo.githubusercontent.com/77c948ffce252c8ed122e1e588c5c803af6b1545df3519529db5011dbcb032d7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d382e312532422d253233383839324246)](https://php.net)

Specification pattern for Laravel
---------------------------------

[](#specification-pattern-for-laravel)

Implementation of the Specification pattern in PHP

Requirements
------------

[](#requirements)

- PHP 8.1+

Installation
------------

[](#installation)

You can install the package via composer:

```
$ composer require kaivladimirv/laravel-specification-pattern
```

Usage
-----

[](#usage)

You can create a specification using the artisan command:

```
$ php artisan make:specification GreaterThanSpecification
```

This command will create a specification class in the App\\Specifications namespace.

```
