{"id":29040377,"url":"https://github.com/ginto11/gestionuniversidad-back","last_synced_at":"2026-04-24T12:04:47.036Z","repository":{"id":295378130,"uuid":"989964132","full_name":"Ginto11/GestionUniversidad-Back","owner":"Ginto11","description":"Aplicacion para la gestion de una universidad, se pueden agregar docentes, estudiantes, materias, con su respectiva inscripción de matriculas y fue desarrollado en Visual Studio, usando Sql Server y NET CORE 8.","archived":false,"fork":false,"pushed_at":"2025-06-24T03:27:55.000Z","size":109,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-24T04:29:39.407Z","etag":null,"topics":["api-rest","csharp","entity-framework-core","netcore","procedures","sql-server","visual-studio"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ginto11.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-25T07:59:27.000Z","updated_at":"2025-06-24T03:28:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"50b42c7b-4f5a-4c7b-8790-072fff1cae05","html_url":"https://github.com/Ginto11/GestionUniversidad-Back","commit_stats":null,"previous_names":["ginto11/gestionuniversidad","ginto11/gestionuniversidad-back"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Ginto11/GestionUniversidad-Back","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ginto11%2FGestionUniversidad-Back","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ginto11%2FGestionUniversidad-Back/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ginto11%2FGestionUniversidad-Back/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ginto11%2FGestionUniversidad-Back/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ginto11","download_url":"https://codeload.github.com/Ginto11/GestionUniversidad-Back/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ginto11%2FGestionUniversidad-Back/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262081117,"owners_count":23255662,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-rest","csharp","entity-framework-core","netcore","procedures","sql-server","visual-studio"],"created_at":"2025-06-26T14:05:06.233Z","updated_at":"2026-04-24T12:04:47.030Z","avatar_url":"https://github.com/Ginto11.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":" ![Badge en Desarollo](https://img.shields.io/badge/STATUS-EN%20DESAROLLO-green)\n\n# 🎓 Gestión Universidad-Back\n\n![.NET](https://img.shields.io/badge/.NET-8.0-512BD4?logo=dotnet\u0026logoColor=white) \n![C%23](https://img.shields.io/badge/C%23-12.0-239120?logo=csharp\u0026logoColor=white) \n![SQL%20Server](https://img.shields.io/badge/SQL%20Server-2019-CC2927?logo=microsoftsqlserver\u0026logoColor=white) \n![Entity%20Framework](https://img.shields.io/badge/Entity%20Framework-8.0-512BD4?logo=dotnet\u0026logoColor=white)\n\nEsta es la **API REST para la Gestión Universitaria de NovaUniversitas**.  \nSe encarga de administrar estudiantes, docentes, materias, matrículas y otros elementos críticos para la operación de la universidad, utilizando procedimientos almacenados para garantizar eficiencia y seguridad en la administración de datos.\n\n\n## 📋 Tabla de Contenido\n- [🎓 Gestión Universidad-Back](#-gestión-universidad-back)\n  - [📋 Tabla de Contenido](#-tabla-de-contenido)\n  - [🗂️ Estructura del Proyecto](#️-estructura-del-proyecto)\n  - [⚡️ Descripción General](#️-descripción-general)\n  - [⚙️ Instalación y Ejecutable Local](#️-instalación-y-ejecutable-local)\n      - [1️⃣ Clonar este repositorio](#1️⃣-clonar-este-repositorio)\n      - [2️⃣ Configurar el `appsettings.json`](#2️⃣-configurar-el-appsettingsjson)\n      - [3️⃣ Ejecutar Scripts para Procedimientos Almacenados](#3️⃣-ejecutar-scripts-para-procedimientos-almacenados)\n      - [4️⃣ Ejecutar Migraciones EF](#4️⃣-ejecutar-migraciones-ef)\n      - [5️⃣ Ejecutar el Proyecto](#5️⃣-ejecutar-el-proyecto)\n      - [6️⃣ Acceder a la Documentación de la API](#6️⃣-acceder-a-la-documentación-de-la-api)\n    - [🌐 Características principales](#-características-principales)\n  - [📁 Scripts principales](#-scripts-principales)\n  - [🔄 Endpoints principales](#-endpoints-principales)\n  - [🔐 Seguridad](#-seguridad)\n  - [💻 Próximas Actualizaciones](#-próximas-actualizaciones)\n  - [👥 Contribución](#-contribución)\n  - [✉️ Contacto](#️-contacto)\n\n\n## 🗂️ Estructura del Proyecto\n\n```plaintext\n📁 GestionUniversidad-Back/\n├─ 📁 Authentication/           → Controlador de Autenticación\n├─ 📁 Controllers/              → Controladores REST\n├─ 📁 Db/                       → Migraciones y Contexto EF\n├─ 📁 Dtos/                     → Objetos de Transferencia de Datos\n├─ 📁 Interfaces/               → Interfaces de servicios\n├─ 📁 Models/                   → Modelos de entidad\n├─ 📁 Services/                 → Lógica de negocio\n├─ 📁 Utilies/                  → Scripts y procedimientos almacenados\n└─ Program.cs                   → Configuración de la app\n```\n\n## ⚡️ Descripción General\n✅ Framework: .NET 8 (ASP.NET Core)\n✅ Lenguaje: C# 12.0\n✅ ORM: Entity Framework 8.0 para mapeo de datos y migraciones.\n✅ Base de Datos: SQL Server 2019\n✅ Autenticación y autorización con JWT.\n✅ Scripts para procedimientos críticos y generación de matrículas.\n✅ Validaciones para garantizar integridad de datos.\n✅ Endpoints REST para estudiantes, docentes, materias y matrículas.\n\n\n## ⚙️ Instalación y Ejecutable Local\n#### 1️⃣ Clonar este repositorio\n```bash\ngit clone https://github.com/Ginto11/GestionUniversidad-Back.git\n```\n\n#### 2️⃣ Configurar el `appsettings.json`\n```json\n{\n  \"ConnectionStrings\": {\n    \"DefaultConnection\": \"Server=TU_SERVIDOR;Database=TU_BASE_DATOS;User Id=TU_USER;Password=TU_PASSWORD;TrustServerCertificate=true\"\n  },\n  \"CONFIGURACION_EMAIL\": {\n    \"HOST\": \"smtp.tu-servidor.com\",\n    \"PUERTO\": 587,\n    \"EMAIL\": \"tu-correo@dominio.com\",\n    \"PASSWORD\": \"tu-contraseña-de-aplicacion\"\n  },\n  \"Encrypting\": {\n    \"IV\": \"vector_inicializacion_16_caracteres\",\n    \"Key\": \"clave_de_encriptacion_segura (recomendada de 32 caracteres)\"\n  },\n  \"Jwt\": {\n    \"Issuer\": \"https://tudominio.com\",\n    \"Audience\": \"https://tucliente.com\",\n    \"Key\": \"clave_secreta_para_tokens\"\n  }\n}\n```\n#### 3️⃣ Ejecutar Scripts para Procedimientos Almacenados\n- Abre SQL Server e importa los procedimientos que encontrarás en la carpeta `Db/Script`.\n\n#### 4️⃣ Ejecutar Migraciones EF\n```bash\ndotnet ef database update\n```\n\n#### 5️⃣ Ejecutar el Proyecto\n- Ejecuta con Visual Studio 2022 (`F5`) o por CLI:\n```bash\ndotnet run\n```\n\n#### 6️⃣ Acceder a la Documentación de la API\n```bash\nhttp://localhost:\u003cpuerto\u003e/swagger\n```\n\n### 🌐 Características principales\n- 👥 Estudiantes: Crear, editar, consultar y eliminar estudiantes.\n\n- 👔 Docentes: Gestión de datos de los docentes.\n\n- 📚 Materias: Crear y administrar asignaturas, créditos y costos.\n\n- 💳 Matrículas: Generación de matrículas basada en procedimientos almacenados.\n\n- ✅ Validaciones de datos para garantizar integridad.\n\n- 📄 Swagger UI para documentación y pruebas.\n\n## 📁 Scripts principales\n| Comando                                | Descripción                                                  |\n| -------------------------------------- | ------------------------------------------------------------ |\n| `dotnet build`                         | Compila la solución .NET.                                    |\n| `dotnet run`                           | Ejecuta la aplicación en local.                              |\n| `dotnet ef database update`            | Aplica todas las migraciones pendientes en la base de datos. |\n| `dotnet ef migrations add \u003cnombre\u003e`    | Crea una nueva migración para reflejar cambios en el modelo. |\n| `dotnet ef migrations remove \u003cnombre\u003e` | Elimina una migración no deseada.                            |\n\n## 🔄 Endpoints principales\n| Recurso     | Método | Ruta               | Descripción                              |\n| ----------- | ------ | ------------------ | ---------------------------------------- |\n| Estudiantes | GET    | `/api/estudiantes` | Lista todos los estudiantes.             |\n| Docentes    | GET    | `/api/docentes`    | Lista todos los docentes.                |\n| Login       | POST   | `/api/login`       | Autenticación de usuarios.               |\n| Materias    | GET    | `/api/materias`    | Lista todas las materias.                |\n| Matrículas  | POST   | `/api/matriculas`  | Genera una matrícula para un estudiante. |\n\n## 🔐 Seguridad\n- 🔑 Autenticación mediante JWT Bearer Tokens para todas las rutas privadas.\n\n- ⚔️ Protección contra inyecciones SQL y validación de datos en todos los endpoints.\n\n- 🔐 Encriptación de contraseñas para garantizar la seguridad de la información.\n\n\n## 💻 Próximas Actualizaciones\n- [ ] Integración con el Front‑End en Angular.\n\n- [x] Finalización de todos los endpoints restantes.\n\n- [x] Implementación de lógica para generación de matrículas mediante procedimientos.\n\n- [x] Mejoras en la estructura de la lógica de servicios.\n\n## 👥 Contribución\nSi deseas contribuir al proyecto:\n1. Realiza un fork del proyecto.\n2. Crea una nueva rama para tu feature:\n```bash\ngit checkout -b feature/nueva-funcionalidad\n```\n3. Agrega todos los cambios:\n```bash\ngit add .\n```\n4. Haz commit de los cambios:\n```bash\ngit commit -m \"Agrega nueva funcionalidad\"\n```\n5. Push al repositorio:\n```bash\ngit push origin feature/nueva-funcionalidad\n```\n\n## ✉️ Contacto\nSi deseas comunicarte para colaborar, obtener soporte o hacer consultas:\n\n- 📧 Email: salinitosnelson@gmail.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fginto11%2Fgestionuniversidad-back","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fginto11%2Fgestionuniversidad-back","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fginto11%2Fgestionuniversidad-back/lists"}