All documentation

Language Settings

Pick your preferred language once. The whole platform and your AI tools respect it.

Students · Tutors · Institutions3 min read
Who this is for
Anyone more comfortable in an Indian language than English — students first, but tutors and institution admins can also switch.

Overview

Your preferred language is stored on your user record as preferredLanguage (ISO 639-1 code). It's used in two places:

  • The UI surface — strings, labels, navigation.
  • AI responses — the doubt solver, writing coach, and study notes use this code to choose their output language.

Supported languages

CodeLanguageUI statusAI status
enEnglishFullFull
hiHindiFullFull
teTeluguPartialFull
taTamilPartialFull
knKannadaPartialFull
bnBengaliPartialFull
mrMarathiPartialFull
UI partial = English fallback
"Partial" means some UI labels still appear in English while translation is in progress. AI tools always respect the chosen language regardless.

Changing your language

  1. Open Dashboard → Settings → Preferences, or click the language dropdown in the header.
  2. Pick the language. The change is saved immediately.
  3. The UI updates on the next page navigation; AI responses honour the new language on the next request.

The setting is a PATCH to /api/user/preferences with the single field preferredLanguage. The server validates it against the allow-list above and rejects unknown codes.

What changes when you switch

  • UI strings — translated where available.
  • Emails — system emails (verification, queued, live) are templated per language where translations exist.
  • AI tutor chat (Aiden) — replies in your language.
  • AI doubt solver — explanations in your language.
  • AI study notes — generated in your language.
  • Writing coach — feedback in your language; the analysed text stays in its original language.

What doesn't change: lesson content (the tutor wrote it), test questions (the question's own language), peer messages.

AI responses in your language

All AI-powered features pass your preferredLanguage as part of the system prompt. For example, the doubt solver passes:

solveDoubt({
  question,
  subject,
  grade,
  preferredLang: user.preferredLanguage ?? "en",
})

Even if you write a question in English, the answer comes back in your selected language. You can override per-message by writing the question in another language — the model usually responds in the language you wrote in.


Header Logo