PlataformaEduca stores all data in a MySQL 8 database namedDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/miagv/PlataformaEduca/llms.txt
Use this file to discover all available pages before exploring further.
plataforma_educativa. Hibernate manages the schema automatically via spring.jpa.hibernate.ddl-auto=update — no manual migration scripts are required. On first startup, the DataInitializer component inserts a baseline set of roles, users, grade levels, classrooms, and courses.
Requirements
- MySQL 8.x or higher
- Schema name:
plataforma_educativa
Table reference
The tables below are created automatically by Hibernate on first startup.User and authentication tables
usuarios
usuarios
Stores all user accounts.
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
nombres | varchar | First name(s) |
apellidos | varchar | Last name(s) |
email | varchar | Unique; used as login identifier |
password | varchar | BCrypt hash |
activo | boolean | Whether the account is active |
roles
roles
Defines the available roles. Seeded automatically on first startup.
Seeded values:
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
nombre | varchar | Role name |
USER, ADMIN, COORDINADOR, DOCENTE, ESTUDIANTEusuario_roles
usuario_roles
Join table for the many-to-many relationship between
usuarios and roles.| Column | Type | Notes |
|---|---|---|
usuario_id | bigint | Foreign key → usuarios.id |
rol_id | bigint | Foreign key → roles.id |
Role-specific profile tables
coordinadores
coordinadores
One record per user with the COORDINADOR role.
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
area | varchar | Administrative area |
usuario_id | bigint | Foreign key → usuarios.id |
docentes
docentes
One record per user with the DOCENTE role.
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
especialidad | varchar | Teaching specialty |
usuario_id | bigint | Foreign key → usuarios.id |
estudiantes
estudiantes
One record per user with the ESTUDIANTE role.
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
codigo | varchar | Student code |
grado_id | bigint | Foreign key → grados.id |
usuario_id | bigint | Foreign key → usuarios.id |
Academic structure tables
grados
grados
Grade levels for students.
Seeded values:
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
nombre | varchar | Grade name |
seccion | varchar | Section identifier |
1ro Secundaria A, 2do Secundaria Bsalones / aulas
salones / aulas
Physical classrooms and labs.
Seeded values:
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
nombre | varchar | Room name |
capacidad | int | Student capacity |
ubicacion | varchar | Physical location |
Aula 101, Laboratorio Acursos
cursos
Course catalog.
Seeded values:
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
nombre | varchar | Course name |
descripcion | varchar | Course description |
creditos | int | Credit value |
estado | boolean | Whether the course is active. Defaults to true. |
Matemáticas (4 credits), Comunicación (3 credits)periodos
periodos
Academic periods (semesters, quarters, etc.).
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
nombre | varchar | Period name |
fechaInicio | date | Start date |
fechaFin | date | End date |
activo | boolean | Whether the period is current |
Assignment and grading tables
asignaciones_docentes
asignaciones_docentes
Links a teacher to a course, classroom, and academic period.
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
docente_id | bigint | Foreign key → docentes.id |
curso_id | bigint | Foreign key → cursos.id |
salon_id | bigint | Foreign key → salones.id |
periodo_id | bigint | Foreign key → periodos.id |
evaluaciones
evaluaciones
Assessment definitions linked to a course and teacher assignment.
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
titulo | varchar | Assessment title |
porcentaje | decimal | Weight as a percentage of the final grade |
fecha | date | Assessment date |
curso_id | bigint | Foreign key → cursos.id |
asignacion_docente_id | bigint | Foreign key → asignaciones_docentes.id |
notas
notas
Individual student grades for each assessment.
| Column | Type | Notes |
|---|---|---|
id | bigint | Primary key, auto-increment |
nota | decimal | Numeric grade |
observacion | varchar | Optional teacher comment |
evaluacion_id | bigint | Foreign key → evaluaciones.id |
estudiante_id | bigint | Foreign key → estudiantes.id |
Seed data
TheDataInitializer component runs once on first startup and inserts the following accounts:
| Password | Role | |
|---|---|---|
| admin@gmail.com | admin123 | ADMIN |
| coord@gmail.com | coord123 | COORDINADOR |
| profe@gmail.com | profe123 | DOCENTE |
| alumno@gmail.com | alumno123 | ESTUDIANTE |
1ro Secundaria A, 2do Secundaria B), two classrooms (Aula 101, Laboratorio A), and two courses (Matemáticas with 4 credits, Comunicación with 3 credits).