Sistema de evaluación y gestión de competencias técnicas para empleados universitarios. Permite a empleados autoevaluarse, a gestores analizar resultados y administrar cursos/usuarios, y a ejecutivos visualizar métricas globales.
- Frontend: React + TypeScript, TailwindCSS, React Router, Axios, Recharts.
- Rutas principales:
/empleado: Autoevaluación de competencias./gestor: Panel de gestor (dashboard, administración de cursos y usuarios, dashboard ejecutivo).
- Rutas principales:
- Backend: Node.js + Express + SQLite3.
- API RESTful para gestión de evaluaciones, cursos, usuarios, comentarios y reportes.
- Base de datos: SQLite (tablas: evaluaciones, cursos, recomendaciones, usuarios, comentarios).
- Node.js >= 16
- npm
cd backend
npm install
npm run dev # o npm startEl backend corre por defecto en http://localhost:4000.
node seedCursos.jscd frontend
npm install
npm startEl frontend corre por defecto en http://localhost:3000 y usa proxy al backend.
- Autoevaluación de competencias técnicas.
- Envío y confirmación de evaluación.
- Visualización del estado del proceso.
- Dashboard con métricas y análisis por área.
- Listado y detalle de evaluaciones.
- Revisión y marcaje de evaluaciones.
- Administración de usuarios y cursos.
- Descarga de backup JSON.
- Dashboard ejecutivo con métricas globales y comparativas.
GET /api/cursos— Listar cursosPOST /api/cursos— Crear cursoPUT /api/curso/:id— Editar cursoDELETE /api/curso/:id— Eliminar curso
POST /api/evaluacion— Crear evaluación (autoevaluación empleado)GET /api/evaluaciones— Listar todas las evaluacionesGET /api/evaluacion/:id— Detalle de evaluación (incluye recomendaciones)POST /api/evaluacion/:id/revisar— Marcar como revisada y añadir notas gestorGET /api/reporte/:id— Descargar reporte TXT profesional
GET /api/estadisticas— Métricas generalesGET /api/gestor/dashboard— Dashboard gestor (análisis por área)GET /api/ejecutivo/dashboard— Dashboard ejecutivo (métricas globales)
GET /api/evaluacion/:id/comentarios— Listar comentariosPOST /api/evaluacion/:id/comentarios— Añadir comentario
GET /api/usuarios— Listar usuariosPOST /api/usuarios— Crear usuarioPUT /api/usuario/:id— Editar usuarioDELETE /api/usuario/:id— Eliminar usuario
GET /api/backup— Descargar backup JSON de toda la base de datos
ucorp/
├── backend/
│ ├── index.js # Servidor Express y endpoints
│ ├── db.js # Conexión y migración SQLite
│ ├── seedCursos.js # Script de inicialización de cursos
│ └── package.json # Dependencias backend
├── frontend/
│ ├── src/
│ │ ├── App.tsx # Rutas principales
│ │ ├── pages/
│ │ │ ├── empleado/ # Vistas empleado
│ │ │ └── gestor/ # Vistas gestor y ejecutivo
│ ├── tailwind.config.js # Configuración Tailwind
│ └── package.json # Dependencias frontend
└── README.md # (Este archivo)
- express
- cors
- body-parser
- sqlite3
- nodemon (dev)
- react, react-dom, react-router-dom
- typescript
- tailwindcss, autoprefixer, postcss
- axios
- recharts
- zod, react-hook-form
- El sistema está pensado para ser ejecutado localmente o en entornos de desarrollo.
- La base de datos SQLite se crea automáticamente al iniciar el backend.
- El frontend y backend pueden ejecutarse en paralelo.
- Para personalizar estilos, editar
frontend/tailwind.config.js. - Para agregar cursos iniciales, ejecutar
node backend/seedCursos.js.
Desarrollado por el equipo de SoftU. Licencia ISC.