Negratone es una plataforma de comercio electrĂłnico desarrollada como parte de un proyecto acadĂ©mico para la facultad. El objetivo principal de este repositorio es migrar un sitio web estático a una arquitectura dinámica utilizando Node.js y Express, aplicando el patrĂłn de arquitectura MVC (Modelo-Vista-Controlador) y metodologĂas modernas de diseño de componentes.
express, ejs, method-override (y otras listadas en el package.json).El proyecto ha pasado por una refactorizaciĂłn profunda para mejorar su escalabilidad y mantenimiento:
src/routes): El archivo mainRoutes.js ahora centraliza y dirige el tráfico de las URLs hacia los controladores adecuados.src/controllers): Se implementó mainController.js para manejar la lógica de la aplicación y renderizar las vistas correctas según la petición del cliente..ejs (index, login, register, cart, checkout, product, profile, error).partials/ siguiendo el diseño atómico:
head.ejs.back-link.ejs, form-button.ejs).ad-card.ejs, product-card.ejs, nav-item.ejs).header.ejs, footer.ejs, nav-bar.ejs, login-form.ejs, shopping-cart.ejs).```text Negratone/ ├── /public/ # Recursos estáticos públicos │ ├── /css/ # Archivos de estilos (styles.css) │ └── /img/ # Imágenes y logos del proyecto ├── /src/ # Código fuente de la aplicación │ ├── /controllers/ # Controladores de la lógica de negocio (mainController.js) │ ├── /routes/ # Definición de endpoints y rutas (mainRoutes.js) │ └── /views/ # Plantillas dinámicas EJS │ ├── /pages/ # Vistas principales (index, cart, login, etc.) │ └── /partials/ # Fragmentos reutilizables (atoms, molecules, organisms, global) ├── app.js # Punto de entrada principal de la aplicación Node.js └── package.json # Configuración de dependencias y scripts ```
Para correr este proyecto en tu entorno local, sigue estos pasos:
```