---
url: 'https://simonerescio.it/en/2015/02/spell-updated-with-support-for-cyrillic-characters'
title: Spell updated with support for cyrillic characters
author:
  name: Simone Rescio
  url: 'https://simonerescio.it/en/about-me/'
date: '2015-02-21T19:53:39+01:00'
modified: '2026-04-23T00:01:30+02:00'
type: post
summary: 'Spell 1.1.0 adds support for Cyrillic characters (Unicode range 0400–045F) and Russian as the sixth app language, with custom transliteration for TTS pronunciation.'
categories:
  - PhoneGap
tags:
  - Spell
image: 'https://simonerescio.it/wp-content/uploads/2015/02/spell-cyrillic.jpg'
published: true
---

# Spell updated with support for cyrillic characters

To release quickly a first MVP (*minimum viable product*) of my application, in the first version I have limited the support to the first 255 characters of the Unicode table for several reasons, first of all the fact that it is used by the most common password generators, but also for the very large geographical spread of the Latin alphabet, also used in many non-European languages.[![Writing systems of the world — Latin and Cyrillic alphabets highlighted](https://simonerescio.it/wp-content/uploads/2015/02/Writing_systems_worldwide-1024x475.png)](https://en.wikipedia.org/wiki/Alphabet)  

*Latin and Cyrillic Alphabets, source [Wikipedia](https://en.wikipedia.org/wiki/Alphabet)*

With the release of **Spell 1.1.0** today on Google PlayStore I introduced support to most of the characters of the **Cyrillic alphabet**, used mainly in Russian and most of the Slavic languages, and thus support for the spelling of **pass-phrases** in these languages.

[![Animated password strength demo showing time-to-crack for Cyrillic pass-phrases in Spell 1.1.0](https://simonerescio.it/wp-content/uploads/2015/02/inte-password-timetocrack.gif)](https://simonerescio.it/en/2015/02/spell-updated-with-support-for-cyrillic-characters/inte-password-timetocrack-2)

Going into details, using as a reference the [official Unicode table for Cyrillic characters](https://www.unicode.org/charts/PDF/U0400.pdf), I introduced support for the range **0400-045F**, which includes the 33 letters used for the Russian language with both upper and lower cases, and many accented letters that are case sensitive as well. For now are excluded the letters belonging to the “historic” subsets.

For the pronunciation of the 33 uppercase cyrillic alphabet letters I used the [Russian spelling alphabet](https://en.wikipedia.org/wiki/Russian_spelling_alphabet), adopted by the Russian military, navy and police.  For the lower case I referred to the [table of most frequent words](https://en.wiktionary.org/wiki/Wiktionary:Frequency_lists/Russian) in relation to each Cyrillic character.

Taking the opportunity, I added ***Russian** as the sixth language of the app*, it will be available in presence of a Russian-language TTS engine installed, and if the system language is Russian it will be pre-selected with the first startup.

By performing this upgrade I could see that the TTS engines of western languages do not handle cyrillic characters, so that passing a cyrillic string to an Italian or English TTS will result in the smartphone staying silent.  

For this reason it was necessary to include a transliteration of each item with Latin characters to make them pronounceable. The TTS of each language, however, has some peculiarities about the pronunciation of vowels, also in combination with certain consonants, so I proceeded to customize where necessary transliteration so that the sound you hear is as close as possible to the Russian version in all languages.

Clearly the Russian translation of the app was made with Google translate, so if you have knowledge of the language and notice some embarrassing mistakes do not hesitate to point them out 🙂

- [1. Changelog](#changelog)
- [2. Download](#download)

## Changelog

- Added support for cyrillic characters in the Unicode interval 1024-1119

- Added Russian translation

- Improved the pronunciation of latin alphabet characters in all languages

- Fixed number 1 “un” not pronounced by French TTS

## Download

[Get Spell for free on ![google-play-store-logo](https://simonerescio.it/wp-content/uploads/2014/05/google-play-store-logo.png)](https://web.archive.org/web/20210127142610/https://play.google.com/store/apps/details?id=it.simonerescio.spell)

 [](https://mastodon.social/share?text=http%3A%2F%2Fsresc.io%2F9b2&title=Spell%20updated%20with%20support%20for%20cyrillic%20characters)[](https://www.linkedin.com/sharing/share-offsite/?url=http%3A%2F%2Fsresc.io%2F9b2)[](https://simonerescio.it/en/2015/02/spell-updated-with-support-for-cyrillic-characters)[](https://reddit.com/submit?url=http%3A%2F%2Fsresc.io%2F9b2&title=Spell%20updated%20with%20support%20for%20cyrillic%20characters)[](https://api.whatsapp.com/send?text=Spell%20updated%20with%20support%20for%20cyrillic%20characters http%3A%2F%2Fsresc.io%2F9b2)[](https://bsky.app/intent/compose?text=Spell%20updated%20with%20support%20for%20cyrillic%20characters%20http%3A%2F%2Fsresc.io%2F9b2)[](https://telegram.me/share/url?url=http%3A%2F%2Fsresc.io%2F9b2&text=Spell%20updated%20with%20support%20for%20cyrillic%20characters)[](https://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fsresc.io%2F9b2)

