Contenido 📝
Este proyecto requería realizar una base de datos con MySQL, Express y Sequelize. Además, debe contar con una relación de uno a muchos y otra de muchos a muchos como mínimo.
Se trata de una app tipo To Do List en la que el usuario puede registrarse y crear tarjetas con tareas, para organizar sus cosas a hacer. Las tareas pueden tener una fecha y hora objetivos, se pueden marcar o desmarcar como completadas.
Tecnologías utilizadas:
- Clonar el repositorio
$ npm install- Conectamos nuestro repositorio con la base de datos
$ Ejecutamos las migraciones$ Ejecutamos los seeders$ npm run dev
Endpoints
-
AUTH
-
REGISTER
POST http://localhost:3000/auth/register/
body:
{ "user_name": "Nuevo", "email": "nuevo@usuario.com", "password": "12345678" }
-
LOGIN
POST http://localhost:3000/auth/login/
body:
{ "email": "nuevo@usuario.com", "password": "12345678" }
-
-
USERS
-
GET ALL USERS
GET http://localhost:3000/users?page=1 -
GET MY PROFILE
GET http://localhost:3000/users/profile -
UPDATE MY PROFILE
POST http://localhost:3000/users/update-profile
body:
{ "user_name": "username34", "first_name": "New", "last_name": "User", "email": "new@user.com", "birthday": "2000-01-01" }
-
GET MY CARDS TASKS
GET http://localhost:3000/users/user-cards-tasks -
CREATE CARD
POST http://localhost:3000/users/create-cardbody:
{ "title": "this is a card", }
-
UPDATE CARD
POST http://localhost:3000/users/update-card/{card id}body:
{ "title": "this is still a card" , }
-
CREATE TASK
POST http://localhost:3000/users/create-task/{card id}body:
{ "description": "this is your task", "target_timer": "yes", "limit_date": "2023-12-31", "limit_time": "20:00", "is_completed": "no" }
-
UPDATE TASK
POST http://localhost:3000/users/update-task/{task id}body:
{ "description": "this is still your task", "target_timer": "yes", "limit_date": "2023-12-24", "limit_time": "15:00", "is_completed": "no" }
-
DELETE CARD
DEL http://localhost:3000/users/delete-card/{card id} -
DELETE TASK
DEL http://localhost:3000/users/delete-task/{task id}
-
Para conseguir mi objetivo he recopilado información de:
