Skip to content

Fork del back-end de Mascotapp al momento de la entrega

Notifications You must be signed in to change notification settings

RobTangle/Mascotapp-Backend

 
 

Repository files navigation

Mascotapp

Image text

¡Bienvenido a Mascotapp!

Introducción

Mascotapp es una página pensada para ayudar a conectar mascotas con sus dueños y fue desarrollada como proyecto final para el curso de desarrollo web Full-Stack de Henry. En Mascotapp podes publicar o ver mascotas extraviadas o en adopción con un diseño interactivo que te premia con puntos e insignias a medida que vas avanzando en el uso de la página. A continuación te contaremos un poco del proceso con el que llevamos adelante el proyecto.

Workflow

Para el desarrollo usamos un repositorio para el Backend y otro para el Frontend. Además realizamos deploys desde el comienzo del proyecto en Vercel para el front y en Railways para el back, con etapas de producción y de stagging basandonos en el modelo de CI/CD, permitiendonos ir comprobando las integración de las funcionalidades en la nube.

Herramientas utilizadas

Frontend

Utilizamos React como framework con Redux para el manejo de estados globales. Además en cuanto a los estilos usamos Tailwind, y también Material UI para algunos detalles como el autocompletado. Para las alertas implementamos Sweet Alert y para los iconos React-Icons. Consultamos una api para la georeferencia de provincias y ciudades, que es un punto importante a tener estandarizado en la página, debido a que se envian notificaciones a los usuarios registrados cercanamente cuando se postean nuevas mascotas perdidas, este sistema de notificaciones utiliza Web-Push. Utilizamos Stripe para poder recibir donaciones tanto en USD como en pesos argentinos. Por otro lado le permitimos a los usuarios agregar un link de pago con Mercado Pago en caso de que sean usuarios muy activos y esten dispuestos a recibir donaciones. Por último como sistema de autenticación aplicamos Auth0, que controla el registro de usuario desde el frontend y envía el token de usuario hacia el backend para controlar el acceso a las rutas.

Backend

Utilizamos Express como framework de desarrollo para el backend, usando TypeScript como lenguaje, lo que nos ayudo a prevenir muchos errores. Usamos Sequelize para modelar nuestra database PostgreSQL, implementando tablas para usuarios y mascotas, y teniendo y actualizando varias propiedades en las disitntas rutas que existen en la página, utilizando varias operaciones lógicas sobre todo en las instanciaciones de Reviews, Puntos e Insignias que recopilan información sobre la interacciones de los usuarios con la plataforma. JWT sirvió para armar los middlewares de las rutas que requerían autenticación con el token generado por Auth0 con el fin de salvaguardar los datos de los usaurios y evitar ataques. Se utilizó Nodemailer para envíar los mails necesarios para notificar a los usuarios de sus distintas acciones con la página y también Web-Push para generar las notificaciones y guardar las subscripciones en el modelo de usuario.

Contacto

Te agradecemos por el interes en la página. Por cualquier duda o consulta podes escribirnos a service.mascotapp@gmai.com, o a nuestras redes personales que podes encontrar en el apartado Team de la página.

About

Fork del back-end de Mascotapp al momento de la entrega

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 72.5%
  • TypeScript 27.5%