Backend del sistema Mi Tutor - Sistema de Gestión de Tutorías Universitarias
Mi Tutor es un sistema de apoyo a la gestión del proceso de tutoría universitaria, diseñado para facilitar el registro, seguimiento y evaluación de las tutorías académicas. Permite configurar distintos modelos de tutoría según las necesidades de cada programa académico, gestionar tutores, estudiantes y citas, así como registrar resultados e indicadores que apoyen la toma de decisiones.
Este repositorio contiene el backend del sistema, construido con tecnologías . NET, proporcionando una API REST robusta y escalable para soportar todas las operaciones del sistema.
- 🎓 Gestión de Tutores y Estudiantes: Registro y administración completa de usuarios
- 📅 Sistema de Citas: Programación y seguimiento de sesiones de tutoría
- 🔧 Modelos Configurables: Adaptación a diferentes esquemas de tutoría universitaria
- 📊 Reportes e Indicadores: Generación de métricas para la toma de decisiones
- 🔐 Autenticación y Autorización: Sistema seguro de gestión de accesos
- 📱 API RESTful: Endpoints bien documentados y estructurados
- Framework: ASP.NET Core
- Lenguaje: C# (. NET)
- Base de Datos: SQL Server 2019
- ORM: Entity Framework Core
- Autenticación: JWT (JSON Web Tokens)
- Documentación API: Swagger/OpenAPI
- Containerización: Docker
- . NET SDK (versión 6.0 o superior)
- Docker (opcional, para containerización)
- Base de datos (SQL Server 2019)
- IDE recomendado: Visual Studio 2022 o Visual Studio Code
git clone https://github.com/ReactGPT/MiTutor-backend.git
cd MiTutor-backendCrear un archivo appsettings.Development.json en la raíz del proyecto:
{
"ConnectionStrings": {
"DefaultConnection": "Server=localhost;Database=MiTutor;User Id=usuario;Password=contraseña;"
},
"Jwt": {
"Key": "tu-clave-secreta-jwt",
"Issuer": "MiTutor",
"Audience": "MiTutorClient",
"ExpireMinutes": 60
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}dotnet restoredotnet ef database updatedotnet runLa API estará disponible en: https://localhost:5001 o http://localhost:5000
Una vez que el proyecto esté en ejecución, accede a la documentación interactiva de Swagger:
https://localhost:5001/swagger
POST /api/auth/login- Iniciar sesiónPOST /api/auth/register- Registrar nuevo usuarioPOST /api/auth/refresh- Renovar token
GET /api/tutores- Listar tutoresGET /api/tutores/{id}- Obtener tutor por IDPOST /api/tutores- Crear tutorPUT /api/tutores/{id}- Actualizar tutorDELETE /api/tutores/{id}- Eliminar tutor
GET /api/estudiantes- Listar estudiantesGET /api/estudiantes/{id}- Obtener estudiante por IDPOST /api/estudiantes- Crear estudiantePUT /api/estudiantes/{id}- Actualizar estudiante
GET /api/citas- Listar citasGET /api/citas/{id}- Obtener cita por IDPOST /api/citas- Programar citaPUT /api/citas/{id}- Actualizar citaDELETE /api/citas/{id}- Cancelar cita
GET /api/reportes/indicadores- Obtener indicadores generalesGET /api/reportes/tutor/{id}- Reporte por tutorGET /api/reportes/estudiante/{id}- Reporte por estudiante
MiTutor-backend/
├── Controllers/ # Controladores de la API
├── Models/ # Modelos de datos
├── DTOs/ # Data Transfer Objects
├── Services/ # Lógica de negocio
├── Repositories/ # Capa de acceso a datos
├── Data/ # Contexto de base de datos
├── Migrations/ # Migraciones de EF Core
├── Middleware/ # Middleware personalizado
├── Helpers/ # Utilidades y helpers
├── appsettings.json # Configuración de aplicación
└── Program.cs # Punto de entrada
[Especificar licencia - MIT, Apache 2.0, etc.]
- Organización: Equipo
Desarrollado con ❤️ para mejorar la experiencia de tutoría universitaria