API de gestión de pedidos del restaurante Delilah Restó
Se utilizo Node.js y express.js para su desarrollo.
Link del repositorio en github: https://github.com/ushu3323/delilah-resto
Responsable de responder a las peticiones http
Ofrece una interfaz web para mostrar la documentación
Convierte un archivo .yaml a objeto javascript, útil para poder mostrar la documentación (realizado en el archivo swagger.yaml
) con la dependencia swagger-ui-express
Permite encriptar información delicada como contraseñas que luego será enviada/recibida de manera segura entre servidor y cliente
Utilizado para crear, leer, actualizar y eliminar datos en la base de datos sql a través del modelo de programación ORM
Además de tener instalado node.js y el administrador de paquetes npm, para poder utilizar el servidor en su equipo, se requiere MariaDB (O a traves de Xampp) previamente instalado.
$ git clone https://github.com/ushu3323/delilah-resto.git
$ cd delilah-resto
$ npm i
Los pasos a seguir de este punto pueden variar dependiendo de como haya optado por obtener MariaDB y de que sistema operativo este utilizando...
Por ejemplo, para XAMPP en windows basta con ir al panel principal e iniciar el servidor con el boton Start
que se encuentra a la derecha del modulo MySQL, luego para acceder al CLI, tienes que presionar el boton Shell
para abrir una consola que esta ubicado en la carpeta de XAMPP, ejecutas cd mysql/bin
y ya puedes seguir con el punto 3 que esta a continuación.
Iniciar CLI de mysql/mariadb y crear una nueva base de datos:
$ mysql -uroot --password
# ...
MariaDB [(none)]> CREATE DATABASE delilah_resto; # Puede cambiar el nombre a uno que desee
Copie el contenido de .env.example
, peguelo en un archivo nuevo llamado .env
y modifique los campos que sean necesarios:
# Puerto de node en donde escuchará el servidor
NODE_PORT = 5000
# Credenciales para el usuario root/admin del servicio
ADMIN_EMAIL = 'admin@example.com'
ADMIN_PASSWORD = 'admin'
# Credenciales de la base de datos
DB_HOST = 'localhost'
DB_USER = 'root'
DB_PASSWORD = '' # Deje en blanco si no posee
DB_PORT = '3306' # Puerto en donde el servidor sql escucha
DB_NAME = 'delilah_resto_test' # Nombre de la base de datos creada previamente
# Clave privada de JWT
KEY = 'jwtkey'
Ejecute el comando npm run sync -- -s -r
para crear las tablas necesarias para la api y generar el usuario administrador
NOTA: Antes de ejecutar la rutina de tests (
npm test
) se recomienda utilizar una base de datos completamente distinta a la de producción
npm test # Ejecuta las rutinas de tests con Mocha
npm start # Inicia la API en modo producción
npm run dev # Inicia la API en modo desarrollador
npm run sync # Utilidad que permite inicializar la base de datos
Un vez iniciada la API, la documentación se puede encontrar en /docs
.