Langua is a suite of language tools that can be used for testing, experimentation, learning, analysis, or creation. There are several main tools: Gen, Morph, Deriv, Frequen, Tree, and Lex.
LanguaGen is a tool for automatically building a set of words based on arbitrary rules of phonotactics. This can be used to create a dummy vocabulary for linguistic experimentation, to generate words or names for a naming language in a work of fantasy or science fiction, or as the basis for building the vocabulary of a constructed language.
LanguaMorph is a tool for modeling historical sound change according to arbitrary rules of phonetic change.
LanguaDeriv is a tool for modeling word derivation based on a given list of lexemes and affixes.
LanguaFrequen is a tool for analyzing phoneme frequencies in a given text.
LanguaTree is a tool for drawing and labeling syntax trees.
LanguaLex is a tool for building a lexicon or dictionary for a language and exporting it to various formats.
Langua is a web-based tool built on JavaScript, and it does not use a database, so it can be installed almost anywhere without need for running a back-end server. You simply need to run the build command to build the files, then deploy to your site.
If you are installing Langua in the subfolder /langua (e.g. *.com/langua/
), all you need to do is build and deploy:
yarn
.yarn build
.If you are installing Langua in a subfolder (e.g. *.com/languages/
), you will need to change the basename for the router before you build the project:
yarn
.gatsby-config.js
and change pathPrefix: `/langua`,
to pathPrefix: `/yoursubfolder`,
.yarn build
.If you are installing Langua in a website's root (e.g. a URL that ends in .com
, .org
, or similar):
yarn
.gatsby-config.js
and change pathPrefix: `/langua`,
to pathPrefix: ``,
, then remove the --prefix-paths
option from the build
and serve
commands.yarn build
.Langua uses an unstable Master branch. The master branch is used for development, while stable versions are provided as releases. Version numbering is similar to Semantic Versioning; versions are listed as x.y.z., wherein z refers to bug fixes and very minor updates, y refers to minor additions and updates to functionality, and x refers to major updates or overhauls to the program that significantly impact workflow or the use of the program.
For a full list of all changes made in each version of Langua, see the Changelog.
Please review the contributing guidelines and code of conduct before contributing.
See also the list of people who have contributed to this project.
Langua was inspired by several existing tools, including:
Langua is licensed under the GNU Affero General Public License v3.0.