Proyecto de e-commerce

Descripción del proyecto

Este proyecto fue desarrollado como parte de mi formación en Digital House. Durante el desarrollo, implementé una serie de conceptos y tecnologías para construir un sitio de e-commerce funcional y completo.

Tecnologías utilizadas

HTML: Creación de la estructura del sitio web.

CSS: Estilización del sitio web.

JavaScript: Implementación de interactividad en el sitio.

EJS: Motor de plantillas para generar vistas dinámicas.

Express y Node.js: Creación del servidor y gestión de rutas.

Express Generator: Herramienta utilizada para la estructura del proyecto.

Sequelize: ORM para la gestión de la base de datos.

React: Desarrollo del dashboard del sitio.

Temática del sitio y público objetivo

El sitio está diseñado para ser una plataforma de comercio electrónico que permite a los usuarios navegar, comprar productos y gestionar sus cuentas. Está dirigido a consumidores en general que buscan una experiencia de compra en línea intuitiva y eficiente.

Entregables por Sprints

SPRINT 1

URL del repositorio: Incluye a todos los colaboradores agregados.

README.md:

Temática del sitio y público objetivo.

Listado de al menos 5 referentes.

Wireframes:

Home

Detalle de producto

Carrito de compras

Formulario de registro

Formulario de login

Opcional: Boceto o diseño gráfico del sitio (logo, colores, tipografías, etc).

SPRINT 2

Archivo retro.md: Resultado de la retrospectiva.

Enlace al tablero de trabajo: Incluido en el archivo README.md.

Aplicación Node.js + Express:

Home (index.html)

Detalle del producto (productDetail.html)

Carrito de compras (productCart.html)

Formulario de registro (register.html)

Formulario de login (login.html)

SPRINT 3

Archivo retro.md: Resultado de la retrospectiva.

Archivo daily.md: Opiniones sobre las daily/weeklies (opcional).

Tablero de trabajo: Actualizado.

Aplicación Node.js + Express + EJS:

Archivos parciales (head, header, footer, etc.)

Home

Listado de productos

Detalle del producto

Carrito de productos

Formulario de registro y login

Formulario de carga y edición de productos

SPRINT 4

Archivo retro.md: Resultado de la retrospectiva.

Archivo daily.md: Opiniones sobre las daily/weeklies (opcional).

Tablero de trabajo: Actualizado.

Archivos JSON:

products.json con datos de productos.

users.json con datos de usuarios.

Administración de productos:

Listado

Detalle

Creación

Edición

Eliminación

SPRINT 5

Archivo retro.md: Resultado de la retrospectiva.

Archivo daily.md: Opiniones sobre las daily/weeklies (opcional).

Tablero de trabajo: Actualizado.

Formularios:

Registro con campos mínimos y subida de imagen de perfil, guardado en JSON con encriptación de contraseña.

Login con campos de email y password, opción de recordar al usuario (opcional).

Rutas:

Rutas de huéspedes redirigiendo al perfil si el usuario está logueado.

Rutas de usuarios redirigiendo al login si el usuario no está logueado.

SPRINT 6

Archivo retro.md: Resultado de la retrospectiva.

Archivo daily.md: Opiniones sobre las daily/weeklies (opcional).

Tablero de trabajo: Actualizado.

Diagrama de base de datos.

Script de creación de base de datos:

Creación de la base de datos y tablas con sus campos y restricciones.

Relaciones entre tablas.

Script de datos de base de datos (opcional):

Tabla de usuarios.

Tabla de productos.

Tablas secundarias (categorías, marcas, colores, talles, etc).

Tabla de carrito de compras y productos de carritos de compras (opcional).

Carpeta Sequelize:

Archivos de configuración.

Modelos con sus relaciones.

CRUD:

De productos.

De usuarios.

De tablas secundarias (opcional).

SPRINT 7

Archivo retro.md: Resultado de la retrospectiva.

Archivo daily.md: Opiniones sobre las daily/weeklies (opcional).

Tablero de trabajo: Actualizado.

Validaciones back-end:

Registro de usuarios.

Login de usuarios.

Creación y modificación de productos.

Resto de los formularios del sitio (opcional).

Validaciones front-end:

Registro de usuarios.

Login de usuarios.

Creación y modificación de productos.

Resto de los formularios del sitio (opcional).

SPRINT 8

Archivo retro.md: Resultado de la retrospectiva.

Archivo daily.md: Opiniones sobre las daily/weeklies (opcional).

Tablero de trabajo: Actualizado.

Endpoints de usuarios:

Listado de usuarios.

Detalle de usuario.

Endpoints de productos:

Listado de productos.

Detalle de producto.

Dashboard del sitio en React:

3 a 6 paneles simples con totales.

Panel de detalle del último producto o usuario creado.

Panel de categorías con el total de productos de cada una.

Panel con el listado de productos.

Funcionalidades adicionales (opcional).