/atom-test

Primary LanguageTypeScript

Atom - Tasks API REST Challenge đź“‹

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.

API 🚀

Link de la API deployada

Requirements

  • Node JS
  • Yarn
  • Firebase

Pasos para correr el proyecto

  1. Ejecuta el comando yarn install para instalar las dependencias.
  2. Copia el contenido de archivo .env.example a .env y completa los campos.
  3. Para correr el servidor en desarrollo puedes usar el comando yarn dev

Detalles de Firebase

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.

Detalles del Servidor

Endpoints

  • 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}

Pasos para ejecutar y validar las pruebas en desarrollo

  1. Ejecuta el comando yarn test y valida que todos los tests hayan pasado.

GalerĂ­a

image