Saltar al contenido
Caso · 02 / 09← Todos los trabajos

Reality Graph

Un mapa interactivo de la materia: elementos, compuestos, materiales e inventos, y cómo se conectan.

Rol
Proyecto personal: diseñado y construido de punta a punta
Stack
React 19, TypeScript, Zustand, D3, React Three Fiber, GSAP
Tabla periódica
Tabla periódicaLas aristas del grafo se derivan de los datos, no se guardan
(01) El problema

Una tabla periódica muestra los elementos de a uno. No muestra que el hierro termina en el acero, y el acero en una locomotora a vapor. Quería un lugar para recorrer esos vínculos. También tenía que dejarte armar una molécula y probar una reacción.

Mi rolDiseñé el modelo de datos y la interfaz, y escribí todo el código.
(02) ResultadosContados en el código
118elementos en la tabla periódica
351entidades en el grafo de relaciones
4simuladores: reacciones, estequiometría, qué pasaría si y presión
(03) Arquitectura

Tres decisiones que lo definieron.

  1. 01

    Las aristas del grafo se derivan de los datos, no se guardan

    Por qué. Un compuesto lista sus elementos y un invento lista sus requisitos. El grafo se arma con esos campos, así que sumar una entidad suma sus vínculos.

    El costo. Solo existen los vínculos que entran en un campo. El grafo entero se calcula al cargar el módulo.

  2. 02

    D3 maneja el SVG, React maneja los filtros

    Por qué. La simulación de fuerzas, el zoom y las etiquetas corren en D3 dentro de un efecto. Los filtros viven en un store de Zustand y deciden qué nodos le llegan.

    El costo. Cualquier cambio de filtro borra el SVG y reinicia la simulación, así que el layout salta.

  3. 03

    Undo por snapshots en el editor, moléculas guardadas en IndexedDB

    Por qué. Cada edición guarda una copia de átomos y enlaces, con un tope de 50 pasos. Dexie conserva las moléculas guardadas entre sesiones sin servidor.

    El costo. Los snapshots copian la molécula entera en cada paso. Lo guardado queda en ese navegador.

(04) GaleríaSeguí scrolleando →
Tabla periódica
Tabla periódica · Seis modos de color, de categoría a año de descubrimiento. Cada elemento abre su propia ficha.
Grafo de relaciones
Grafo de relaciones · Un layout de fuerzas en D3 con filtros por tipo, modo solo vecinos y clic para ir a cada entidad.
Editor molecular
Editor molecular · Soltás átomos, trazás enlaces y el editor busca la fórmula en la lista de compuestos.
Simuladores
Simuladores · Reacciones, una calculadora estequiométrica, un explorador de escenarios y un simulador de presión.
(05) Qué haría después
01Usar los enlaces al identificar una molécula. Hoy compara solo la fórmula de Hill, así que los isómeros se confunden.
02Darle geometría real a la vista 3D. Hoy ubica los átomos en un plano, con las coordenadas del editor 2D.
03Mantener viva la simulación de D3 entre filtros y actualizar los nodos en el lugar, para que el layout no salte.
Próximo proyecto · 03 / 09
Nexora →Un CRM inmobiliario white-label para Liliana Cappelli
Caso · 02 / 09

Reality Graph

Un mapa interactivo de la materia: elementos, compuestos, materiales e inventos, y cómo se conectan.

Rol
Proyecto personal: diseñado y construido de punta a punta
Stack
React 19, TypeScript, Zustand, D3, React Three Fiber, GSAP
Reality Graph
(01) El problema

Una tabla periódica muestra los elementos de a uno. No muestra que el hierro termina en el acero, y el acero en una locomotora a vapor. Quería un lugar para recorrer esos vínculos. También tenía que dejarte armar una molécula y probar una reacción.

Mi rolDiseñé el modelo de datos y la interfaz, y escribí todo el código.
(02) Resultados
118elementos en la tabla periódica
351entidades en el grafo de relaciones
4simuladores: reacciones, estequiometría, qué pasaría si y presión
(03) Arquitectura

Tres decisiones que lo definieron.

01

Las aristas del grafo se derivan de los datos, no se guardan

Por qué. Un compuesto lista sus elementos y un invento lista sus requisitos. El grafo se arma con esos campos, así que sumar una entidad suma sus vínculos.

El costo. Solo existen los vínculos que entran en un campo. El grafo entero se calcula al cargar el módulo.

02

D3 maneja el SVG, React maneja los filtros

Por qué. La simulación de fuerzas, el zoom y las etiquetas corren en D3 dentro de un efecto. Los filtros viven en un store de Zustand y deciden qué nodos le llegan.

El costo. Cualquier cambio de filtro borra el SVG y reinicia la simulación, así que el layout salta.

03

Undo por snapshots en el editor, moléculas guardadas en IndexedDB

Por qué. Cada edición guarda una copia de átomos y enlaces, con un tope de 50 pasos. Dexie conserva las moléculas guardadas entre sesiones sin servidor.

El costo. Los snapshots copian la molécula entera en cada paso. Lo guardado queda en ese navegador.

(04) Galería
Tabla periódica
Tabla periódica · Seis modos de color, de categoría a año de descubrimiento. Cada elemento abre su propia ficha.
Grafo de relaciones
Grafo de relaciones · Un layout de fuerzas en D3 con filtros por tipo, modo solo vecinos y clic para ir a cada entidad.
Editor molecular
Editor molecular · Soltás átomos, trazás enlaces y el editor busca la fórmula en la lista de compuestos.
Simuladores
Simuladores · Reacciones, una calculadora estequiométrica, un explorador de escenarios y un simulador de presión.
(05) Qué haría después
01Usar los enlaces al identificar una molécula. Hoy compara solo la fórmula de Hill, así que los isómeros se confunden.
02Darle geometría real a la vista 3D. Hoy ubica los átomos en un plano, con las coordenadas del editor 2D.
03Mantener viva la simulación de D3 entre filtros y actualizar los nodos en el lugar, para que el layout no salte.
Próximo proyectoNexora →
Nahuel SantillánES