Draft help center · most features described here are planned and marked as such

Help center

Short answers for teachers and school IT. Search, or pick a task on the left.

Available nowPlanned, not yet available
Browse topics

Get started

Available nowiPhone, iPad, Android, Chromebook

Keep Maestra on your phone’s home screen

The web app installs like an app: its own icon, full screen, and it opens offline once it has loaded.

  • iPhone and iPad: open maestra.sh/app in Safari, tap Share (the square with an arrow), then Add to Home Screen → Add.
  • Android: open it in Chrome, tap ⋮, then Install app (or Add to Home screen).
  • Chromebook or computer: in Chrome, click the install icon at the right of the address bar, or ⋮ → Cast, save and share → Install page as app…

Sign in once and your progress follows you between the phone, the computer and the Mac’s Terminal.

Available nowMac only

Install Maestra on a Mac (Terminal)

The Terminal version is the only one you can run today. You need a Mac with Apple silicon (M1 or newer) and macOS 11 or newer. Listening to your answer needs macOS 26; everything else works on older versions. You don't need Node or anything else.

  1. Open Terminal: press ⌘-Space, type terminal, press Enter.
  2. Paste this line and press Enter:
    curl -fsSL https://maestra.sh/install.sh | bash
  3. Type maestra and press Enter. Press Enter again to start practising.

What the installer does. It checks that this is an Apple silicon Mac, reads which version is current, downloads it, checks its sha256 fingerprint (and stops if it doesn't match), and puts it in ~/.local/share/maestra with the maestra command in ~/.local/bin. It never asks for your password and never edits your shell settings: if ~/.local/bin isn't on your PATH, it prints the one line to add. Read the script first.

Nothing is spoken? Check the volume, and add the voice Paulina under System Settings → Accessibility → Spoken Content → System Voice → Manage Voices.

"command not found: maestra"? Run the two lines the installer printed about your PATH, or open a new Terminal window and try again.

To update, run the same install line again. To remove:

curl -fsSL https://maestra.sh/install.sh | bash -s -- --uninstall

That removes the program and keeps your practice history in ~/.maestra. Installed an earlier test build with npm? Remove that one with npm rm -g lupita.

Other devices: see Downloads for what's planned and when.

Set up this device

Available nowMac · Chrome

What runs on your device

Maestra can do four things on your own device: translate for e and s (English to Spanish, Spanish to English), score your answers, hear your Spanish, and speak. On the device it's free and works offline. Where your device can't, Maestra's server fills in — see Privacy for what is sent.

To see what your device has, open Settings: the on this device lines at the top say, for each one, whether it's ready, downloading (and how far along), can be downloaded, needs setting up, or isn't available here — and what Maestra is using right now. Press d to download what can be downloaded, or g for these steps inside the app. When something finishes downloading, Maestra switches to it by itself and tells you once.

Available nowMac

Mac: translation (Apple Translation)

  1. It needs macOS 15 or newer.
  2. Open System Settings → General → Language & Region.
  3. At the bottom, click Translation Languages…
  4. Find Spanish and click its download button. Wait for it to finish.
  5. In Maestra, press h at a prompt: it now translates on your Mac, offline.
Available nowMac

Mac: scoring (Apple Intelligence)

  1. It needs a Mac with Apple silicon (M1 or newer) and macOS 26 or newer.
  2. Open System Settings → Apple Intelligence & Siri.
  3. Turn on Apple Intelligence. macOS downloads its model, which can take a while; keep the Mac on power and online.
  4. Start Maestra again. Your answers can then be scored on your Mac.
Available nowMac

Mac: hearing Spanish

  1. It needs macOS 26 or newer. Maestra downloads the Spanish speech model itself the first time you listen.
  2. If it never finishes, open System Settings → Keyboard → Dictation and add Spanish (Mexico) under Languages.
  3. Allow the microphone: System Settings → Privacy & Security → Microphone, and turn on your terminal app.
  4. Allow speech: System Settings → Privacy & Security → Speech Recognition, and turn on your terminal app.
  5. In Maestra: Settings → test the microphone.
Available nowMac

Mac: the Paulina voice

  1. Open System Settings → Accessibility → Spoken Content.
  2. Next to System Voice, open the menu and choose Manage Voices…
  3. Find Spanish (Mexico), tick Paulina, and wait for it to download.
  4. You don't need to make it the system voice: Maestra picks it by name.
Available nowChrome on a computer

Chrome: translation

  1. It needs Chrome 138 or newer on a computer (Windows, Mac, Linux or a Chromebook). Check at chrome://settings/help.
  2. In Maestra: Settings → d → translation. Chrome downloads Spanish once.
  3. Or press h at a prompt: the first time, Chrome downloads Spanish while Maestra's server answers.
  4. Other browsers, and Chrome on phones, have no built-in translator; there h uses Maestra's server.
Available nowChrome on a computer

Chrome: scoring (the on-device model)

  1. It needs Chrome 138 or newer on a computer, and at least 22 GB free on the disk Chrome is on.
  2. The computer needs a graphics card with more than 4 GB of memory, or 16 GB of RAM and 4 CPU cores.
  3. In Maestra: Settings → d → scoring. Chrome downloads about 2 GB, once; use an unmetered connection.
  4. To see how it's doing, open chrome://on-device-internals in a new tab.
  5. Without it, your answers are still scored by Maestra's server.
Available nowChrome

Chrome: hearing Spanish

  1. Maestra asks Chrome for its Spanish speech pack (about 100 MB) the first time you press a key.
  2. If it never arrives, open chrome://settings/accessibility in a new tab and turn on Live Caption.
  3. Under Live Caption, choose Add languages → Spanish, and wait for it to download.
  4. Turn Live Caption back off: the pack stays, and its captions would otherwise show you the Spanish Maestra is saying.
  5. Reload Maestra. On a school Chromebook Live Caption may be locked; ask whoever looks after it.
Available nowAny browser

A Spanish voice in the browser

The browser speaks with your system's voices. Lesson lines with a recording are always read by the recorded voice.

  • Mac: System Settings → Accessibility → Spoken Content → System Voice → Manage Voices… → Spanish (Mexico) → Paulina.
  • Android: Settings → Accessibility → Text-to-speech output → your engine's settings → Install voice data → Spanish. (Menus differ between phone makers.)
  • Chromebook: Settings → Accessibility → Text-to-Speech → speech engine / voices, and add Spanish.

Then reload Maestra.

Menus move between versions. If a step isn't where it says, search your settings for the words in bold.

Available nowiPhone app

iPhone: translation (Apple Translation)

  1. It needs iOS 18 or newer. Maestra uses Apple’s own translator for e and s.
  2. The first time you press e or s, iPhone may ask to download Spanish: tap Download.
  3. Or ahead of time: Settings → Apps → Translate → Downloaded Languages → Spanish.
  4. Without it, Maestra’s server translates instead.
Available nowiPhone app

iPhone: Apple Intelligence

  1. Maestra does not score with the phone’s own model yet: your answers are scored by Maestra’s server.
  2. Apple Intelligence needs an iPhone 15 Pro or newer on iOS 26: Settings → Apple Intelligence & Siri.
  3. Settings → On this device shows what this iPhone has; nothing here needs setting up for Maestra to work.
Available nowiPhone app

iPhone: hearing Spanish

  1. Allow the microphone and speech recognition the first time Maestra asks. Changed your mind: Settings → Apps → Maestra.
  2. On iOS 26, Maestra fetches Apple’s Spanish speech model itself: Settings → On this device → hearing.
  3. On iOS 18: Settings → General → Keyboard → Keyboards → Add New Keyboard → Spanish (Mexico), and keep Enable Dictation on.
  4. In Maestra: Settings → test the microphone.
  5. Until the phone can hear Spanish, Maestra’s server listens for you when you are signed in.
Available nowiPhone app

iPhone: the Paulina voice

  1. Open Settings → Accessibility → Spoken Content → Voices → Spanish.
  2. Choose Paulina (Mexico) and download the Enhanced or Premium voice if it is offered.
  3. You do not need to make it the default: Maestra picks it by name. Recorded lessons play their own voice anyway.
Available nowAndroid app

Android: translation

  1. Maestra translates e and s on the phone with Google’s on-device translator.
  2. The Spanish and English models (about 30 MB each) download the first time you press a key; Wi-Fi helps.
  3. Without them, Maestra’s server translates instead.
Available nowAndroid app

Android: the on-device model

  1. Maestra does not score with the phone’s own model yet: your answers are scored by Maestra’s server.
  2. Some newer phones carry Google’s Gemini Nano; Settings → On this device shows whether this one does.
  3. Nothing here needs setting up for Maestra to work.
Available nowAndroid app

Android: hearing Spanish

  1. Allow the microphone the first time Maestra asks. Changed your mind: Settings → Apps → Maestra → Permissions.
  2. Maestra hears Spanish on the phone with Android’s on-device recogniser (Android 12 or newer).
  3. Settings → On this device → hearing fetches its Spanish model; or: Settings → System → Languages → Speech → On-device recognition → add Spanish.
  4. Until the phone can hear Spanish, Maestra’s server listens for you when you are signed in.
Available nowAndroid app

Android: a Spanish voice

  1. Open Settings → Accessibility → Text-to-speech output → Preferred engine: Speech Services by Google.
  2. Tap the engine’s settings → Install voice data → Spanish (United States), the Latin American voice, and download one.
  3. Recorded lessons play their own voice anyway.

Google Classroom

Everything in this section arrives with the school launch, planned for August 2027.

For teachers

PlannedTeachers

Connect your Google Classroom

  1. Sign in to Maestra with your school Google account.
  2. Go to Teaching → Classes → Add class → Link Google Classroom.
  3. Google asks you to allow Maestra to see your courses and rosters and to post assignments. Allow it.
  4. Pick the course. Your roster appears in about a minute.
Google says "blocked by your administrator"?Your school hasn't approved Maestra yet. Tap Ask my IT admin to email them the setup steps (about five minutes of their time). Meanwhile, give students a join code.

Signing in with Google and join codes need no Classroom link.

PlannedTeachers

See what syncs with Classroom

DirectionWhat movesWhen
Classroom → MaestraCourse name; each student's name, email and Google accountWhen you link, and each time you open the class
Maestra → ClassroomAn assignment for each lesson you post: title, the goal in words, due date and a linkWhen you assign, if "Post to Google Classroom" is on
Maestra → ClassroomCompletion or a grade, on assignments Maestra createdWhen a student finishes the goal

Never synced: practice a student does on their own, and anything on coursework Maestra didn't create. The goal itself (for example, "learn every phrase") is checked in Maestra; Classroom only sees the result.

PlannedTeachers

Fix "On the roster, not signed in yet"

Maestra never creates student accounts for you. A student shows this label when they're on your Classroom roster but haven't opened Maestra and signed in yet.

  1. Ask them to open the Maestra assignment in Google Classroom.
  2. They sign in with their school Google account. Maestra matches them to your roster automatically and the label goes away.
Sign-in blocked for students?Google blocks students under 18 from any app the school hasn't approved, even when teachers can use it. Send your IT team the setup steps. Until then, give the student your class's join code and approve them in the class list.
PlannedTeachers · free

Use a join code for a class that isn't in Classroom

  1. Go to Teaching → Classes → Add class → Join code, and name the class.
  2. Share the code, the link or the QR code (projected on the board works well).
  3. Students enter it in My classes → Join a class.
  4. Approve each student in the class list.

Join codes are free and work with any school, with or without Google.

For IT departments

PlannedIT · privacy

Review what Maestra accesses, and why

DataWhy
Name, school email, Google account IDTo sign the student in and match them to their teacher's roster
Class membershipTo show which classes a student belongs to
Progress on assigned lessonsTo show the teacher who practised

What Maestra doesn't touch: Gmail, Drive, contacts, or Classroom coursework it didn't create. Practice a student does outside assignments stays private to them; the school doesn't see it.

No ads. We don't sell or share student data, and nothing is used for advertising.

PlannedIT · Google Workspace

Read the Google permissions in plain language

Permission (scope)What it lets Maestra doAsked of
openid email profileKnow who is signing inEveryone
classroom.courses.readonlyList the teacher's courses so they can pick oneTeachers
classroom.rosters.readonlySee who is in that courseTeachers
classroom.profile.emailsSee students' emails, to match them when they sign inTeachers
classroom.coursework.studentsPost Maestra assignments and return grades on them. Google limits this to coursework Maestra created.Teachers

Students are only asked to sign in; they never grant Classroom permissions. Maestra will complete Google's app verification for these permissions before launch.

PlannedIT · privacy

Find out where student data lives

  • On the student's device: practice history, translations, and "hear yourself" voice recordings if the student turns them on (off by default). Saved recordings are never uploaded. Turning speech into text and scoring the answer run on the device wherever the device can do it; on a device that can't, the spoken answer or its text is sent to Maestra to be processed and the audio is not kept. Scoring goes to Maestra's server only if the student switches it on in Settings.
  • On Maestra's servers: the account, linked sign-ins, class memberships and progress on assigned work, tagged to your school.
  • Class records are kept or deleted as your data agreement says, and deleted whenever the school asks. If a student leaves, school access ends and their personal account stays theirs.

Hosting location and every service provider are listed in the data agreement.

PlannedIT · Google Admin console

Install on managed Chromebooks

Choose one way in, then do the three common steps.

A. Android app (Chromebooks that allow Android apps): allow Android apps for the student organisational unit, then Apps & extensions → Add from managed Google Play → Maestra → Force install.

B. Web app (any Chromebook): Apps & extensions → Add by URL, paste the Maestra web app address, set Force install.

Then, for both:

  1. Security → API controls → App access control: mark Maestra Trusted. Students under 18 can't sign in until you do.
  2. Apps → Google Workspace → Classroom → Data access: allow apps to use Classroom data, so teachers can link courses.
  3. Allow Maestra's domains in your web filter (GoGuardian, Securly, Lightspeed and the like). Blocked domains make sign-in fail silently.
Placeholders until launchThe OAuth client ID, package name, web app address and full domain list will be published here.

Tip: open Maestra once on school Wi-Fi to download the voice and translation pack; after that it works offline. Students will want headphones.

PlannedIT · legal

Get the data agreement

Ask for it through the contact form and we'll send a PDF to sign. It covers what we collect, why, where it's stored, how long it's kept, deletion on request, and the MCP server. The template is being reviewed now.

PlannedIT · policy

Switch features off for your school

Any of these can be turned off for accounts on your school's domain:

  • "Hear yourself" voice recording
  • Translation (e and s)
  • AI features: the lesson builder and lesson tests
  • The MCP server for your school's classes

You can also set how long class records are kept.

No admin portal yetUntil there is one, email us from your school domain and we'll set these for you.

MCP server

A paid teacher feature, not a public API. Planned: it comes after accounts, classes and the lesson builder, when paying teachers ask for it.

PlannedTeachers

Understand the MCP server

MCP (Model Context Protocol) is a standard way for an AI assistant, such as Claude, to use outside tools. The Maestra MCP server lets your own assistant work with your Maestra classes:

  • "Who hasn't practised this week?"
  • "Which phrases is Period 3 getting wrong?"
  • "Assign Viajes y hotel to Period 5, due Friday."
  • "Build an A2 lesson on ordering at a taquería."

It isn't an API for developers, and there's no public access.

PlannedTeachers

Check who gets it

Teachers. It doesn't work for student accounts, and it is checked on every request, so a teacher account that lapses stops getting answers.

PlannedTeachers

Connect it to your AI assistant

  1. In your AI assistant, add Maestra as a connector (the address will be listed here).
  2. Sign in with your Maestra account.
  3. Read the notice that answers go to your AI provider, and accept it.

The connection sees only your own classes. Anything it changes, such as an assignment, is logged in Teaching → Activity, where you can undo it.

PlannedTeachers

Know what it will and won't answer

It will: list your classes and rosters; show participation and who is behind on assigned work; find the phrases your class misses most; assign lessons, change due dates and excuse students; build, edit, check and publish lessons; search the lesson catalogue.

It won't, ever:

  • give a practice score for a named student (class-wide patterns only)
  • show what a student typed when asking for help
  • return voice recordings or any audio
  • answer about another teacher's class, or any student not on your roster
  • answer anything for a free or expired account
PlannedTeachers · IT · privacy

Protect student data with the MCP server

  • Answers go to your AI provider. Whatever the server returns is sent to the assistant you use, outside Maestra. You're told this and asked to accept it when you connect.
  • Pseudonymous by default. Students appear as initials or roster numbers. A name is returned only when your question is about that student.
  • The minimum, by default. Counts and class-wide patterns rather than lists of students.
  • Schools can turn it off for all their classes (see switches), and it's covered in the data agreement.

No articles match. Try a shorter word, like "code", "roster" or "Chromebook".

Still stuck?

Write to support from the contact form (coming with the launch). Tell us what you were trying to do and what you saw.