Paste an ICU MessageFormat message, pick a language — get syntax errors, missing plural categories and a preview of every branch.
What is ICU MessageFormat?
ICU MessageFormat is the industry standard for handling plurals, genders and placeholders in UI strings. It is supported by react-intl (FormatJS), i18next, Angular, Fluent, Java, PHP and most localization libraries.
A plural message chooses one of several branches depending on a number. The branch keywords (zero, one, two, few, many, other) are defined per language by the Unicode CLDR — English needs only 'one' and 'other', Russian needs 'one', 'few' and 'many', Arabic uses all six.
{count, plural,
one {You have # unread message}
other {You have # unread messages}
}
The most common mistakes are a missing 'other' branch (a hard error in ICU), plural categories the target language never uses, and unbalanced braces. This validator catches all of them and shows which categories each language actually requires.