Skip to content

Latest commit

 

History

History
102 lines (71 loc) · 4.29 KB

README_es.md

File metadata and controls

102 lines (71 loc) · 4.29 KB

Node Logo Proyecto Trybe Smith Node Logo

🌐 Português Español English Русский 中文 العربية

Vista previa de la aplicación

📜 Descripción

Este es un proyecto evaluativo desarrollado en el módulo de BackEnd del curso de Desarrollo Web de Trybe. El proyecto involucró el uso de Typescript, Sequelize y JWT. A lo largo del desarrollo, se mejoraron varias habilidades:

  • Manipulación de pruebas
  • Uso de la arquitectura MSC (Modelo-Servicio-Controlador)
  • Creación de rutas para crear, leer y actualizar información
  • Autenticación de rutas

Este proyecto consistió en la creación de una tienda de artículos medievales utilizando Typescript y Sequelize. El enfoque principal fue en el desarrollo de las capas de Service y Controllers.

🛠️ Tecnologías Utilizadas

  • Node.js
  • Express
  • Typescript
  • Sequelize
  • MySQL
  • JWT (JSON Web Token)
  • Docker y Docker Compose

📂 Estructura del Proyecto

El proyecto está estructurado de acuerdo con la arquitectura MSC, donde las responsabilidades están separadas entre Modelo, Servicio y Controlador. A continuación se presentan algunas de las principales rutas implementadas:

Rutas

  • POST /login: Realiza el inicio de sesión del usuario.
  • POST /products: Agrega un nuevo producto (valida nombre y precio).
  • GET /products: Devuelve todos los productos registrados.
  • GET /orders: Devuelve todos los pedidos registrados.
  • POST /orders: Crea un nuevo pedido (valida JWT, ID del usuario y ID del producto).

Middlewares

El proyecto utiliza varios middlewares para la validación, incluyendo:

  • validateProducts: Valida los datos del producto (nombre y precio).
  • validateUser: Valida los datos del usuario.
  • validateProductById: Valida la existencia del producto por ID.
  • validateJWT: Valida el token JWT para la autenticación.

🚀 Ejecución del Proyecto

Para ejecutar el proyecto, sigue los pasos a continuación:

Requisitos Previos

  • Tener Docker y Docker Compose instalados.
  • Tener Node.js instalado (opcional, si deseas ejecutar localmente sin Docker).

Pasos para Ejecutar

  1. Clona el repositorio:

    git clone https://github.com/seu_usuario/trybe-smith.git
    cd trybe-smith
  2. Crea un archivo .env en la raíz del proyecto con las siguientes variables de entorno:

    DB_USER=root
    DB_PASSWORD=password
    DB_HOST=db
    DB_PORT=3306
    DB_NAME=Trybesmith
    JWT_SECRET=secret
    
  3. Ejecuta Docker Compose para construir e iniciar los contenedores:

    docker-compose up --build
  4. Accede a la API en tu navegador o herramienta de API (como Postman) en http://localhost:3001.

🔗 Otros Proyectos