NodePop is a second-hand article sales platform built with Express, EJS, and MongoDB.
- Node.js v20.18.0 or later
- MongoDB instance (locally or cloud-based)
-
First, navigate to the project directory:
cd nodepop
-
Install the necessary dependencies:
npm install
On the first deploy, you can empty the existing database and populate it with initial data by running:
npm run initDB
This command will:
- Delete all users and products.
- Create initial user and product data.
To run the app in production mode, use the following command:
npm start
This will start the server on port 3000 (by default).
For development mode (with live reloading), run:
npm run dev
This will run the app using nodemon for automatic restarts.
Here are the main endpoints available in the application:
- GET / - Home page with product listings
- GET /login - Login page
- POST /login - Login form submission
- POST /products - Create a new product (requires authentication)
- DELETE /products/ - Delete a product (requires authentication)
- PUT /products/ - Edit an existing product (requires authentication)
NodePop es una plataforma de venta de artículos de segunda mano construida con Express, EJS y MongoDB.
- Requisitos
- Instalar Dependencias
- Configuración Inicial de la Base de Datos
- Ejecutando la Aplicación
- Endpoints
- Node.js v20.18.0 o superior
- Instancia de MongoDB (local o en la nube)
-
Primero, navega al directorio del proyecto:
cd nodepop
-
Instala las dependencias necesarias:
npm install
En el primer despliegue, puedes vaciar la base de datos existente y llenarla con datos iniciales ejecutando:
npm run initDB
Este comando hará lo siguiente:
- Eliminará todos los usuarios y productos.
- Creará datos iniciales de usuarios y productos.
Para ejecutar la aplicación en modo producción, usa el siguiente comando:
npm start
Esto iniciará el servidor en el puerto 3000 (por defecto).
Para el modo desarrollo (con recarga en vivo), ejecuta:
npm run dev
Esto ejecutará la aplicación usando nodemon para reinicios automáticos.
Estos son los principales endpoints disponibles en la aplicación:
- GET / - Página de inicio con listado de productos
- GET /login - Página de inicio de sesión
- POST /login - Envío del formulario de inicio de sesión
- POST /products - Crear un nuevo producto (requiere autenticación)
- DELETE /products/ - Eliminar un producto (requiere autenticación)
- PUT /products/ - Editar un producto existente (requiere autenticación)