Skip to content

Cristopher-Diaz/node-crud-users

Repository files navigation

CRUD con Node.js, Express, MySQL y EJS

Este proyecto es un CRUD (Create, Read, Update, Delete) básico construido con Node.js, Express, MySQL, y EJS. Implementa un sistema de plantillas utilizando EJS y maneja las vistas con express-ejs-layouts.

Requisitos

Antes de comenzar, asegúrate de tener instalados los siguientes requisitos en tu entorno:

Instalación

Sigue estos pasos para configurar el proyecto en tu máquina local:

  1. Clona el repositorio:

    git clone https://github.com/Cristopher-Diaz/node-crud-users.git
    cd node-crud-users
  2. Instala las dependencias del proyecto:

    npm install
  3. Configura las variables de entorno:

    • Copia el archivo env.example y renómbralo a .env:

      cp env.example .env
    • Edita el archivo .env para configurar las variables de entorno de tu base de datos. Asegúrate de incluir la siguiente configuración:

      DB_HOST=localhost
      DB_USER=root
      DB_PASSWORD=tu_contraseña
      DB_NAME=nombre_de_tu_base_de_datos
      DB_PORT=3306
  4. Crea la base de datos en MySQL con el nombre que especificaste en la variable DB_NAME.

  5. Ejecuta el proyecto en modo de desarrollo utilizando nodemon:

    node app.js

    Esto iniciará el servidor en http://localhost:3000.

  6. Crea la base de datos y la tabla con datos iniciales:

    Conéctate a MySQL y ejecuta los siguientes scripts:

    1. Creación de la Base de Datos

    CREATE DATABASE IF NOT EXISTS crud_db;
    USE crud_db;

    2. Creación de la Tabla users

    CREATE TABLE IF NOT EXISTS users (
        id INT AUTO_INCREMENT PRIMARY KEY,
        name VARCHAR(100) NOT NULL,
        role VARCHAR(50) NOT NULL,
        deleted_at DATETIME DEFAULT NULL
    );

    3. Insertar Datos Iniciales (opcional)

    INSERT INTO users (name, role)
    VALUES 
    ('Alice', 'admin'),
    ('Bob', 'client'),
    ('Charlie', 'client');

About

Trabajo practico de un CRUD con Express

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published