/app/maestro/clases/{class_id}/actividades/{task_id}. You navigate there by clicking Evaluaciones on any activity card in the activities list.
Grading interface overview
The page is split into two columns:Submission list
A filterable, sortable data table listing every student who submitted. Columns: student name, delivery date, current score, and a view action.
Stats sidebar
A sticky panel on the right showing aggregate stats: total assigned, delivered, not delivered, min/max score, graded count, and not yet graded count.
Filtering submissions
Two tabs appear above the table:| Tab | Meaning |
|---|---|
| Pendientes | Submissions that have not been graded yet (status !== 'qualified') |
| Calificadas | Submissions that have already been graded (status === 'qualified') |
Reviewing and grading a submission
Open the submission
Click the eye icon on any row in the data table. The table is replaced by the individual submission view.
Read the student's responses
The submission is displayed based on the activity type:
- Simple (multiple choice) — each question is shown with all options; the selected option is highlighted.
- Development (open-ended) — each question is shown with the student’s free-text answer, or “Sin respuesta” if they left it blank.
Enter a comment (optional)
A text input at the bottom of the submission accepts an optional comment. This comment is stored alongside the grade and is visible to the student.
Enter a score
An inline numeric input shows the current score (
qualification) next to the maximum (/ {max_qualification}). The input is clamped to the range 0 through max_qualification — values outside this range are corrected automatically.Save the grade
Click Calificar. The client sends:On success, the server updates the A success message appears below the save button. The submission list in the background is also updated reactively — the row moves from Pendientes to Calificadas.
tasks_completed row:How grades appear to students
Once a submission is graded (status: 'qualified'), the student can see:
- Their numeric score and the maximum possible score
- The teacher’s comment (if provided)
- The status badge changing from pending to graded
/app/clases/{class_id}).
Score validation rules
| Condition | Behaviour |
|---|---|
| Score below 0 | Clamped to 0 |
| Score above max | Clamped to max_qualification |
| Non-numeric input | Save button shows validation error; no request is sent |
| Empty score field | Stored as null; status still set to qualified |
The
qualification field can be null if you save without entering a number. This marks the submission as reviewed (status: 'qualified') but with no numeric score. You can return and update the score at any time.API reference
| Endpoint | Method | Purpose |
|---|---|---|
/api/teacher/grade-task | POST | Save a score and optional comment for a student submission |
Request fields
| Field | Type | Required | Notes |
|---|---|---|---|
id | string (UUID) | Yes | ID of the tasks_completed row |
qualification | number or empty string | No | Score value; empty string stored as null |
comment | string | No | Feedback shown to the student |
id_task | string (UUID) | Yes | ID of the parent task |
id_class | string (UUID) | Yes | ID of the class |