Este repositorio contiene una plantilla de aplicación web de pila completa que se ejecuta en la pila de soluciones FARM, que significa:
La pila FARM es más o menos una extensión de la pila LAMP con estos cambios notables:
Flask se utiliza para escribir las API web/middleware que pueden comunicarse entre la interfaz de usuario web y el backend/base de datos web. Este es el núcleo de toda la aplicación que une las piezas de la aplicación de pila completa.
Tenga en cuenta que esta plantilla en particular no utiliza un ORM, sino que utiliza el módulo pymysql
. Esto significa que los desarrolladores necesitan escribir consultas SQL, pero pueden maximizar la complejidad de las consultas que necesitan ejecutar en la base de datos.
AWS es el servicio en la nube en el que se puede alojar la aplicación. Podemos alojar toda la pila de software en los siguientes servicios:
Esto significa que los desarrolladores pueden mantener todo en una plataforma y minimizar el trabajo de DevOps/TI.
React es el marco en el que se ejecuta la interfaz de usuario web. La aplicación React también se puede ejecutar en AWS Lambda con NodeJS.
Esta plantilla utiliza JavaScript/JSX, pero también se puede utilizar TypeScript.
MySQL es la base de datos relacional que utiliza el backend web. Este también se puede alojar en AWS a través de su servicio RDS.
Para ejecutar esta aplicación web, se debe hacer lo siguiente:
db/
Para configurar la instancia de MySQL, siga estos pasos:
mysql
en la interfaz de línea de comandos de Linux.sample.sql
dentro de la instancia. Creará un esquema llamado SampleInventory
y luego inicializará una tabla llamada Inventory
. El código base para la API de Flask se puede encontrar en el directorio api/
.
virtualenv farm-stack
después de navegar a ese directorio.source farm-stack/bin/activate
api/
y ejecute pip3 install -r requirements.txt
para instalar todos los módulos de Python necesarios para la API.dbcreds.py
en el directorio api/
y edite las credenciales de la base de datos según sea necesario. python3 app.py
para ejecutar la API en http://localhost:8080
. El código base para la interfaz de usuario de React se puede encontrar en el directorio ui/
. Esta plantilla utiliza yarn
como administrador de paquetes; Es fundamental que los desarrolladores no mezclen otros administradores de paquetes como npm
al agregar nuevos módulos.
Tenga en cuenta que en esta plantilla faltan paquetes como react-bootstrap
.
yarn install
para instalar todas las dependencias necesarias. yarn start
a ejecutarse en modo de desarrollo.http://localhost:3000
en el navegador.