Introducción

Kerros es un pequeño puente entre los Hooks de React, la propiedad expresada por Context y las suscripciones precisas de un Store externo.

El estado sigue siendo un Hook normal:

function useCounterStoreValue() {
  const [count, setCount] = useState(0)
  return { count, setCount }
}

const [useCounter, CounterProvider] = createStore(useCounterStoreValue)

El Provider decide dónde existe el Store. El selector decide qué cambios observa un componente.

El problema que resuelve

React Context modela bien la propiedad y la inyección de dependencias, pero cambiar el Context value invalida todos los consumers. Un Store externo a nivel de módulo ofrece suscripciones precisas, aunque es global por defecto y suele introducir otro modelo de estado.

Kerros mantiene ambos límites explícitos:

TemaRespuesta de Kerros
Modelo de estadoHooks de React normales
PropiedadPosición del Provider
ActualizacionesSuscripciones useSyncExternalStore
RenderizadosSelector de objeto con comparación superficial
Varias instanciasMontar el Provider varias veces
Datos entre StoresProviders anidados en una dirección

Context solo transporta un contenedor de suscripción estable. El Hook del Store publica snapshots confirmados y cada componente se suscribe únicamente a su proyección.

Cuándo encaja

  • estado perteneciente a una ruta, workspace, editor, sesión o subárbol funcional
  • uso directo de Hooks de React o SDK dentro del Store
  • suscripciones precisas sin un gran dominio global de renderizados
  • inicialización de una instancia mediante props del Provider
  • instancias aisladas en pruebas

Las dependencias entre Stores deben ser unidireccionales. Si B lee A, monta A por fuera y evita que A vuelva a leer B.

Continúa con Primeros pasos o Composición de Stores.