Add README.md

This commit is contained in:
Daniel Garcia 2021-06-21 16:06:39 +02:00
parent d5100b3fb9
commit dadd5358cc

View file

@ -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.