/aecc

šŸ’š PĆ”gina web donde consultar eventos deportivos organizados por La AsociaciĆ³n EspaƱola Contra el CĆ”ncer (AECC) de A CoruƱa.

Primary LanguageJavaScript

AECC A CoruƱa šŸ’š


Proyecto de voluntariado para la AsociaciĆ³n EspaƱola Contra el CĆ”ncer de A CoruƱa. PĆ”gina web donde consultar eventos y actividades deportivas organizadas por la asociaciĆ³n en la provincia de A CoruƱa.

  1. DescripciĆ³n
  2. InicializaciĆ³n
  3. DiseƱo
  4. TecnologĆ­as utilizadas

šŸ‘©ā€šŸ’» Developers

šŸ“… Scrum Master


šŸ“‹ DescripciĆ³n

  • Los usuarios pueden:

    • Ver los prĆ³ximos eventos deportivos organizados por la AsociaciĆ³n, pudiendo filtrar segĆŗn sus preferencias, seleccionando el tipo de evento, la localizaciĆ³n y/o las fechas del mismo.

      CarruselEventos

    • Ser redireccionados a la pĆ”gina del evento en el que estĆ©n interesados para ver los detalles del evento y efectuar la inscripciĆ³n.

    • Obtener informaciĆ³n sobre la misiĆ³n de la AsociaciĆ³n y sus objetivos con la iniciativa "En Marcha".

      EnMarcha

    • Conocer los Ćŗltimos logros obtenidos por la AsociaciĆ³n asĆ­ como una breve descripciĆ³n de cada uno de ellos.

      Logros

    • Ver los patrocinadores principales de los eventos En Marcha de la provincia de A CoruƱa.

      CarruselPatrocinadores

    • Leer experiencias de participantes en anteriores ediciones de eventos En Marcha contra el cĆ”ncer.

      CarruselExperiencias

    • Visualizar fotos de anteriores eventos en una galerĆ­a creada con el estilo Bento Grid y visualizaciĆ³n individual de las mismas en una modal.

      GaleriaEvento VisualizacionIndividual

    • Dar respuesta a dudas comunes en relaciĆ³n a los eventos a travĆ©s de una secciĆ³n de preguntas frecuentes.

      FAQs

    • Ponerse en contacto con la AsociaciĆ³n para ofrecerse a colaborar como voluntario en los eventos.

      Voluntarios

    • Conocer a los patrocinadores actuales del circuito y el motivo que los anima a colaborar, asĆ­ como solicitar ser empresa patrocinadora para eventos.

      Patrocinadores FormPatrocinadores

    • Ver la secciĆ³n de noticias donde podrĆ”n mantenerse informados de los Ćŗltimos logros alcanzados, donaciones realizadas, ayudas obtenidas...AsĆ­ como los avisos especiales que se pudieran producir en algĆŗn evento.

      Noticias

    • Acceso directo al Blog de la AsociaciĆ³n EspaƱola Contra el CĆ”ncer.

    • Apartado de contacto para cualquier duda o aclaraciĆ³n que necesiten.

      Contacto

  • El usuario admin puede:

    • Acceso completo a todas las funciones de gestiĆ³n, lo que incluye la capacidad de aƱadir, editar y eliminar diferentes secciones de la web directamente desde el panel de administrador.

      Panel

    • GestiĆ³n de todo lo relacionado con los eventos como fechas, carteles de los mismos, descripciĆ³n, tĆ­tulo, asĆ­ como aƱadir incidencias en caso de que fuera necesario.

      Eventos

    • AƱadir o eliminar fotos de un evento concreto.

      FotosEvento

    • Modificar las credenciales de acceso del usuario administrador.

      Usuario

    • GestiĆ³n de las preguntas frecuentes (FAQs) relacionadas con temas generales de la AsociaciĆ³n.

      Faqs

    • Privilegios totales para gestionar patrocinadores, tanto a nivel general como de circuito, con la opciĆ³n adicional de marcar aquellos asociados a circuito como 'importantes'.

      Patrocinadores

    • AƱadir, modificar o borrar noticias que aborden logros conseguidos, dinero donado, hitos alcanzados y otros eventos relevantes para la AsociaciĆ³n de A CoruƱa.

      Noticias

    • Gestionar las experiencias de los usuarios que han participado en los eventos deportivos solidarios organizados por la asociaciĆ³n, destacando sus vivencias y contribuciones en dichos eventos.

      Experiencias

    • Gestionar los logros alcanzados por la asociaciĆ³n, como el nĆŗmero de pacientes y familias a las que han ayudado, la cantidad de dinero donado, la cantidad de socios... para mantener actualizados los registros y la transparencia de la asociaciĆ³n.

      Logros

    • Control sobre el contenido del banner de la cabecera de la pĆ”gina de inicio, el cual puede incluir un enlace, un botĆ³n que redireccione a cualquier url y un texto descriptivo. Esto permite gestionar de manera flexible la presentaciĆ³n y las acciones asociadas al banner para proporcionar una experiencia de usuario efectiva.

      Banners

Volver arriba

āš™ InicializaciĆ³n

Para inicializar la app debes seguir los siguientes pasos:

InstalaciĆ³n

  • Clonar el repositorio:

    git clone git@github.com:AnaBelenBernardez/aecc.git
    
  • Cambiar a la carpeta server e instalar las dependencias necesarias:

    cd server/
    npm i
    
  • AƱadir un archivo .env cumplimentando los datos aportados en el archivo .env.example como ejemplo. En cuanto a la ADMIN_PASS, Ć©sta debe tener entre 8 y 20 caracteres, contener una minĆŗscula, una mayĆŗscula, un nĆŗmero y un caracter especial

  • Arrancar el servidor

    npm run dev
    
  • En otra terminal cambiamos a la carpeta client e instalamos las dependencias necesarias

    cd client/
    npm i
    
  • AƱadir un archivo .env cumplimentando los datos aportados en el archivo .env.example como ejemplo

  • Arrancar el servidor

    npm run dev
    

    Volver arriba

Endpoints

Administrador

METHOD URL DESCRIPCIƓN
POST /admin/login Incio de sesiĆ³n de usuario
PUT /admin/update-password/:idAdmin Modificar la contraseƱa del usuario administrador

Banners

METHOD URL DESCRIPCIƓN
GET /banners/ Obtener todos los banners
GET /banners/:idBanner Obtener un banner segĆŗn su ID
POST /banners/admin/add AƱadir un nuevo banner
PUT /banners/admin/edit/:idBanner Editar un banner existente
DELETE /banners/admin/delete/:idBanner Borrar un banner
DELETE /banners/admin/:idBanner/delete/photo/:idPhoto Borrar la foto de un banner

Eventos

METHOD URL DESCRIPCIƓN
GET /events/ Obtener todos los eventos
GET /events/:idEvent Obtener un evento segĆŗn su ID
POST /events/admin/add AƱadir un nuevo evento
POST /events/admin/add-photo/:idEvent AƱadir una nueva foto al evento
PUT /events/admin/edit/:idEvent Editar un evento existente
DELETE /events/admin/delete/:idEvent Borrar un evento
DELETE /events/admin/:idEvent/delete/photo/:idPhoto Borrar una foto de un evento

Patrocinadores

METHOD URL DESCRIPCIƓN
GET /sponsors/ Obtener todos los patrocinadores
GET /sponsors/:idSponsor Obtener un patrocinador segĆŗn su ID
POST /sponsors/admin/add AƱadir un nuevo patrocinador
PUT /sponsors/admin/edit/:idSponsor Editar un patrocinador existente
DELETE /sponsors/admin/delete/:idSponsor Borrar un patrocinador

Logros

METHOD URL DESCRIPCIƓN
GET /achievements/ Obtener todos los logros
GET /achievements/:idAchievement Obtener un logro segĆŗn su ID
POST /achievements/admin/add AƱadir un nuevo logro
PUT /achievments/admin/edit/:idAchievement Editar un logro existente
DELETE /events/admin/delete/:idAchievement Borrar un logro

Experiencias

METHOD URL DESCRIPCIƓN
GET /experiences/ Obtener todas las experiencias
POST /experiences/admin/add AƱadir una nueva experiencia
PUT /experiences/admin/edit/:idExperience Editar una experiencia existente
DELETE /experiences/admin/delete/:idExperience Borrar una experiencia

Preguntas frecuentes

METHOD URL DESCRIPCIƓN
GET /faqs/ Obtener todas las preguntas frecuentes
GET /faqs/:idFaq Obtener una pregunta frecuente segĆŗn su ID
POST /faqs/admin/add AƱadir una nueva pregunta frecuente
PUT /faqs/admin/edit/:idFaq Editar una pregunta frecuente existente
DELETE /faqs/admin/delete/:idFaq Borrar una pregunta frecuente

Noticias

METHOD URL DESCRIPCIƓN
GET /news/ Obtener todas las noticias
GET /news/:idNews Obtener una noticia segĆŗn su ID
POST /news/admin/add AƱadir una nueva noticia
PUT /news/admin/edit/:idNews Editar una noticia existente
DELETE /news/admin/delete/:idNews Borrar una noticia
DELETE /news/admin/:idNews/delete/photo/:idPhoto Borrar una foto de una noticia

Volver arriba

šŸŽØ DiseƱo

DiseƱada con Figma para mejorar asĆ­ la planificaciĆ³n de la App y poder comprender los datos necesarios y la manera mĆ”s efectiva de representarlos, pudiendo mantener una coherencia visual y funcional en todo el desarrollo.

Responsive, amigable y facilmente accesible desde multiples dispositivos. Cumpliendo criterios de accesibilidad para que pueda ser usada por culquier persona.

Mockup

šŸ’» Tech Stack

HTML5 CSS3 Tailwind MySQL NodeJS Express NPM Postman React NextJS MaterialUI Shadcn Zod GitHub GIT VSC Notion Figma

Volver arriba