wandres.dev
Signals, derivación y el estado del servidor

Domina Fundamentos de Estado
hasta nivel dios

Los cimientos de la reactividad: signals y observables, derivación, inmutabilidad, sincronización, el estado del servidor, la URL, formularios y local-first.

La ruta

30 niveles, de novato a dios

Cada nivel construye sobre el anterior. Sin saltos, sin huecos.

Ontología Nivel 0 · El mapa del estado

La visión aérea de la reactividad: primitivos, derivación, inmutabilidad, el estado del servidor y las arquitecturas. El mapa mental de toda la categoría.

Mapa mentalEstado

Qué es el estado Nivel 1 · la raíz de la complejidad

Qué es "estado" y por qué es la mayor fuente de complejidad en una app; estado esencial vs accidental, y la meta de domarlo.

estadocomplejidadteoría

Taxonomía del estado Nivel 2 · local, global, servidor, URL

Las clases de estado: local de UI, global de cliente, del servidor (cache), de la URL, y de formularios; cada una pide una herramienta distinta.

taxonomíaservidorURL

Primitivos de reactividad Nivel 3 · observer y pub/sub

Los cimientos: el patrón observer, pub/sub, y cómo un cambio propaga a quien lo escucha; la base de todo sistema reactivo.

observerpub/subreactividad

Signals Nivel 4 · el modelo y TC39

Signals: getter/setter con tracking automático de dependencias; el modelo, su auge en 2026, y el TC39 Signals proposal.

signalsTC39tracking

Observables Nivel 5 · RxJS y streams

El modelo push de los observables: streams de eventos en el tiempo, operadores, y RxJS; cuándo un stream y cuándo un signal.

observablesRxJSstreams

Derivación Nivel 6 · memos y selectores

Estado derivado: valores computados a partir de otros (memos, selectores), memoización, y por qué derivar es mejor que duplicar.

derivarselectorsmemo

Inmutabilidad Nivel 7 · structural sharing

Por qué la inmutabilidad domina el estado: comparación por referencia, structural sharing, Immer, y el coste real de copiar.

inmutableImmerreferencia

El problema de sincronizar Nivel 8 · glitches y consistencia

La dificultad central de la reactividad: glitches, estados intermedios inconsistentes, orden de actualización, y la propagación glitch-free.

glitchesconsistenciaorden

Estado del servidor Nivel 9 · TanStack Query, SWR

El estado del servidor NO es estado de cliente: es una cache. TanStack Query y SWR; fetching, cache, revalidación, y por qué separarlo.

TanStack QuerySWRcache

Estado en la URL Nivel 10 · el router como estado

La URL como fuente de verdad: search params, deep linking, estado compartible y navegable; cuándo el estado debe vivir en la URL.

URLrouterparams

Formularios como estado Nivel 11 · el caso difícil

Los formularios son estado complejo: valores, validación, dirty/touched, envío; librerías (React Hook Form, TanStack Form) y el enfoque no controlado.

formulariosvalidaciónforms

Actualizaciones optimistas Nivel 12 · sincronizar con el servidor

Optimistic updates: mostrar el resultado esperado antes de la confirmación y revertir si falla; reconciliar el estado local con el del servidor.

optimistasyncrollback

Persistencia y offline Nivel 13 · hidratación y estado local

Persistir el estado (localStorage, IndexedDB), hidratarlo al arrancar, y el estado offline; los peligros de la hidratación en SSR.

persistenciahidrataciónoffline

La familia unidireccional Nivel 14 · Redux, Elm, TCA, MVI

Comparar los primos: Redux, Elm, TCA y MVI comparten el ADN unidireccional; qué los une, qué los diferencia, y qué aprender de cada uno.

comparaciónunidireccionalpatrones

Elegir arquitectura Nivel 15 · el árbol de decisión

El criterio unificado: signals vs store vs máquina vs arquitectura formal; separar estado de servidor, cliente y UI; el árbol de decisión completo.

decisiónarquitecturacriterio

Local-first y CRDTs Nivel 16 · el futuro del estado

Local-first: CRDTs (Yjs, Automerge), sincronización sin conflictos, y motores como Electric/Zero; el estado que vive en el cliente y converge.

local-firstCRDTsync

Event sourcing y CQRS Nivel 17 · el estado como log

Guardar los eventos en vez del estado: event sourcing, proyecciones, CQRS, y por qué el log es la fuente de verdad definitiva.

event sourcingCQRSlog

Undo, redo y time travel Nivel 18 · historia del estado

Implementar deshacer/rehacer: pilas de estados, comandos inversos, y el time-travel debugging que habilita la inmutabilidad.

undotime travelhistoria

Estado colaborativo Nivel 19 · tiempo real y presencia

Varios usuarios sobre el mismo estado: OT vs CRDT, presencia, cursores, y resolver conflictos en tiempo real.

colaborativoCRDTpresencia

Estado en SSR Nivel 20 · serializar e hidratar

El estado que cruza del servidor al cliente: serialización, hidratación, mismatches, y el estado por petición sin filtrar entre usuarios.

SSRhidrataciónserializar

Tipar el estado Nivel 21 · hacer imposible lo inválido

TypeScript al servicio del estado: uniones discriminadas, estados imposibles no representables, y validación con Zod en las fronteras.

TypeScripttiposZod

Testing del estado Nivel 22 · lógica sin UI

Testear la lógica de estado aislada de la vista: reducers puros, máquinas, stores, y el testing basado en propiedades y en modelos.

testingreducersproperty

Depurar la reactividad Nivel 23 · por qué no se actualiza

El arte de depurar estado: DevTools, trazar el grafo de dependencias, y los diagnósticos de "no reacciona" o "reacciona de más".

debugDevToolsgrafo

Rendimiento del estado Nivel 24 · el coste de reaccionar

Medir y optimizar: granularidad de las suscripciones, re-renders innecesarios, memoización, y el coste real de cada modelo.

rendimientogranularidadrenders

Concurrencia y estado Nivel 25 · carreras y transiciones

Estado y asincronía: condiciones de carrera lógicas, cancelar peticiones obsoletas, transiciones concurrentes, y la última escritura gana.

concurrenciaracescancelar

Anti-patrones Nivel 26 · síntomas y refactor

Los errores clásicos: estado duplicado, todo en global, estado derivado guardado, y el catálogo de refactors que los curan.

antipatronesrefactorsíntomas

Estado a escala Nivel 27 · equipos y dominios

Organizar el estado en una app grande: fronteras por dominio, estado de feature vs compartido, y convenciones que sobreviven al equipo.

escaladominiosequipo

El futuro de la reactividad Nivel 28 · hacia dónde va

Lo que viene: signals estandarizados en el lenguaje, async transparente, local-first por defecto, y la convergencia entre frameworks.

futuroTC39convergencia

Nivel Dios: síntesis Nivel 29 · la teoría del estado

La teoría unificada: todo estado es reactividad + una disciplina de mutación; conectar signals, máquinas y arquitecturas en un solo modelo mental.

síntesisteoríaPhD
146lecciones
30niveles
0→∞de cero a dios

¿Listo para dominar Fundamentos de Estado?

Empieza por los fundamentos y sube nivel a nivel hasta el dominio total.

Comenzar el camino →