El desarrollo de plataformas de comercio electrónico requiere una infraestructura robusta y eficiente que garantice la seguridad, el manejo adecuado de datos y una experiencia óptima para los usuarios. Este proyecto de E-Commerce Backend cumple con estas características, proporcionando un sistema integral para gestionar usuarios, productos y pedidos con autenticación y autorización basadas en JWT y una base de datos en MongoDB.
Características principales
- Gestión de usuarios:
- Registro, inicio de sesión y asignación de roles (administrador o usuario regular).
- Gestión de productos:
- CRUD (crear, leer, actualizar y eliminar) de productos, limitado a usuarios con rol de administrador.
- Gestión de pedidos:
- Permite a los usuarios crear, actualizar y eliminar pedidos.
- Seguridad avanzada:
- Contraseñas encriptadas y protección de endpoints mediante JWT.
- Despliegue en la nube:
- El backend está alojado en Render para garantizar disponibilidad.
Demo en vivo
Experimenta el proyecto en acción accediendo al despliegue en Render:
https://backend-e-commerce-y7xl.onrender.com/
Prueba las funcionalidades administrativas con las siguientes credenciales:
- Email: jose@coreo.com | Password: 123456
- Email: jorge@correo.com | Password: 123456
Funciones destacadas
Gestión de pedidos
- Consultar pedidos del usuario autenticado.
- Crear nuevos pedidos especificando productos, cantidad y precio.
- Actualizar pedidos existentes para modificar cantidades o precios.
- Eliminar pedidos de manera segura.
Gestión de productos
- Consultar todos los productos disponibles.
- Crear, actualizar y eliminar productos, exclusivo para administradores.
Gestión de usuarios
- Registro e inicio de sesión para nuevos usuarios.
- Asignación de roles administrativos mediante endpoints protegidos.
Cómo implementar este backend
- Clona el repositorio:
bash
CopiarEditar
git clone https://github.com/JoseMarioCarranza/backend_e-commerce/ cd backend_e-commerce
- Instala las dependencias:
bash
CopiarEditar
npm install
- Configura las variables de entorno:
Crea un archivo .env con las siguientes configuraciones:env
CopiarEditar
NODE_ENV=production PORT=5000 MONGO_URI=tu_mongo_uri JWT_SECRET=tu_jwt_secret JWT_EXPIRES_IN=1d
- Ejecuta el servidor:
bash
CopiarEditar
npm start
Arquitectura del proyecto
El proyecto sigue una estructura modular y escalable para facilitar el mantenimiento y la ampliación:
bash
CopiarEditar
📂 backend_e-commerce ├── 📂 routes/ # Rutas para usuarios, productos y pedidos ├── 📂 models/ # Modelos de MongoDB ├── 📂 controllers/ # Controladores para lógica empresarial ├── 📂 middlewares/ # Middleware para autenticación y autorización ├── 📜 server.js # Archivo principal para iniciar el servidor
Tecnologías utilizadas
- Node.js y Express: Framework para construir y gestionar el backend.
- MongoDB: Base de datos no relacional alojada en Mongo Atlas.
- JWT: Manejo seguro de autenticación y autorización.
- Render: Plataforma de despliegue en la nube.
Conclusión: Potenciando el comercio electrónico
Este backend para e-commerce no solo resuelve las necesidades básicas de una tienda en línea, sino que ofrece herramientas para un manejo seguro y eficiente de usuarios, productos y pedidos. Si estás desarrollando una plataforma similar, este proyecto es un excelente punto de partida para personalizar según tus necesidades.
Lleva tu proyecto al siguiente nivel
¿Quieres desarrollar tu propia plataforma de comercio electrónico o necesitas soporte técnico? En www.sitesupremacy.com te ofrecemos servicios de diseño web, desarrollo backend y optimización SEO para convertir tus ideas en realidades exitosas. ¡Contáctanos hoy mismo!