ArtistHub es una plataforma dedicada a los artistas de todo el mundo, ofreciendo un espacio donde pueden compartir su arte con otros artistas y encontrar inspiración en una comunidad creativa. Enlace al frontend: https://github.com/almela09/FRONTEND_artisthub
La Api rest para ArtistHub está diseñada para conectar una base de datos MongoDB gestionando tres colecciones principales: 'user', 'publication' y 'comment'.
Se han utilizado las siguientes tecnologías:
-
Clonar repositorio.
-
Instalar dependencias:
$ npm install
. -
Crear una conexión con MongoAtlas.
-
Conectar el repositorio en Mongo Compass.
-
Ejecutar seeders:
$ npm run seed
. -
Poner en marcha el servidor
$ npm run dev
.
-Credenciales:
{
"email": "[email protected]",
"password": "123456789"
}
{
"email": "[email protected]",
"password": "123456"
}
AUTH:
Login:
http://localhost:4000/api/auth/login
{
"email": "[email protected]",
"password": "123456"
}
Register:
{
"name": "Leonor",
"nick": "Leo",
"email": "[email protected]",
"password": "123456"
}
USER:
Superadmin only:
GET: http://localhost:4000/api/user [Ver todos los usuarios]
DELETE: http://localhost:4000/api/user/:userId [Borrar usuarios]
GET: http://localhost:4000/api/user/profile [Ver perfil usuario]
PUT: http://localhost:4000/api/user/users/:id [Editar perfil]
PUBLICATION:
POST: http://localhost:4000/api/publication [Crear publicación]
form-data
Key: Value:
Title tu titulo
Text tu texto
Image (seleccionar file)
PUT: http://localhost:4000/api/publication/:id [Editar publicación]
{
"title": "Nuevo título de la publicación",
"text": "Nuevo texto de la publicación"
}
DELETE: http://localhost:4000/api/publication/:id [Eliminar publicación]
PUT: http://localhost:4000/api/publication/:id/likes [Dar like]
DELETE: http://localhost:4000/api/publication/:id/dislike [Quitar like]
GET: http://localhost:4000/api/publication/publications/:userId [Obtener TODAS las publicacines de un usuario]
GET: http://localhost:4000/api/publication/:id [Busca publicación específica por su id]
COMMENT:
POST: http://localhost:4000/api/comment [Crear comentario]
{
"content": "Muy bonito!!!! me encanta",
"publicationId": "6644df96575766b87193253d",
"userId": "66439af3100c17d40e0c4eb0"
}
GET: http://localhost:4000/api/comment [ver todos los comentarios]
GET: http://localhost:4000/api/comment/:publicationId [ver comentarios asociados a una publicación]
PUT: http://localhost:4000/api/comment/:id [editar comentario]
{
"content": "Nuevo contenido del comentario"
}
DELETE: http://localhost:4000/api/comment/:id [borrar comentario]
Paula Almela.