Indice
En este proyecto combinamos nuestros conocimientos adquiridos en las tecnologías NodeJS, Express, MySql y Sequelize. Enfocamos el proyecto hacia la parte del backend, que consistirá en una tienda online (E-Commerce). En este caso hemos optado por basarnos en una tienda de libros donde los usuarios pueden registrarse, iniciar sesión, consultar los libros que están a la venta y realizar pedidos.
Aquí presentamos las herramientas empleadas en este proyecto:
Dadas las necesidades del proyecto, hemos desarrollado una API REST que cumple las siguintes características:
- Permite registrar usuarios haciendo uso de Bcrypt.
- Login de usuarios (sirviendonos de Tokens y Middlewares).
- Que sea capaz de crear un CRUD.
- Cuenta con relaciones Many to Many y One to Many.
- Utilización de seeders.
-
Para la instalación de la aplicación has de clonarte el siguiente repositorio:
git clone https://github.com/Santiremix/E-Commerce
-
Tambien has de instalar las dependencias del proyecto:
npm install
Esta es una lista de los Endpoints del proyecto que puedes ejecutar en Postman:
Metodo | Endpoint | Rol | Funcion |
---|---|---|---|
POST | /users/createUser |
user | Crear nuevo usuario |
POST | /users/login |
user | Login |
DELETE | /users/logout |
user | Logout |
GET | /users/UserOrder |
user | Pedidos por usuario |
POST | /books/addBooks |
manager | Añadir libros a base datos |
GET | /books/getBooks |
user | Recibe lista de libros |
DELETE | /books/deleteBook/id/:id |
manager | Borrar libro por id |
GET | /books/id/:id |
user | Buscar libro por id |
PUT | /books/:id |
admin | Actualizar datos de un libro |
GET | /books/search/title/:title |
user | Buscar libros por título |
GET | /books/search/price/:price |
user | Buscar libros pro precio |
GET | /books/getBooksOrdered |
user | Recibe lista libros ordenado |
POST | /orders/createOrder |
user | Crear pedido |
GET | /orders/getAll |
user | Recibe lista de pedidos |
POST | /genres/addGenre |
manager | Añadir género |
GET | /genres/getGenreById/:id |
user | Busca género por id |
GET | /genres/getGenreByName/:name |
user | Busca género por nombre |
GET | /genres/getGenre |
user | Lista total de géneros con sus libros |
GET | /genres/getAll |
user | Lista total de géneros |
DELETE | /genres/deleteGenre/:id |
manager | Borra un género por su id |
- Hemos perfeccinado el trabajo en equipo mediante Git haciendo uso de distintas ramas de desarrollo para cada aspecto requerido en el proyecto.
- Nos hemos servido de Trello para organizar la distribución del trabajo y optimizar el proceso.
- Hemos perfeccionado la realización de pruebas API con el uso de Postman.
Este programa es de código abierto y puede ser utilizado por cualquier persona que lo desee.
Santiago - gitHub
Jorge - gitHub
- Uso de Node.js
- Sequelize
- Relaciones BBDD
- Creación CRUD
- Utilización Seeders
- Modelo Vista Cliente (MVC)
- Uso de ramas en Git
- Gestor de paquetes NPM