langbeam 0.1.1

Rainbeam language file manager
Documentation
# Langbeam

Versioned l10n (localization) files.

## `LangFile`

Text is stored in a "LangFile". In a LangFile, you must define a `name`, `version`, and the `data` stored with in.

The `name` of a LangFile follow this format:

```
{reverse-domain-name-notation id}:{ISO 639 language code}-{ISO 3166-1 alpha-2 country code}
```

The `version` of a LangFile should follow semantic versioning.

An example LangFile may look similar to this:

```json
{
    "name": "net.rainbeam.langs:en-US",
    "version": "1.0.0",
    "data": {
        "example_label": "Example Label"
    }
}
```

The key of entries in `data` should always stay the same. Only the value of entries should be translated between language files.

## `langs` directory

All language files should be pulled from `{cwd}/langs`. The file name of files does not matter, as the library only cares about the `name` field of each of the files. No files that aren't JSON files are allowed in this directory.