Para el challenge de Atom decidĂ hacer uso de la arquitectura MVC para tener un cĂłdigo modular que me ayude a facilitar las pruebas y la escalabilidad.
Las tecnologĂas que usĂ© para el backend fueron Express y Typescript, Firestore como base de datos NoSQL y Jest para las pruebas unitarias.
El proyecto consiste en un API REST de tasks que nos permitirá crear, actualizar y eliminar una tarea además de listar todas las tareas existentes.
- Node JS
- Yarn
- Firebase
- Ejecuta el comando
yarn install
para instalar las dependencias. - Copia el contenido de archivo
.env.example
a.env
y completa los campos. - Para correr el servidor en desarrollo puedes usar el comando
yarn dev
Para obtener los las llaves necesarias de Firebase en el .env
deberás entrar a Configuración del proyecto / Cuentas de servicio, allà podrás generar una clave privada que te proporcionará los datos requeridos para probar el proyecto.
-
GET: /tasks
-
Output
[ { "id": "", "title": "", "description": "", "status": "" } ]
-
-
POST: /tasks
-
Input
{ "title": "", "description": "", "status": "" }
-
Output
{ "id": "", "title": "", "description": "", "status": "" }
-
-
PUT: /tasks/{id}
-
Input
{ "title": "", "description": "", "status": "" }
-
Output
{ "id": "", "title": "", "description": "", "status": "" }
-
-
DELETE: /tasks/{id}
- Ejecuta el comando
yarn test
y valida que todos los tests hayan pasado.