Myrk Feature Flags

外掛說明

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 flagsMyrk::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 breakerMyrk::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.

螢幕擷圖

安裝方式

  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' ] );

常見問題集

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.

使用者評論

這個外掛目前沒有任何使用者評論。

參與者及開發者

以下人員參與了開源軟體〈Myrk Feature Flags〉的開發相關工作。

參與者

將〈Myrk Feature Flags〉外掛本地化為台灣繁體中文版

對開發相關資訊感興趣?

任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄

變更記錄

1.0.0

  • Initial release.