rulestead

Runtime decisions, made clear.

Typed feature flags, variants, and remote config for Elixir and Phoenix apps — deterministic evaluation, explainable decisions, and fake-backed tests without Postgres on the hot path.

Install {:rulestead, "~> 0.1"} (currently 0.1.x on Hex).

Two version lines: GitHub repo milestones (e.g. v1.0.0 GA, May 2026) track project delivery. Hex packages use 0.1.x semver until a future 1.0 API freeze.

What you get (60 seconds)

Optional sibling package rulestead_admin adds a mounted LiveView operator UI — only when your app needs it.

Install

Host apps need ecto_sql ~> 3.14.

defp deps do
[
{:rulestead, "~> 0.1"},
{:ecto_sql, "~> 3.14"}
]
end
mix deps.get
mix rulestead.install
mix ecto.migrate

Phoenix integrators: follow the Phoenix Integration Spine for supervision → Plug → Rulestead.Runtime → lifecycle-honest flag create.

Runtime entrypoints

Keyed lookup (typical Phoenix path):

Payload-first (tests and tools):

See Evaluation.

Choose your path

You are…Start here
Evaluating before installAdoption Lab demodocker compose up --build
Integrating into PhoenixGetting StartedInstallation
Operating flagsFlag LifecycleAdmin UI
Supporting usersExplainability
TestingTesting recipes

Monorepo and docs

Full guide index: hexdocs.pm/rulestead

GitHub monorepo (demo app, contributing, maintainer docs): github.com/szTheory/rulestead