Esta es una aplicación de tienda en línea que permite a los usuarios navegar productos, agregarlos al carrito, ver el carrito y proceder al pago. Los administradores pueden agregar y eliminar productos de la tienda. La aplicación utiliza un servidor Node.js para gestionar las solicitudes y respuestas.
- Node.js (v12 o superior)
- npm (v6 o superior)
-
Clona el repositorio a tu máquina local:
git clone https://github.com/AIejoCastro/StoreWebSite.git
-
Navega al directorio del proyecto:
cd StoreWebSite -
Instala las dependencias necesarias:
npm install
-
Para iniciar el servidor de la aplicación, usa el siguiente comando:
node server/app.js
El servidor se iniciará y estará escuchando en el puerto especificado (por defecto 3000). Puedes acceder a la aplicación navegando a http://localhost:3000/login.html en tu navegador web.
- Los usuarios pueden ver la lista de productos disponibles en la tienda.
- Los administradores pueden agregar y eliminar productos.
- Los usuarios pueden agregar productos al carrito de compras.
- Es necesario iniciar sesión para agregar productos al carrito.
- Los usuarios pueden ver los productos agregados al carrito, modificar la cantidad y eliminar productos del carrito.
- Los usuarios pueden proceder al pago de los productos en el carrito.
- Al completar el pago, los productos se eliminan del carrito y el usuario es redirigido a la página principal de la tienda.
-
Estructura
online-store/ │ ├── public/ │ ├── css/ │ │ └── menu.css │ ├── js/ │ │ └── script.js │ └── index.html │ ├── server/ │ ├── app.js │ └── api/ │ ├── cart.js │ ├── products.js │ └── users.js │ ├── package.json └── README.md
- public/index.html: Página principal de la tienda.
- public/js/script.js: Contiene la lógica del cliente para manejar el carrito y el proceso de pago.
- server/app.js: Archivo principal del servidor, configura y ejecuta el servidor Node.js.
- server/api/cart.js: Maneja las operaciones relacionadas con el carrito.
- server/api/products.js: Maneja las operaciones relacionadas con los productos.
- server/api/users.js: Maneja las operaciones relacionadas con los usuarios.
- GET /api/products: Obtiene la lista de productos disponibles.
- POST /api/cart/add: Agrega un producto al carrito.
- POST /api/cart/remove: Elimina un producto del carrito.
- POST /api/cart/clear: Vacía el carrito.
- GET /api/cart: Obtiene los productos en el carrito.
- DELETE /api/products/:id: Elimina un producto (solo para administradores).