https://github.com/r37r0m0d3l/translit-ed
Aggregator of various Cyrillic transliteration methods.
https://github.com/r37r0m0d3l/translit-ed
ascii cyr2lat cyrillic romanization translit transliterate transliteration unicode
Last synced: 2 months ago
JSON representation
Aggregator of various Cyrillic transliteration methods.
- Host: GitHub
- URL: https://github.com/r37r0m0d3l/translit-ed
- Owner: r37r0m0d3l
- License: mit
- Created: 2020-08-26T19:37:26.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-04-23T03:29:59.000Z (about 3 years ago)
- Last Synced: 2025-10-04T05:48:28.796Z (9 months ago)
- Topics: ascii, cyr2lat, cyrillic, romanization, translit, transliterate, transliteration, unicode
- Language: JavaScript
- Homepage:
- Size: 68.4 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README

# Translit-Ed
[![NPM Version][npm-version-img]][npm-version-url]
[![NPM Downloads][npm-downloads-img]][npm-downloads-url]
[![TypeScript Typings][ts-img]][ts-url]
This package provides **language-aware, standard-based transliteration** for Cyrillic scripts:
| | | |
|-----------------|-----------------|----------------|
| 🇧🇾 Belarusian | 🇲🇰 Macedonian | 🇷🇸 Serbian |
| 🇧🇬 Bulgarian | 🇲🇳 Mongolian | 🇺🇦 Ukrainian |
| 🇰🇿 Kazakh | 🇷🇺 Russian | 🇺🇿 Uzbek |
## 🚀 Installation
```bash
npm install translit-ed
```
## 🛠️ Usage
```javascript
import {
cyrillicBelarusianToLatin,
cyrillicBulgarianToLatin,
cyrillicKazakhToLatin,
cyrillicMacedonianToLatin,
cyrillicMongolianToLatin,
cyrillicRussianToLatin,
cyrillicSerbianToLatin,
cyrillicToLatinUnicode, // Universal transliteration function
cyrillicUkrainianToLatin,
cyrillicUzbekToLatin,
ukrainianCyrillicToLatynka, // Two-way transliteration function
} from "translit-ed";
import {
latinToCyrillicBelarusian,
latinToCyrillicBulgarian,
latinToCyrillicKazakh,
latinToCyrillicMacedonian,
latinToCyrillicMongolian,
latinToCyrillicRussian,
latinToCyrillicSerbian,
latinToCyrillicUkrainian,
latinToCyrillicUnicode, // Universal transliteration function
latinToCyrillicUzbek,
ukrainianLatynkaToCyrillic, // Two-way transliteration function
} from "translit-ed";
```
---
## 🏗️ Examples
🇧🇾 Belarusian (Cyrillic, national standard)
```javascript
cyrillicBelarusianToLatin("Я і Юра ў Мінску.")
// Ja i Jura ŭ Minsku.
latinToCyrillicBelarusian("Ja i Jura ŭ Minsku.")
// Я і Юра ў Мінску.
```
🇧🇬 Bulgarian (Cyrillic, BGN/PCGN 2013)
```javascript
cyrillicBulgarianToLatin("Щъркелът е в ъгъла до гьола.")
// Shtarkelat e v agala do gyola.
latinToCyrillicBulgarian("Shtastie e v gyola.")
// Щастие е в гьола.
```
🇰🇿 Kazakh (Cyrillic, BGN/PCGN 1979)
```javascript
cyrillicKazakhToLatin("Әңгіме ғұрыппен қоңыр өгіз ұйықтап, үнімен һау деді.")
// Änggime ghuryppen qongyr ögiz uyyqtap, ünimen haū dedi.
```
🇲🇰 Macedonian (Cyrillic, national standard)
```javascript
cyrillicMacedonianToLatin("Ѓорѓи џвака ќебап со ѕвезда.")
// Gjorgji džvaka kjebap so dzvezda.
latinToCyrillicMacedonian("Kjutiot gjavol svira džez.")
// Ќутиот ѓавол свира џез.
```
🇲🇳 Mongolian (Cyrillic, national standard)
```javascript
cyrillicMongolianToLatin("Өндөр уул, үүлтэй өдөр.")
// Öndör uul, üültey ödör.
latinToCyrillicMongolian("Öndör üültey ödör.")
// Өндөр үүлтей өдөр.
```
🇷🇺 Russian (Cyrillic, national standard)
```javascript
cyrillicRussianToLatin("Съешь же ещё этих мягких французских булок, да выпей чаю.")
// S"yesh' zhe yeshchyo etikh myagkikh frantsuzskikh bulok, da vypey chayu.
latinToCyrillicRussian("S\"yesh' zhe yeshchyo etikh myagkikh frantsuzskikh bulok, da vypey chayu.")
// Съешь же ещё этих мягких французских булок, да выпей чаю.
```
🇷🇸 Serbian (Cyrillic, national standard)
```javascript
cyrillicSerbianToLatin("Љубав и џез.")
// Ljubav i džez.
latinToCyrillicSerbian("Njegova džez ploča.")
// Његова џез плоча.
```
🇺🇦 Ukrainian (Cyrillic, national standard)
```javascript
cyrillicUkrainianToLatin("Є юний їжак, ґудзик і гілка в яру.")
// Ye yunyi yizhak, gudzyk i hilka v yaru.
latinToCyrillicUkrainian("Ye yunyi yizhak, gudzyk i hilka v yaru.")
// Є юний їжак, ґудзик і гілка в яру.
```
🇺🇦 Ukrainian (Cyrillic, Gajica (Гаєвиця) project)
Lossless or "two-way" transliteration – never lose any original characters.
```javascript
ukrainianCyrillicToLatynka("Є юний їжак, ґудзик і гілка в яру.")
// "Je junyj jižak, gudzyk i hilka v jaru."
ukrainianLatynkaToCyrillic("Je junyj jižak, gudzyk i hilka v jaru.")
// "Є юний їжак, ґудзик і гілка в яру."
```
🇺🇿 Uzbek (Cyrillic, national standard)
```javascript
cyrillicUzbekToLatin("Ўзбекистонда қўшиқ ва ғазал.")
// O'zbekistonda qo'shiq va g'azal.
latinToCyrillicUzbek("G'oz va o'zbekcha so'z.")
// Ғоз ва ўзбекча сўз.
```
---
## 💡️ Functions
| From | • | To |
|--------------------------------|------|-----------------------------|
| `cyrillicBelarusianToLatin` | 🇧🇾 | `latinToCyrillicBelarusian` |
| `cyrillicBulgarianToLatin` | 🇧🇬 | `latinToCyrillicBulgarian` |
| `cyrillicKazakhToLatin` | 🇰🇿 | `latinToCyrillicKazakh` |
| `cyrillicMacedonianToLatin` | 🇲🇰 | `latinToCyrillicMacedonian` |
| `cyrillicMongolianToLatin` | 🇲🇳 | `latinToCyrillicMongolian` |
| `cyrillicRussianToLatin` | 🇷🇺 | `latinToCyrillicRussian` |
| `cyrillicSerbianToLatin` | 🇷🇸 | `latinToCyrillicSerbian` |
| `cyrillicUkrainianToLatin` | 🇺🇦 | `latinToCyrillicUkrainian` |
| `ukrainianCyrillicToLatynka` | 🇺🇦 | `ukrainianLatynkaToCyrillic`|
| `cyrillicUzbekToLatin` | 🇺🇿 | `latinToCyrillicUzbek` |
| `cyrillicToLatinUnicode` | 🌐 | `latinToCyrillicUnicode` |
## ⌨️ CLI Usage
You can use `translit-ed` via command line with `npx`:
```bash
npx translit-ed -unicode-cyr2lat "Текст на български"
# `Tekst na b"lgarski`
npx translit-ed -ru-cyr2lat "Текст на русском"
# `Tekst na russkom`
npx translit-ed -ua-gajica-cyr2lat "Текст Українською Гаєвиця"
# `Tekst Ukrajinsjkoju Hajevycja`
```
Run `npx translit-ed` without arguments to see all available flags.
## 📄 License
[MIT](https://choosealicense.com/licenses/mit/)
[//]: # (---)
[//]: # ()
[//]: # (## 🗺️ See also)
[//]: # ()
[//]: # ([My other projects](https://r37r0m0d3l.icu/open_source_map))
[//]: # ()
[//]: # (
)
[npm-downloads-img]: https://badgen.net/npm/dt/translit%2Ded?&icon=terminal&label=downloads&color=009688
[npm-downloads-url]: https://npmjs.com/package/translit-ed
[npm-version-img]: https://badgen.net/npm/v/translit-ed?&icon=npm&label=npm&color=DD3636
[npm-version-url]: https://npmjs.com/package/translit-ed
[ts-img]: https://badgen.net/npm/types/translit-ed?&icon=typescript&label=types&color=1E90FF
[ts-url]: https://github.com/r37r0m0d3l/translit-ed/blob/master/dist/translit-ed.d.ts