METHOD | ENDPOINT | TOKEN | ROLE | DESCRIPTION | PARAMS | RETURNS |
---|---|---|---|---|---|---|
POST | /auth/signup | - | - | User Sign Up | user_name, user_nickname, image_url, email, date_of_birth, password, confirm_password | token |
POST | /auth/login | - | - | Delete skills from DB | email, password | token |
METHOD | ENDPOINT | TOKEN | ROLE | DESCRIPTION | PARAMS | RETURNS |
---|---|---|---|---|---|---|
GET | /user | YES | Admin | Get all users | - | [{ users }] |
GET | /user/me | YES | All | Get own user | user_id | { user } |
GET | /user/me/user_media | YES | All | Get user_media | user_id | [{user.preferences}] |
GET | /user/:userId | YES | Admin | Get one user | user_id | { user } |
GET | /user/:userId/user_media | YES | Admin | Get user_media | user_id | [{user.preferences}] |
PUT | /user/me | YES | All | Update own user | user_id | "User updated" |
PUT | /user/:userId | YES | Admin | Update user | user_id | "User updated" |
POST | /user/me/user_media/:mediaId | YES | All | Add user select to user_media | user_id, media_id | [{user.preferences}] |
POST | /user/:userId | YES | Admin | Create user | user_id | "User created" |
DELETE | /user/me | YES | All | Remove own user | user_id | "User updated" |
DELETE | /user/:userId | YES | Admin | Remove one user | user_id | "Profile deleted" |
METHOD | ENDPOINT | TOKEN | ROLE | DESCRIPTION | PARAMS | RETURNS |
---|---|---|---|---|---|---|
GET | /media | YES | All | Get all media | - | [{ media }] |
GET | /media/random | YES | All | Get random media | media_id | { media } |
GET | /media/:mediaId | YES | All | Get one media | media_id | { media } |
PUT | /media/:mediaId | YES | Admin | Update media | media_id | "Media updated" |
POST | /media | YES | Admin | Create media | body | { media } |
DELETE | /media/:mediaId | YES | Admin | Remove one media | media_id | "Media deleted" |
METHOD | ENDPOINT | TOKEN | ROLE | DESCRIPTION | PARAMS | RETURNS |
---|---|---|---|---|---|---|
GET | /platform | YES | All | Get all platform | - | [{ platform }] |
GET | /platform/:platformId | YES | All | Get one platform | media_id | { platform } |
PUT | /platform/:platformId | YES | Admin | Update platform | media_id | "Platform updated" |
POST | /platform | YES | Admin | Create platform | body | { platform } |
DELETE | /platform/:platformId | YES | Admin | Remove one platform | media_id | "Platform deleted" |
METHOD | ENDPOINT | TOKEN | ROLE | DESCRIPTION | PARAMS | RETURNS |
---|---|---|---|---|---|---|
GET | /category | YES | All | Get all categories | - | [{ category }] |
GET | /category/:categoryId | YES | All | Get one category | category_id | { category } |
PUT | /category/:categoryId | YES | Admin | Update category | category_id | "category updated" |
POST | /category | YES | Admin | Creates one category | category_id | { category } |
DELETE | /category/:categoryId | YES | Admin | Remove one category | category_id | "category deleted" |
METHOD | ENDPOINT | TOKEN | ROLE | DESCRIPTION | PARAMS | RETURNS |
---|---|---|---|---|---|---|
GET | /private_info | YES | Admin | Get all private_info | - | [{ private_info }] |
GET | /private_info/me | YES | All | Get own private_info | private_info_id | { private_info } |
GET | /private_info/:userId | YES | Admin | Get one private_info | private_info_id | { private_info } |
PUT | /private_info/me | YES | All | Update own private_info | private_info_id | "private_info updated" |
PUT | /private_info/:private_infoId | YES | Admin | Update private_info | private_info_id | "private_info updated" |
POST | /private_info | YES | Admin | Creates one private_info | private_info_id | { private_info } |
DELETE | /private_info/me | YES | All | Remove own private_info | private_info_id | "private_info deleted" |
DELETE | /private_info/:private_infoId | YES | Admin | Remove one private_info | private_info_id | "private_info deleted" |
-
Punto de vista usuario.
-
Punto de vista administrador
-
Tocar menos de 3 botones?
-
Si hay descuadre/rechazo de capítulo => reset y rehacer
-
Solo sugerencias de seguimientos
-
Modo maratón/tele
-
Qué veo? => sugerencias limitadas => rechazo de todas => salir.
-
Dónde está la serie/película A la hora de registrarse => preguntas por gustos => swipping por opciones
Problema :
Perdemos mucho tiempo buscando qué ver y dónde verlo, nos gustaría simplificar las cosas para que el poco tiempo del que disponemos sea disfrutando sin tener que estar eligiendo.
User flow:
- User runs app.
- User inputs data.
- Category questions are shown.
- User selects.
- 'How many time question' is shown.
- User selects.
- *Time is less than two hours?
- Show suggestions until user accepts.
- *Time is more than two hours?
- Movie or show question is shown.
- User selects.
- Random in base of category previously selected.
- User inputs data.
- 'How many time question' is shown.
- Less than two hours?
- *Less than 4 and more than 1 pending?
· 'Would you like to see new' question is shown.
- If yes: random suggestion in base of user/category until user accepts.
- If not: show user pending suggestions.
- If user doesnt accept anyone: EXIT.
- More than two hours?
- *'Show or movie' question is shown.
- User selects movie.
- (there wont be pending movies) User will be shown 8 random movies.
- If user doesnt accept anyone
- 'Would you like better to watch a show?' question is shown.
- If yes: random suggestion in base of user/category until user accepts.
- If not: EXIT.
- User selects show.
*Less than 4 and more than 1 pending?
· 'Would you like to see new' question is shown.
- If yes: random suggestion in base of user/category until user accepts.
- If not: show user pending suggestions.
- If user doesnt accept any of suggestions.
- 'Would you like to see a movie' question is shown.
- If no. EXIT.
- If yes. User will be shown up until 8 random movies.
- If user doesnt accept anyone: EXIT.`
- If user doesnt accept any of suggestions.
- npm i -y
- npm i nodemon
- npm i express
- npm i morgan
- npm i dotenv
- npm i sequelize
- npm i mysql2
- npm i bcrypt
- npm i jsonwebtoken
- npm i random-array-picker