Saltar al contenido principal

Cómo funciona

drawDB es una sencilla aplicación de ReactJS. A continuación se ofrece una descripción general de alto nivel de cómo se construyen las cosas, pero, en general, si te preguntas cómo funciona algo, lo primero que te viene a la mente es probablemente la respuesta.

Lienzo del editor​

El lienzo es un elemento <svg/> y toda la interacción se maneja a través de eventos de puntero. Las tablas, áreas y notas son elementos <foreignObject/>, las relaciones son <path/> que se calculan en función de las coordenadas y anchos de los campos de inicio y fin.

Almacenamiento de diagramas​

Los diagramas y las tablas se almacenan en el navegador, específicamente en IndexedDB. Dado que todo se almacena en el navegador, antes de restablecer o cambiar a un navegador diferente, si deseas guardar tus diagramas, expórtalos como archivos JSON.

Además, cuando compartes un diagrama, se crea un gist que contiene el diagrama en JSON.

Exportación​

Todas las funciones de exportación toman el diagrama y generan una cadena utilizando plantillas de cadena predefinidas.

Importación​

Puedes importar diagramas desde JSON o desde SQL.

Cuando importas desde SQL, el código fuente se pasa a un analizador y luego el AST resultante se utiliza para construir un objeto de diagrama.

Internacionalización​

i18n se utiliza para la internacionalización. Para agregar un nuevo idioma, todo lo que necesitas hacer es agregar <tu-idioma>.js similar a en.js pero con valores traducidos en src/i18n/locales.


P.D. Si tienes alguna pregunta, contáctame en Discord.