FabricFabricExperiments

Fabric Experiments

A governed, agent-native A/B testing platform — Git-first, signed manifests, lightweight SDKs.

Fabric Experiments is an experimentation platform for teams that want fast A/B test delivery without giving up governance, auditability, or trustworthy measurement.

It combines a Git-first authoring workflow, a hosted control plane, signed edge manifests, lightweight SDKs, warehouse-backed aggregation, and Fabric Harness-powered agents for operational guardrails and analyst readouts.

New here? Pick your path

🚀 60-second quickstart

Install fx, write one YAML file, run an end-to-end exposure → conversion → report cycle on your laptop. No account, no infrastructure.

🏷️ Marketing site (no app code)

Paste one <script> tag from the Fabric CDN, or self-host the same bundle. Run CSS-only experiments declaratively from YAML, with auto-anonymous IDs and dataLayer events.

🧑‍💻 Add the SDK to your app

TypeScript-first browser SDK. Programmatic treatment() / payload() / metadata() API with full TS types and pluggable adapters.

📚 Coming from Mojito JS Delivery?

fx import-mojito converts your wave configs 1:1. Runtime parity for divertTo, manualExposure, holdback, signed previews, and the Trigger DSL.

Building something more advanced?

⚙️ All YAML fields

Complete schema reference: domOps, the Trigger DSL, sharedJs/sharedCss, recipeSampleRate, metadata, and the holdback / sampleRate / weight triad explained with examples.

🔌 Pluggable SDK internals

Custom storage adapters (cookie / localStorage / session / your own), decision adapters for bandits or feature-flag systems, exclusion predicates for bots and consent gating, and separate hooks for variant-code failures.

🌍 Production deployment

Provision Postgres, Vercel, Cloudflare, Databricks, and Temporal for a governed, multi-tenant install with audit forwarding and live-smoke gates.

📦 Self-host on any static CDN

fx publish --static writes a signed manifest + tag-loader bundle to a directory. Upload to S3, R2, GCS — no manifest-worker required.

📊 Analyst tools

Analyst-ready warehouse roll-ups: standalone SQL, a self-contained dbt project, and .Rmd notebooks for CR lift, Bayesian posteriors, and SRM χ².

What you get

  • GitOps authoring — define experiments in YAML and apply them with the fx CLI.
  • Hosted API — Next.js control plane with typed routes, org tenancy, audit events, manifests, and aggregate reporting.
  • Studio UI — web admin for experiments, audit logs, kill actions, login/signup, and SAML settings.
  • Better Auth — email/password, magic links, OAuth, organizations, API keys, admin, and 2FA.
  • Postgres database — standard Postgres schema; Neon recommended for hosted/serverless staging.
  • Cloudflare edge — manifest delivery from KV, exposure/conversion ingestion to R2, scheduled audit export worker, and this docs site.
  • Warehouse aggregation — Databricks staging path plus local warehouse adapter for tests.
  • Agents — SRM watcher and analyst workflows on Fabric Harness + Temporal.

High-level architecture

Current status

M5.1 — implementation-complete for staging, with live infrastructure validation pending. Mojito-parity work is closed top to bottom: runtime DSLs (DOM ops + triggers + previews), SDK pluggables (storage / decision / exclusion / failure hooks), schema sugar (holdback / divertTo / recipeSampleRate / metadata / sharedJs/sharedCss), tag-loader drop-in, signed preview tokens, fx import-mojito, dbt + R analyst marts, and fx publish --static for self-host.

On this page