-
Node.js: Plataforma para construir la aplicación backend.
-
Express: Framework para gestionar las rutas y middleware.
-
bcrypt: Biblioteca para cifrar contraseñas antes de almacenarlas en la base de datos.
-
jsonwebtoken (JWT): Biblioteca para generar tokens de acceso, proporcionando autenticación segura.
-
Sequelize: ORM (Object-Relational Mapping) para interactuar con la base de datos.
-
MSSQL: Base de datos utilizada para almacenar la información de los usuarios y otros datos.
1. Registro de Usuarios:
-
Los nuevos usuarios pueden registrarse proporcionando un nombre de usuario y contraseña.
-
La contraseña se cifra utilizando bcrypt antes de almacenarse en la base de datos para mejorar la seguridad.
2. Autenticación de Usuarios:
-
Los usuarios registrados pueden autenticarse proporcionando sus credenciales.
-
Si las credenciales son válidas, se genera un token JWT que se devuelve al usuario.
-
Este token se utiliza para autorizar el acceso a rutas protegidas en la aplicación frontend.
3. CRUD de Usuarios, Estudiantes, Profesores,Secciones, Asignaturas y Evaluaciones:
-
Crear: Permite añadir nuevos datos a la base de datos.
-
Leer: Permite obtener información de los datos existentes.
-
Actualizar: Permite modificar la información de los datos.
-
Eliminar: Permite borrar información de la base de datos.
Este proyecto representa una API de backend robusta que maneja la gestión de usuarios con funcionalidades de registro, autenticación y operaciones CRUD. Utiliza bcrypt para asegurar las contraseñas y jsonwebtoken para gestionar tokens de acceso, proporcionando una base sólida para integrarse con un frontend.