Flags

Activálo nuevo.A tu ritmo.

Un flag, dos caminos. Elegí qué experiencia mostrar en cada entorno y qué hacer cuando el proveedor no responde.

SDK propio · instalación local · sin publicar en npm

new-checkoutboolean
OFF

Lo de siempre.

El camino conocido
ON

Lo que viene.

La nueva experiencia
Decisiones pequeñas.
Cambios que se notan.
ON / OFF
Con una salida prevista.

Tocá el switch.
Mirá qué cambia.

Esta tienda es inventada. La decisión es real: un booleano elige una experiencia; el fallback cubre la ausencia de un valor válido.

Tu decisión Demo local
new-checkoutCheckout simplificado

Si no hay un valor válido, tu aplicación elige.

El valor del fallback se aplica al simular una caída del proveedor.

Resultadotrue
Origenremote
MotivoREMOTE

Staging entrega true. Se muestra el checkout simplificado.

casa / objetoCompra de ejemplo
Un objeto, mil lugares.

Florero Arco

Arcilla · arena · una unidad

$ 28.000 ARS · precio ficticio
Todo en un pasoNuevo checkout

Menos vueltas.
El mismo florero.

Tu compra, resuelta.Entrega y pago en un solo paso.

Vista de ejemplo. No procesa compras ni pagos.

El fallback
no es un detalle.

Es la decisión que ya tomaste cuando los datos no llegan.

Clave desconocida, valor vencido o proveedor no disponible: cada evaluación vuelve al booleano que definiste. false o true. Siempre explícito.

getBooleanValue('new-checkout', false)Tu aplicación decide este valor.

Un flag cambia una experiencia. Los permisos de cada operación se comprueban en tu servidor.

Una clave.
Un booleano.
Tu proveedor.

El núcleo funciona por su cuenta. Cargás la proyección cuando tu aplicación lo necesita y consultás el flag con su fallback.

No depende de ASIDE, Reports ni Toolkit. El adaptador React es opcional.

Instalación desde el archivo entregado
npm install ./aside-flags-0.1.1.tgz

Paquete propio, todavía sin publicación en npm.

Ejemplo local · API real
import { createFlagsClient } from '@aside/flags';

const flags = createFlagsClient({
  provider: async () => ({
    revision: 'demo-1',
    validUntil: new Date(Date.now() + 30_000).toISOString(),
    flags: [{ key: 'new-checkout', value: true }],
  }),
});

await flags.load();
const enabled = flags.getBooleanValue('new-checkout', false);

flags.dispose();

El proveedor de este ejemplo genera datos sintéticos. No hace solicitudes.

El otro mundo está debajo del mouse.