CRUD Indicadores La Salle Bajío – Frontend
Este proyecto implementa el frontend del sistema de gestión de indicadores académicos, desarrollado en .NET con Razor Pages. Proporciona una interfaz para interactuar con la API del sistema, permitiendo la gestión de entidades mediante formularios, tablas y visualización de información.
El frontend está estructurado mediante Pages, Services y DTOs, y se comunica con la API a través de peticiones HTTP. Está preparado para ejecución local, en contenedores Docker y despliegue automatizado mediante GitHub Actions.
Permite la interacción con el sistema mediante:
- Formularios para creación y edición de entidades
- Tablas para visualización de registros
- Navegación entre módulos del sistema
- Selección de relaciones mediante combobox
- Integración mediante Services (HttpClient)
- Uso de DTOs para estructurar datos
- Manejo de operaciones CRUD desde la interfaz
- Representación de información mediante componentes visuales
- Soporte para gráficas dinámicas de indicadores
- Separación entre frontend y backend
- Comunicación vía HTTP/HTTPS
- Aplicación dockerizable
- Compatible con despliegue en la nube
- .NET / Razor Pages
- C#
- HttpClient
- DTOs
- Docker
- GitHub Actions
Frontend/
├── Pages/
├── Services/
├── DTOs/
├── wwwroot/
├── Program.cs
├── appsettings.json
- Pages/: Vistas Razor y lógica de presentación
- Services/: Comunicación con la API
- DTOs/: Modelos de datos para requests/responses
- wwwroot/: Recursos estáticos (JS, CSS, gráficos)
- Program.cs: Configuración de la aplicación
- .NET SDK
- Docker Desktop
- API backend en ejecución
En appsettings.json:
"ApiSettings": {
"BaseUrl": "https://localhost:7295"
}dotnet runApiSettings__BaseUrl=https://localhost:7295
ASPNETCORE_ENVIRONMENT=Development
docker build -t kpi-frontend .
docker run -p 5001:80 kpi-frontendEl frontend realiza peticiones HTTP a la API mediante Services:
Flujo:
Pages (UI)
↓
Services (HttpClient)
↓
API
- Obtener datos → GET
- Crear registros → POST
- Actualizar → PUT
- Eliminar → DELETE
Las relaciones entre entidades se gestionan mediante selección en la interfaz, evitando interacción directa con identificadores.
El proyecto permite automatizar despliegue mediante:
- Push al repositorio
- Build del proyecto
- Construcción de imagen Docker
- Publicación en registry
- Despliegue en entorno destino
- El frontend depende de la API para la lógica de negocio
- No maneja persistencia directa
- Diseñado para integrarse con backend .NET en arquitectura desacoplada
- Extensible para mejoras visuales, reportes y optimización de experiencia de usuario