v1 · TypeScript · zero-dep core
One evaluation engine. Deterministic bucketing. React, Angular, and SSR adapters that share the same core instead of reimplementing it.
npm install @useoptimus/coreSame id, same seed, same bucket — every time, across every server. Reseeding remaps the whole rollout deterministically; nothing here is random per-request.
Boolean, variant, and value flags share one evaluation path. Kill switches, A/B tests, and dynamic config are just presets over the same core.
The server evaluates once and serializes a snapshot. The client hydrates from it — no re-run on mount, no flicker.
Bucketing keys are yours to configure; the salt composition (id:flag:seed) is the library's job, always. You can't forget it.
@useoptimus/core never imports React, Angular, or window. Run it in a Worker, a Node server, or a browser — same engine, same result.
React
@useoptimus/react
Angular
@useoptimus/angular
Node / SSR
@useoptimus/node