Mother Tongues Dictionaries — More Information

Access

  1. Access & Compatibility
  2. Cost
  3. Internet
  4. Skills Required

Flexibility

  1. Script Support
  2. Language Support
  3. Customizability
  4. Multi-User Support

Data & Compatibility

  1. Software Compatibility
  2. Import
  3. Export

Access

1. Access & Compatibility


Mother Tongues is compatible with Windows, macOS, and Linux operating systems.

To use Mother Tongues, users must have Python installed. It is recommended that users have a GitHub account and are comfortable with the Command Line and Git. The package installer pip is recommended to install Mother Tongues. NPM is required to build the Mother Tongues user interface.

The Mother Tongues Guides detail where and when Python, NPM, GitHub, the Command Line, Git, and pip are required for building a Mother Tongues dictionary.

2. Cost


Mother Tongues is completely free and open source. All of the additional software required to run Mother Tongues is also free.

Dictionaries made with Mother Tongues can be hosted for free on GitHub pages. Hosting a dictionary built using Mother Tongues on a stand-alone website or publishing the dictionary to an App store will likely incur a cost for the domain name, web hosting, or when registering as an app developer.

Users who wish to publish an app on an app store will need to enrol in the Apple Developer Program or register for a Google Play Developer account.

3. Internet


Internet access is required to install Mother Tongues, build a dictionary using GitHub, and to publish a Mother Tongues dictionary.

It is possible to a prepare a Mother Tongues dictionary by adding data on a local machine (with the files saved only to a computer, rather than building through GitHub). Internet access is still required to publish the dictionary.

After a Mother Tongues dictionary has been created and published, it is designed to be usable offline. Downloaded Mother Tongues apps will not need internet to run. Online Mother Tongues dictionaries can be accessed offline if the page was previously loaded when connected to internet.

4. Skills Required


Building a dictionary using Mother Tongues requires users to either have familiarity with Python, NPM, GitHub, and the Command Line, or the desire and willingness to learn to use these tools.

It is fairly easy to learn the skills required to use Mother Tongues through video tutorials, guides, and forum posts for users who are comfortable with and looking to learn new skills online.

The Mother Tongues guides take users through each step of publishing dictionary data using Mother Tongues, and makes using Mother Tongues more approachable. Users without prior experience with Python, NPM, GitHub, and the Command Line should be prepared to troubleshoot and learn new skills for each step.


Flexibility

5. Script Support


Mother Tongues supports all Unicode scripts.

6. Language Support


Mother Tongues is designed to be language neutral, and to support any language. The features of Mother Tongues have been designed to support endangered language communities and their specific language needs.

Mother Tongues was created with approximate-search at its core. Users of dictionaries may mistype words in the target language when searching, either due to unfamiliarity with the language, mishearing the word, comfort with different orthographic systems, an inability to type the language on their keyboard, or simply through a typing error. Mother Tongues is designed to generate approximate search results to help reduce such barriers. The search function works for both the entry language (typically an endangered language) and the translation language (typically English or another majority language).

Mother Tongues is designed to support bilingual dictionaries, but can be adapted to support dictionaries with multiple languages or dialects.

The characters included in the alphabet and the order of the alphabet are fully customizable.

7. Customizability


Mother Tongues is open source, which means that users with programming skills can build upon and alter it in any way that they may need.

For users who do not wish to re-write any code, some aspects of Mother Tongues are easy to customize.

The alphabetical order of entries in the dictionary will match the alphabet of the language as added to Mother Tongues. The themes and topics (which includes sub-themes) into which words are sorted are fully customizable. Information added to entries—such as example sentences, audio files, images, and so on—can be customized. Dictionaries can be published with or without multimedia features.

After data for a Mother Tongues dictionary has been prepared and a user is working to publish their dictionary, the colours, background image, and text on the website are all customizable. The interface language can also be customized.

8. Multi-User Support


Mother Tongues can be used to support dictionary projects with multiple users if the dictionary team uses GitHub to prepare their dictionary. Git (which GitHub uses) is a version control system that tracks changes and supports collaborative programming.

In many cases, a dictionary project team can collaboratively compile the language data for the dictionary, have one or two people build and publish the dictionary using Mother Tongues, and have any number of people on the dictionary team update and maintain the online dictionary or app.


Data & Compatibility

9. Software Compatibility


Mother Tongues is compatible with Windows, macOS, and Linux operating systems.

10. Import


Data can be typed directly into the data file in the mtd-starter (the GitHub repository designed to be used along with the Mother Tongues guides) or can be added in a CSV file, compiled as a spreadsheet, or using text editor software.

Data imported into Mother Tongues must be structured and organized (i.e,. a spreadsheet with columns where each column corresponds to the same type of data.)

11. Export


The export or final product of Mother Tongues is an app or webpage. Mother Tongues is not designed for compiling dictionaries for print or downloadable dictionaries.