Este proyecto que desarrollé para el desafío técnico de Henry, una plataforma de educación en línea. El objetivo principal era crear una aplicación web de encuestas, donde los usuarios pueden crear, editar y visualizar los resultados de encuestas de manera fácil y eficiente. La aplicación se ha desarrollado utilizando React en el frontend y Node.js en el backend, y puedes verla en acción en https://daniels35.github.io/encuestasHenry/.
La aplicación se divide en dos partes fundamentales: el frontend y el backend. El frontend se encarga de proporcionar una experiencia de usuario intuitiva y atractiva utilizando componentes de React. Hemos utilizado herramientas como React Router para una navegación sin problemas, React Icons para darle vida con iconos vibrantes y React Phone Number Input para validar números de teléfono de manera efectiva. Por otro lado, el backend se encarga de manejar toda la lógica de la aplicación, utilizando Express como framework, MySQL como base de datos, Nodemailer para el envío de correos electrónicos, UUID para garantizar identificadores únicos y CORS para permitir una comunicación segura con el frontend a través de una API REST.
Para ejecutar este proyecto en tu propio entorno de desarrollo, simplemente sigue estos sencillos pasos:
Clona el Repositorio: Comienza por clonar este repositorio de GitHub en tu máquina local.
Instala las Dependencias: Navega a las carpetas del frontend y el backend por separado y ejecuta npm install para instalar todas las dependencias necesarias.
Configura las Variables de Entorno: En la carpeta del backend, crea un archivo .env y agrega las variables de entorno necesarias para la conexión con la base de datos y el servicio de correo electrónico.
Inicia los Servidores: Ejecuta el comando npm start en ambas carpetas para iniciar los servidores locales tanto del frontend como del backend.
Accede a la Aplicación: Finalmente, abre tu navegador web y dirígete a la dirección http://localhost:3000 para comenzar a utilizar la aplicación.
La aplicación permite realizar las siguientes acciones:
✏️ Realizar Encuestas.
📝 Editar Encuestas.
👀 Visualizar Encuestas: Explora las encuestas creadas por ti o por otros usuarios. Utiliza filtros de fecha para encontrar rápidamente las encuestas que te interesan.