Title: Myrk Feature Flags
Author: Bjorn Holine
Published: <strong>September 3, 2026</strong>
Last modified: September 3, 2026

---

Search plugins

![](https://ps.w.org/myrk-feature-flags/assets/banner-772x250.png?rev=3678903)

![](https://ps.w.org/myrk-feature-flags/assets/icon-256x256.png?rev=3678903)

# Myrk Feature Flags

 By [Bjorn Holine](https://profiles.wordpress.org/bjorn2404/)

[Download](https://downloads.wordpress.org/plugin/myrk-feature-flags.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/myrk-feature-flags/#description)
 * [Reviews](https://wordpress.org/plugins/myrk-feature-flags/#reviews)
 *  [Installation](https://wordpress.org/plugins/myrk-feature-flags/#installation)
 * [Development](https://wordpress.org/plugins/myrk-feature-flags/#developers)

 [Support](https://wordpress.org/support/plugin/myrk-feature-flags/)

## Description

WordPress feature flags and feature toggles built for development teams shipping
on complex sites. No external feature flag service, no Redis, no third-party account—
all state lives in your WordPress database.

**Define flags in code. Control state from the admin.**

Register feature flags in your plugin or theme — version controlled and peer reviewable.
Enable, disable, and roll out per environment without code changes or redeploys.

Designed for teams practicing trunk-based development and continuous delivery — 
merge to main confidently and control what users see from the database.

#### Coming from a SaaS feature flag service?

Myrk works differently: your codebase is the source of truth. Flags are declared
with `Myrk::register()` in PHP and committed to your repo — they appear in the admin
automatically. The admin controls state only; it does not create flags. This keeps
your flag inventory version controlled and peer reviewed, the same as everything
else in your codebase.

#### Key features

 * **Code-registered flags** — `Myrk::register()` in PHP, reviewed in Git
 * **Per-environment state** — uses `wp_get_environment_type()` automatically
 * **Progressive rollout** — deterministic percentage rollout, no cookies required
 * **Targeting rules** — role, capability, user ID, email domain
 * **Circuit breaker** — `Myrk::attempt()` wraps risky code with automatic fallback
 * **Stale flag detection** — visual badge for feature toggles inactive 90+ days
 * **REST API** — full CRUD, powers admin UI and CI/CD pipeline automation
 * **WP-CLI** — complete feature flag management from the command line
 * **No external dependencies** — no Redis, no Node, no third-party service

### Source Code

The compiled JavaScript in `build/` is generated from source files in `assets/js/`
using `@wordpress/scripts` (webpack). Both the source and compiled files are included
in the plugin zip. To rebuild the compiled assets, install Node.js dependencies 
with `pnpm install` and run `pnpm build`.

## Screenshots

[⌊Flags list — group badges, enabled/disabled status pills, rollout percentage bars,
target counts, and stale badges across a realistic set of flags.⌉⌊Flags list — group
badges, enabled/disabled status pills, rollout percentage bars, target counts, and
stale badges across a realistic set of flags.⌉[

Flags list — group badges, enabled/disabled status pills, rollout percentage bars,
target counts, and stale badges across a realistic set of flags.

[⌊Groups screen — feature-area groups and sprint groups each showing flag counts
and optional external reference links.⌉⌊Groups screen — feature-area groups and 
sprint groups each showing flag counts and optional external reference links.⌉[

Groups screen — feature-area groups and sprint groups each showing flag counts and
optional external reference links.

[⌊Edit flag (top) — flag definition card alongside the rollout panel (enabled toggle
and percentage slider) and auto-generated PHP/JS code snippets.⌉⌊Edit flag (top)—
flag definition card alongside the rollout panel (enabled toggle and percentage 
slider) and auto-generated PHP/JS code snippets.⌉[

Edit flag (top) — flag definition card alongside the rollout panel (enabled toggle
and percentage slider) and auto-generated PHP/JS code snippets.

[⌊Edit flag (bottom) — behavior settings (lifecycle, default state, rewind strategy)
and a targeting rule locking the flag on for administrators.⌉⌊Edit flag (bottom)—
behavior settings (lifecycle, default state, rewind strategy) and a targeting rule
locking the flag on for administrators.⌉[

Edit flag (bottom) — behavior settings (lifecycle, default state, rewind strategy)
and a targeting rule locking the flag on for administrators.

[⌊Stale flag detection — three flags backdated past the 90-day threshold each displaying
a STALE badge, demonstrating the built-in hygiene signal.⌉⌊Stale flag detection —
three flags backdated past the 90-day threshold each displaying a STALE badge, demonstrating
the built-in hygiene signal.⌉[

Stale flag detection — three flags backdated past the 90-day threshold each displaying
a STALE badge, demonstrating the built-in hygiene signal.

## Installation

 1. Upload the `myrk-feature-flags` directory to `/wp-content/plugins/`.
 2. Activate the plugin in **Plugins > Installed Plugins**.
 3. Navigate to **Myrk** in the admin menu.
 4. Register your first flag in code: `Myrk::register( 'my_flag', [ 'label' => 'My 
    Flag' ] );`

## FAQ

### Does Myrk require any external services?

No. Myrk stores all data in your WordPress database and requires no external infrastructure.

### What PHP version is required?

PHP 8.1 or higher. Myrk targets enterprise WordPress teams on modern hosting stacks.

### How does percentage rollout work?

Myrk uses a deterministic CRC32 hash of the flag key and user identifier. The same
user always gets the same flag state for a given percentage — no cookies required.

### Can I use Myrk for A/B testing?

Yes. The percentage rollout uses deterministic hashing — the same user always sees
the same variant without cookies. Pair it with your existing analytics to track 
outcomes. Myrk controls the split; you measure the results.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Myrk Feature Flags” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ Bjorn Holine ](https://profiles.wordpress.org/bjorn2404/)

[Translate “Myrk Feature Flags” into your language.](https://translate.wordpress.org/projects/wp-plugins/myrk-feature-flags)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/myrk-feature-flags/),
check out the [SVN repository](https://plugins.svn.wordpress.org/myrk-feature-flags/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/myrk-feature-flags/)
by [RSS](https://plugins.trac.wordpress.org/log/myrk-feature-flags/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * Initial release.

## Meta

 *  Version **1.0.0**
 *  Last updated **2 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 7.0 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 8.1 or higher **
 * Tags
 * [a b testing](https://wordpress.org/plugins/tags/a-b-testing/)[developer-tools](https://wordpress.org/plugins/tags/developer-tools/)
   [feature flags](https://wordpress.org/plugins/tags/feature-flags/)
 *  [Advanced View](https://wordpress.org/plugins/myrk-feature-flags/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/myrk-feature-flags/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/myrk-feature-flags/reviews/)

## Contributors

 *   [ Bjorn Holine ](https://profiles.wordpress.org/bjorn2404/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/myrk-feature-flags/)