Home AssistantHome AssistantContributors
On this page

The intents repository lists 66 languages. How far each one is differs a lot: some cover nearly every intent, others have just started. The progress overview shows the score of each language, per intent.

Where the list comes from

languages.yaml in the intents repository is the source. For every language, it has:

  • nativeName: the name of the language, in that language.
  • isRTL: true for languages written right to left.
  • leaders: the GitHub usernames of the language leaders.
  • support: per region, which speech-to-text and text-to-speech engines work for the language, like Whisper, Speech-to-Phrase, Piper, or Home Assistant Link.

The table below is a snapshot of that file. When they differ, languages.yaml is right.

Languages

Code Language Language leaders
af Afrikaans None yet
ar العربية Ahmed-farag36, Natfaji
bg Български hristo-atanasov
bn বাংলা poltalashka, DrHaque
ca Català duhow
cs Čeština halecivo, schizza
cy Cymraeg None yet
da Dansk fadamsen, MTrab
de Deutsch andreasbrett, easterapps, hecktech27, mib1185
de-CH Schwyzerdütsch dontinelli
el Ελληνικά apo-mak, chatziko
en English mrdarrengriffin, vividboarder
es Español davefx, duhow
et Eesti None yet
eu Euskara urtzai
fa فارسی None yet
fi Suomi Arkkimaagi, salleq
fr Français jlpouffier, piitaya
ga Gaeilge AlanGreene
gl Galician cibernox
gu Gujarati None yet
he עברית leranp, haim-b
hi हिन्दी amankrokx
hr Hrvatski spuljko
hu Magyar nagyrobi, v1k70rk4
hy հայերեն eantonya, shahen94
id Bahasa Indonesia None yet
is íslenska thdg
it Italiano auanasgheps, xraver
ja 日本語 None yet
ka ქართული hertzg
kn ಕನ್ನಡ None yet
ko 한국어 limitless00net
kw kernewek None yet
lb Lëtzebuergesch mojikosu
lt Lietuvių None yet
lv Latviešu makstech, klejejs
ml മലയാളം arunshekher
mn монгол хэл chuk-a
mr Marathi None yet
ms Bahasa Melayu zubir2k
nb Norsk Bokmål LaStrada
ne नेपाली Rrp13
nl Nederlands TheFes
pa Punjabi kmlkrwl
pl Polski Uriziel01, witold-gren
pt Português joaorgoncalves, abmantis
pt-BR Português (Brasil) mhentschke, luyzfernando08, staticdev
ro Română tetele, gabimarchidan
ru Русский HepoH3
sk Slovenčina LubosKadasi
sl Slovenščina andrejs2
sr Српски cvladan, ddxic, darkobg79, PengBG
sr-Latn Srpski None yet
sv Svenska larsdunemark, Robin-St
sw Kiswahili BCorbeek
ta தமிழ் None yet
te తెలుగు None yet
th ภาษาไทย None yet
tr Türkçe alpdmrel
uk Українська skynetua
ur اُردُو AalianKhan
vi Tiếng Việt dinhchinh82
zh-CN 简体中文 al-one
zh-HK 繁體中文(香港) swonge
zh-TW 繁體中文(台灣) bluefoxlee

Marathi (mr) is listed, but has no sentences yet. sr-Latn is generated from sr: change Serbian in sr, and the Latin script version follows.

Add a new language

Is your language missing? You can add it. This is a bigger first step than improving an existing language, so plan for a few rounds of review.

1. Create the files

Set up the repository as described in Contribute sentences and responses, then run:

Shell
python3 -m script.intentfest add_language <code> <native name>
  • <code> is the language code. Use the two letter ISO 639-1 code where there is one, like pl. Regional or script variants add a suffix, like pt-BR or sr-Latn.
  • <native name> is the name of the language in the language itself, like Polski.
  • Add --rtl for a language written right to left.

The script adds your language to languages.yaml, and creates its sentence, response, and test files from the English ones. The sentences are left empty, and the responses start with TODO so you can see what still needs translating.

Cannot run the script yourself? Ask in the #language-leaders channel on the Home Assistant Discord server, and a maintainer can run it for you.

2. Keep the first pull request small

Limit your first pull request to:

  • The error responses in sentences/<code>/_common.yaml.
  • The slot combinations of HassTurnOn and HassTurnOff that intents.yaml marks as required, with their tests.
  • The lists in lists/<code>/ and the rules in rules/<code>/ that those sentences need.

That is enough for people to start turning things on and off in your language. More intents follow in later pull requests, one at a time.

3. Find a leader

A new language starts without a leader. If you keep contributing, consider becoming the language leader.

Note

Voice and the interface are separate. Adding a language here does not add it to the Home Assistant interface. For that, see Request a new language.

Was this page helpful?

Last updated on .