El inglés es mi segunda lengua y constantemente estoy trabajando en mejorar mis habilidades. Por esta razón, he decidido desarrollar este y todos mis proyectos completamente en inglés. Trabajar en inglés no solo me permite practicar el idioma, sino que también garantiza que el código y la documentación sean coherentes para una audiencia más amplia.
Creo que utilizar el inglés en este proyecto proporciona claridad y facilita la colaboración con desarrolladores de diferentes orígenes lingüísticos. Además, demuestra mi capacidad de adaptación y mi compromiso con perfeccionar mis habilidades en el idioma.
Agradezco su comprensión.
Gracias, Juan Pablo Valdez
¡Hola! En este repositorio, te presento mi proyecto PC-Hub, un prototipo funcional de una aplicación tipo eCommerce que te permite registrar usuarios, manejar inventarios y vender productos.
Este proyecto representa mi impresionante progreso como desarrollador web, desde mis inicios como novato hasta la creación de un prototipo funcional de eCommerce. Comencé mi viaje a inicio de 2022, aprendiendo HTML y CSS para construir páginas estáticas. Con el tiempo, me desafié a desarrollar juegos y mejorar mis habilidades en lógica y programación.
Mi entusiasmo me llevó a aprender ReactJS y TypeScript, lo que impulsó aún más mi pasión por el desarrollo web. Progresé con proyectos que abarcaron diferentes conceptos y tecnologías, desde manipulación del DOM hasta el manejo de APIs y el desarrollo de aplicaciones con backend en NodeJS.
El deseo de enfrentar un reto mayor y demostrar mis habilidades me llevó a crear este prototipo funcional de eCommerce. Fue una experiencia enriquecedora, enfrentando desafíos desconocidos como la autenticación de usuarios y la personalización del contenido.
Este proyecto es una prueba de mi dedicación y crecimiento, transformándome desde un principiante hasta un desarrollador capaz de construir aplicaciones web completas y funcionales. Estoy emocionado de seguir mejorando y enfrentando nuevos desafíos en mi camino como desarrollador web.
- Responsive Design
- Autentificación y autorización de usuarios con proveedores
- Tienda
- Catalogo de productos
- Filtros de búsqueda
- Paginación
- Pagina para productos
- Sistema de carrito de compras
- Proceso de pago
- Perfil del usuario
- Reviews de usuarios
- Admin
- Agregar producto a la base de datos
- Filtros de búsqueda
- Editar producto
TypeScript: Esta tecnología nos brinda tipos estáticos e integración con el IDE, lo que mejora mucho la experiencia de desarrollo y evita errores comunes.
NextJS: Es un framework para ReactJS que ofrece diversas ventajas para la construcción de aplicaciones web. Proporciona funcionalidades como enrutamiento, rendimiento mejorado, optimización para motores de búsqueda (SEO) y muchas otras características útiles.
Utilizamos los React server components de NextJS para crear API endpoints en el mismo proyecto, lo cual se conoce como arquitectura serverless. Esta opción es ideal para este prototipo funcional que no espera un tráfico intenso.
MongoDB: Para el almacenamiento de datos, utilizamos MongoDB como base de datos NoSQL. Su modelo se basa en BSON, que es casi idéntico al JSON de JavaScript, lo que lo hace muy intuitivo de utilizar.
ReactJS: Es una de las librerías de JavaScript más famosas del mundo y la he utilizado para construir la interfaz de usuario. ReactJS proporciona una excelente experiencia de desarrollo, escalabilidad, reusabilidad y rendimiento en la aplicación.
TailwindCSS: En lugar de utilizar un framework de CSS como Bootstrap, decidí darle un toque personal utilizando TailwindCSS. Es la primera vez que lo utilizo, y sin duda es una opción que me ha encantado para trabajar el CSS. Se encuentra a medio camino entre frameworks como Bootstrap y CSS puro, y permite estilizar componentes de manera sencilla a través de clases.
Jest: una librería sencilla y útil, para realizar unit testing en JavaScript.
Git - GitHub: Como sistema de control de versiones y almacenamiento del repositorio.
Vercel - Deployment: Utilicé Vercel para implementar y desplegar el proyecto.