PHPackages                             ylsideas/feature-flags - 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. ylsideas/feature-flags

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

ylsideas/feature-flags
======================

A Laravel package for handling feature flags

v3.0.2(1y ago)6201.4M—8.7%39[1 PRs](https://github.com/ylsideas/feature-flags/pulls)2MITPHPPHP ^8.2CI failing

Since Jul 16Pushed 1y ago11 watchersCompare

[ Source](https://github.com/ylsideas/feature-flags)[ Packagist](https://packagist.org/packages/ylsideas/feature-flags)[ Docs](https://github.com/ylsideas/feature-flags)[ GitHub Sponsors](https://github.com/peterfox)[ RSS](/packages/ylsideas-feature-flags/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (14)Versions (34)Used By (2)

[![Feature Flags - The extendable and adaptable Laravel Feature Flags package for managing flags within code](banner.png "Feature Flags")](banner.png)

[![Latest Version on Packagist](https://camo.githubusercontent.com/a194dcaaf0c62cfe9ebee885076712ce191ea018d47c345f1b82746a4dbf47c1/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f796c7369646561732f666561747572652d666c6167732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ylsideas/feature-flags)[![Tests](https://github.com/ylsideas/feature-flags/actions/workflows/run-tests.yml/badge.svg)](https://github.com/ylsideas/feature-flags/actions/workflows/run-tests.yml)[![Check & fix styling](https://github.com/ylsideas/feature-flags/actions/workflows/pint.yml/badge.svg)](https://github.com/ylsideas/feature-flags/actions/workflows/pint.yml)[![codecov](https://camo.githubusercontent.com/48c27cebb3ddfcb8ce53f32b9f7f24590f314f854addd3691944cd59a457c5f5/68747470733a2f2f636f6465636f762e696f2f6769746875622f796c7369646561732f666561747572652d666c6167732f6272616e63682f6d61696e2f67726170682f62616467652e737667)](https://codecov.io/github/ylsideas/feature-flags)[![Total Downloads](https://camo.githubusercontent.com/9f8b89cf3bbe49daf69c2673b092361a8a1bfd4df758e43053e065e7a467e9bf/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f796c7369646561732f666561747572652d666c6167732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ylsideas/feature-flags)[![Help Fund](https://camo.githubusercontent.com/ee6bbf7336f13c60720410679eed19bef599bc473a09623899fbde983fef2b79/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73706f6e736f72732f7065746572666f783f7374796c653d666c61742d737175617265)](https://github.com/sponsors/peterfox)

A Feature flag is at times referred to as a feature toggle or feature switch. Ultimately it's a coding strategy to be used along with source control to make it easier to continuously integrate and deploy. The idea of the flags works by essentially safe guarding sections of code from executing if a feature flag isn't in a switched on state.

This package aims to make implementing such flags across your application a great deal easier by providing solutions that work with not only your code but your routes, blade files, task scheduling and validations.

The Feature flagging dashboard for Laravel
------------------------------------------

[](#the-feature-flagging-dashboard-for-laravel)

[![flagfox - the power to deploy features form your own dashboard via a single Laravel package](https://camo.githubusercontent.com/1717ee4fe1dba286346a1606384e2bc8aff69f1cee316a96c5c22eace45d1a28/68747470733a2f2f7777772e666c6167666f782e6465762f696d672f6769746875622d726561646d652d696d6167652e706e67 "Flagfox")](https://www.flagfox.dev/?utm_campaign=waitlist&utm_source=github&utm_content=featureflags)

In late 2022 we decided to start work on a dashboard that will work on top of all the awesomeness that [Feature flags for Laravel](https://github.com/ylsideas/feature-flags) gives you. Right now you can [join the waiting list](https://www.flagfox.dev/?utm_campaign=waitlist&utm_source=github&utm_content=featureflags#waitlist).

How adding feature flags looks with this package
------------------------------------------------

[](#how-adding-feature-flags-looks-with-this-package)

It's pretty simple, you can start of with just simple calls to check if a flag's state is on or off.

```
Features::accessible('my-feature') // returns true or false
```

One of the unique features of this package is that it integrates heavily into Laravel by allowing you to configure different things such as access to route, schedule tasks or modifying the query builder.

To get a full understanding, it's best to [read the docs](https://feature-flags.docs.ylsideas.co/).

Upgrading
---------

[](#upgrading)

Version 3 and 2 are mostly the same. Some additonal type hinting was adding but not no major upgrade work should be required.

Version 2 and is somewhat different to version 1. If you are using Laravel 9 and PHP8 you should aim to use version 2. Version 1 is no longer supported. There is an [upgrade guide for moving from version 1 to version 2](UPGRADE.md).

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

[](#installation)

You can install the package via composer:

```
composer require ylsideas/feature-flags:^3.0
```

Once installed you should publish the config with the following command.

```
php artisan vendor:publish --provider="YlsIdeas\FeatureFlags\FeatureFlagsServiceProvider" --tag=config
```

You can customise the `features.php` config in a number of ways.

Documentation
-------------

[](#documentation)

For the complete documentation, visit .

Package Development
-------------------

[](#package-development)

If you wish to develop new features for this package you may run the tests using the following command.

```
composer test
```

Make sure any code you work on is linted as well.

```
composer lint
```

and that the code doesn't introduce errors with PHPStan.

```
composer analyse
```

Please make sure you *follow the Pull Request template* for all proposed changes. Ignoring it will mean the PR will be ignored.

### Changelog

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

### Security

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Peter Fox](https://github.com/ylsideas)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

60

—

FairBetter than 99% of packages

Maintenance49

Moderate activity, may be stable

Popularity61

Solid adoption and visibility

Community28

Small or concentrated contributor base

Maturity83

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 93.1% 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 ~81 days

Recently: every ~104 days

Total

27

Last Release

373d ago

Major Versions

1.5.0 → v2.0.02022-09-18

v2.6.0 → v3.0.02025-03-01

PHP version history (6 changes)v1.0.0PHP ^7.2

v1.3.1PHP ^7.2.5

v1.4.0PHP ^7.3|^8.0

v2.0.0PHP ^8.0

v2.4.2PHP ^8.1

v2.5.0PHP ^8.2

### Community

Maintainers

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

---

Top Contributors

[![peterfox](https://avatars.githubusercontent.com/u/1716506?v=4)](https://github.com/peterfox "peterfox (94 commits)")[![brunodevel](https://avatars.githubusercontent.com/u/4107556?v=4)](https://github.com/brunodevel "brunodevel (1 commits)")[![EricTendian](https://avatars.githubusercontent.com/u/498525?v=4)](https://github.com/EricTendian "EricTendian (1 commits)")[![nessimabadi](https://avatars.githubusercontent.com/u/11637110?v=4)](https://github.com/nessimabadi "nessimabadi (1 commits)")[![pierrebateau](https://avatars.githubusercontent.com/u/15344235?v=4)](https://github.com/pierrebateau "pierrebateau (1 commits)")[![uesley](https://avatars.githubusercontent.com/u/9151402?v=4)](https://github.com/uesley "uesley (1 commits)")[![aand18](https://avatars.githubusercontent.com/u/36073609?v=4)](https://github.com/aand18 "aand18 (1 commits)")[![uintaam](https://avatars.githubusercontent.com/u/295346?v=4)](https://github.com/uintaam "uintaam (1 commits)")

---

Tags

dark-launchdark-launchingfeaturefeature-flagsfeature-togglesflagshacktoberfestlaravellaravel-feature-flagslaravel10laravel11laravel9phpphp8togglesfeature-flagsylsideas

###  Code Quality

TestsPest

Static AnalysisPHPStan, Rector

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/ylsideas-feature-flags/health.svg)

```
[![Health](https://phpackages.com/badges/ylsideas-feature-flags/health.svg)](https://phpackages.com/packages/ylsideas-feature-flags)
```

###  Alternatives

[flagception/flagception-bundle

Feature toggle bundle on steroids.

283.8M](/packages/flagception-flagception-bundle)[friendsofcat/laravel-feature-flag

Feature Flags for Laravel

311.2M](/packages/friendsofcat-laravel-feature-flag)[worksome/feature-flags

A package to manage feature flags in your application

11506.3k](/packages/worksome-feature-flags)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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