Skip to main content
The teacher role (maestro) is the primary content and class management role. Teachers create classes, assign activities, manage their student roster, communicate with students, and use Montero AI tools to generate educational content.

Registration and verification

Teacher registration requires an additional identity verification step beyond a standard email and password.
1

Navigate to the registration page

Go to /auth/maestro/registro. The RegisterTeacher component collects the teacher’s name, email, password, and teacher ID number.
2

Teacher ID verification

The submitted teacher ID is checked against a verify-teacher-id endpoint during registration. Only IDs that pass verification are accepted. This prevents unauthorized users from self-registering as teachers.
3

Email confirmation

After registration, a confirmation email is sent. The teacher must confirm their address via the /confirmar route before they can log in.
4

Log in

Teachers log in at /auth/maestro. On success, a signed JWT is stored in the u_token cookie and they are redirected to /app/maestro.

Teacher dashboard (/app/maestro)

The teacher dashboard loads statistics asynchronously and presents an overview of the teacher’s entire class portfolio.

Graded activities

A donut chart comparing the total number of activity submissions against the number that have been graded.

Students by gender

A donut chart breaking down the student population across all classes by gender (female / male).

Stars received

A circular progress chart showing how many students have awarded the teacher a star, out of the total student count.

Recent conversations

A sidebar listing the last 3 student conversations, with quick links to open each chat thread.
Additional bar charts show:
  • Students by age — distribution across all classes.
  • Students by class — enrolment count per class.
  • Activities graded by class — graded vs. total activities per class.
The dashboard banner also provides quick-access buttons to view all classes or create a new class.

Managing classes (/app/maestro/clases)

Teachers can create and manage multiple classes. Each class has a name, description, cover photo, and a unique enrollment code that students use to join.

Creating a class

Click Añadir nueva clase from the dashboard or the classes list (/app/maestro/clases?kid=new) to open the class creation form.

Class detail (/app/maestro/clases/[id_class])

Each class has four sub-sections accessible via a tabbed layout:
SectionRouteDescription
Overview/app/maestro/clases/[id_class]Class summary
Activities/app/maestro/clases/[id_class]/actividadesCreate and manage activities
Students/app/maestro/clases/[id_class]/alumnosRoster, approval queue, and messaging
Messages/app/maestro/clases/[id_class]/mensajesIn-class direct messages with students
Containment/app/maestro/clases/[id_class]/contencionFlagged wellbeing situations

Managing students

The Alumnos tab in a class lists all enrolled and pending students.

Enrolled students

Shows each student’s name, email, phone, age, and activity completion progress bar (delivered / assigned activities).

Pending approval

Lists students who have requested to join but have not yet been approved. Teachers can approve or reject each request individually.

Inviting students

Click Invitar alumnos to open a modal where you enter the student’s email address. The platform sends an invitation via the /api/teacher/invite-student endpoint.

Approving or rejecting students

Pending students appear in the Pendientes de aprobación tab. Teachers click the check button to approve (calls /api/teacher/approve-reject-student with approved=true) or the X button to reject.

Removing students

From the Inscritos tab, teachers can remove a student from the class using the trash icon, which calls /api/teacher/delete-student.

Activities

Activities are assignments created by the teacher and submitted by students. The Actividades tab organizes them into three states:
StateDescription
En cursoActivities currently open for student submission within their date range
PendientesActivities whose deadline has passed and are awaiting teacher grading
FinalizadasActivities that are fully graded and closed

Activity types

TypeDescription
simpleMultiple-choice. The teacher defines questions and options; the platform auto-scores correct answers.
developmentOpen-ended. Students type free-text answers that the teacher reviews and scores manually.

Grading

Teachers open a student’s submission from the activity detail view, review the answers, assign a qualification score (up to the configured maximum), and optionally leave a written comment. The student sees their grade and comment after the teacher saves.

In-class messaging (/app/maestro/clases/[id_class]/mensajes)

Teachers can exchange direct messages with individual students within a class. The messages page allows the teacher to:
  • Select a student from the class roster to open their conversation.
  • Send text messages that appear in real time in the student’s class detail view.
  • See read receipts indicating when the student has viewed the message.

Montero AI tools (/app/maestro/montero)

Montero provides teachers with an AI content generation suite. The tools are available at /app/maestro/montero and each opens a dedicated page at /app/maestro/montero/[type_tool].

Refrescar conocimiento

Generates a topic refresher — a concise summary or recap of a concept to share with students.

Creación de ejemplos

Produces worked examples for a given topic or skill, adapted to the teacher’s specifications.

Creación de exámenes

Generates exam questions (multiple-choice or open-ended) that can be used directly as class activities.

Preguntas de repaso

Creates review questions to help students consolidate learning after a lesson.

Contextos del mundo real

Produces real-world application contexts to make abstract topics more concrete and relatable.

Montero para alumnos

Opens a chat interface where the teacher can interact with Montero from the student’s perspective — useful for previewing the AI tutor experience.
Content generation requests are submitted to the /api/teacher/tool-generate endpoint, which calls Groq or OpenAI to produce the output.

Key routes

RoutePurpose
/auth/maestroLogin
/auth/maestro/registroRegistration with teacher ID verification
/app/maestroDashboard with statistics
/app/maestro/clasesClass list
/app/maestro/clases/[id_class]Class overview
/app/maestro/clases/[id_class]/actividadesActivity management
/app/maestro/clases/[id_class]/alumnosStudent roster and approval
/app/maestro/clases/[id_class]/mensajesIn-class messaging
/app/maestro/clases/[id_class]/contencionContainment situations
/app/maestro/monteroAI content generation tools
/app/maestro/cuentaAccount management