Este proyecto es una API RESTful desarrollada en Node.js para gestionar conferencias. Utiliza SQLite como base de datos y Express como framework para manejar las rutas y peticiones.
Antes de comenzar, asegúrate de tener instalados los siguientes componentes:
Clonar el repositorio:
git clone https://github.com/sandovaldavid/api-lectures-management.git
cd api-lectures-management
Instalar las dependencias:
Ejecuta el siguiente comando para instalar las dependencias del proyecto:
npm install
Inicializar la base de datos:
Ejecuta el siguiente comando para crear la tabla necesaria y llenar con datos de prueba:
npm run db
Iniciar el servidor:
Para iniciar el servidor en modo desarrollo con nodemon:
npm run dev
Para iniciar el servidor en modo producción:
npm start
Puntos de acceso (endpoints):
Obtiene todas las conferencias almacenadas.
Respuesta exitosa (200):
{
"message": "Lectures found",
"data": [
{
"id": 1,
"title": "Understanding Algorithms",
"description": "An introduction to algorithmic thinking and problem-solving techniques"
}
]
}
Obtiene una conferencia específica por su ID.
Respuesta exitosa (200):
{
"message": "Lecture found",
"data": {
"id": 1,
"title": "Understanding Algorithms",
"description": "An introduction to algorithmic thinking and problem-solving techniques"
}
}
Crea una nueva conferencia.
Cuerpo de la petición:
{
"title": "Nueva Conferencia",
"description": "Descripción de la nueva conferencia"
}
Respuesta exitosa (201):
{
"message": "Lecture created successfully",
"lectureId": 1
}
Actualiza una conferencia existente.
Cuerpo de la petición:
{
"title": "Título Actualizado",
"description": "Descripción actualizada"
}
Respuesta exitosa (200):
{
"message": "Lecture updated successfully"
}
Elimina una conferencia existente.
Respuesta exitosa (200):
{
"message": "Lecture deleted successfully"
}
backend/
├── controllers/ # Controladores de la lógica de negocio
├── models/ # Definición de modelos (SQLite)
├── routes/ # Definición de rutas
├── db.js # Configuración de la base de datos
├── config.js # Configuración general del proyecto
├── scripts/ # Scripts útiles (Llenadr db con datos de prueba)
├── index.js # Punto de entrada del servidor
├── package.json # Configuración del proyecto
└── README.md # Documentación del proyecto
npm start
: Inicia el servidor en modo producción.npm run dev
: Inicia el servidor en modo desarrollo con nodemon.npm run db
: Crea la tabla y datos de pruebaSi deseas contribuir a este proyecto, por favor sigue los siguientes pasos:
git checkout -b feature/nueva-feature
git commit -m "Agrega nueva feature"
git push origin feature/nueva-feature
Este proyecto está bajo la licencia MIT. Consulta el archivo LICENSE para más información.