From dadd5358cc3313b805b889709a442fec99c9907f Mon Sep 17 00:00:00 2001 From: Daniel Garcia Date: Mon, 21 Jun 2021 16:06:39 +0200 Subject: [PATCH] Add README.md --- README.md | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 68f7ce4..2d19855 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,30 @@ -# MCF-Components-Lib +# MCF-Components -This library exports an unique method to render components using *React* and *Material-UI* through a javascript object where is placed all -the information needed. +Se trata de una librería de componentes de basada en `react` y `material-ui`. Con ella se pueden usar estas librerías definiendo los componentes mediante objetos javascript planos. -The method is **render** +## Entorno de desarrollo -## Installation +La web-app está escrita usando `react` y `material-ui`. -To install the library you can get the repository or install it as a dependency. +Se transpila usando `babel` y se compila con `webpack`. + +El entorno de desarrollo se levanta ejecutando `npm run start` y se puede acceder a él en http://localhost:9000 para ver el funcionamiento durante el desarrollo. + +## Despliegue + +Una vez terminado el desarrollo, se compila el proyecto con el comando `npm run dist`, quedando almacenado los ficheros compilados dentro de la carpeta del proyecto `/dist`. Se despliega por `ftp` subiendo los ficheros compilados al servidor `Services-1`. + +Para el despliege a producción, debe subirse el proyecto a un repositorio `git` el proyecto. Para poder trabajar con diferentes versiones de la biblioteca se emplean tags de git, por lo que una vez que se considera terminada una nueva versión de la misma sería necesario generar un nuevo tag de git con el número de la versión: +```sh +v0.1.3 +``` + +## Arquitectura + +El código de la aplicación se encuentra condensado en el archivo `index.js`, el cual exporta los métodos `render` y `remove`. + +El método `render` genera toda la estructura de componentes react a partir de la definición que se le pasa como primer argumento. Hace falta un segundo argumento: el ID del nodo HTML dentro del cual se quieren generar los componentes de `react`. + +El objeto que define la estructura a construir es pasado a una factoría de componentes que es quien se encarga de formar de forma recursiva todos los elementos. + +El método remove permite eliminar la estructura de componentes creada en un nodo HTML. \ No newline at end of file