Potnia is an open-source Python library designed to convert Romanized transliterations of ancient texts into Unicode representations of ther respective native scripts.
Currently, the scripts supported by Potnia are:
Linear A
Linear B
Hittite cuneiform
Arabic
Functionality for Luwian hieroglyphs, Sumero-Akkadian cuneiform, Lydian and Etruscan is in development.
Contributions are welcome! Please see the CONTRIBUTING.rst file for more information.
Installation
To install Potnia, run the following command:
pip install potnia
To install the latest version from the repository, you can use this command:
pip install git+https://github.com/AncientNLP/potnia.git
You can also install Potnia by cloning the repository and installing using poetry. This will install all the dependencies required for Potnia from the with the version numbers pinned in the poetry.lock file. Make sure that poetry is installed on your system. If not, see the instructions. Then follow these steps:
git clone https://github.com/AncientNLP/potnia.git
cd potnia
poetry install
You can test that Potnia is working by running pytest.
Usage
To convert transliterated Linear B to Linear B Unicode, use the following code:
>>> from potnia import linear_b
>>> linear_b("a-ri-to-jo")
'𐀀𐀪𐀵𐀍'
If you wish to regularize the text to remove additional annotations present in the LiBER and DĀMOS transliteration, use the following code:
>>> linear_b("e-ke-qe ]-o-na-to , ke-ke-me-na⌞ ⌟ko-to-na GRA qs ] vac.", regularize=True)
'𐀁𐀐𐀤 %𐀃𐀙𐀵 𐀐𐀐𐀕𐀙 𐀒𐀵𐀙 𐂎 %'
Note that uncertain/missing signs or sections of text are presently being replaced with a wildcard ‘%’ character.
To tokenize transliterated Linear B texts without converting it to Unicode, use the following code:
>>> linear_b.tokenize_transliteration("]wa VIR 1 MUL 2 'ko-wa 1' ko-wo 1")
[']', 'wa', ' ', 'VIR', ' ', '1', ' ', 'MUL', ' ', '2', ' ', "'", 'ko', 'wa', ' ', '1', "'", ' ', 'ko', 'wo', ' ', '1']
Command Line Interface (CLI)
Potnia also provides a command line interface (CLI).
To convert transliterated Linear B to Unicode, use the following command:
potnia linear-b "a-ri-to-jo"
To regularize the text, use the following command:
potnia linear-b "e-ke-qe ]-o-na-to , ke-ke-me-na⌞ ⌟ko-to-na GRA qs ] vac." --regularize
To see the full set of commands available in the CLI, use the following command:
potnia --help
Graphical User Interface (GUI)
Potnia also provides a graphical user interface (GUI). To start it, run:
potnia gui
This will show a link in the terminal that you can click on to open the GUI in your browser.
Credits
Potnia is developed by:
Emily Tour (University of Melbourne)
Kabir Manandhar Shrestha (Melbourne Data Analytics Platform, University of Melbourne)
Dr Robert Turnbull (Melbourne Data Analytics Platform, University of Melbourne)
To cite Potnia, use this reference:
Tour, Emily, Kabir Manandhar Shrestha, and Robert Turnbull. ‘Potnia: A Python Library for the Conversion of Transliterated Ancient Texts to Unicode.’ Journal of Open Source Software 10, no. 108 (2025): 7725. doi:10.21105/joss.07725
You can also use the following BibTeX entries:
@article{potnia,
author = {Emily Tour and Kabir Manandhar Shrestha and Robert Turnbull},
title = {{Potnia: A Python library for the conversion of transliterated ancient texts to Unicode}},
year = {2025},
journal = {Journal of Open Source Software},
publisher = {The Open Journal},
volume = {10},
number = {108},
pages = {7725},
doi = {10.21105/joss.07725},
url = {https://doi.org/10.21105/joss.07725}
}
@misc{potnia_release,
author = {Emily Tour and Kabir Manandhar Shrestha and Robert Turnbull},
title = {{Potnia: A Python library for the conversion of transliterated ancient texts to Unicode}},
year = {2025},
url = {https://doi.org/10.26188/28721354.v1},
note = {Version 0.4.0, Apache License 2.0},
doi = {10.26188/28721354.v1}
}
Metadata
Release files for potnia 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| potnia-0.4.1.tar.gz | 28.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| potnia-0.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.4 kB
Release files / potnia-0.4.1.tar.gz
| Download URL | potnia-0.4.1.tar.gz |
|---|---|
| Size | 28.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ce95d52aa3cdda8125b13d073f75709b9a8391b2b5c3684061d2083b8bb8d63
|
|
BLAKE2b-256 checksum How to use checksums |
11ecea42e8abdf2bce36126e3acc9370595059de2dfd8fcf97d1739501701f61
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.2 CPython/3.12.3 Linux/6.8.0-1021-azure
|
Release files / potnia-0.4.1-py3-none-any.whl
| Download URL | potnia-0.4.1-py3-none-any.whl |
|---|---|
| Size | 33.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4eb802e8ec28e7c2dbd3a756ac5d7baf0f2dc49b2203ae6f213226d0c7ca38f8
|
|
BLAKE2b-256 checksum How to use checksums |
4e6b6b11ec3c383014dae917bf6df95a23e11a2b5760933031df6cb1bbb58440
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.2 CPython/3.12.3 Linux/6.8.0-1021-azure
|