# liblouis 3.39.0 (WebAssembly build)

These files are **liblouis**, the open-source braille translator and
back-translator, compiled to WebAssembly. Braillito's English braille
translator (`/en/braille-translator/`) loads them to translate text to and from
Unified English Braille, Grade 1 and Grade 2.

- `liblouis.js`, `liblouis.wasm` — liblouis 3.39.0, unmodified, with these
  upstream tables embedded: `en-ueb-g1.ctb`, `en-ueb-g2.ctb`, `unicode.dis` and
  the files they include (`en-ueb-chardefs.uti`, `en-ueb-math.ctb`,
  `braille-patterns.cti`, `latinLetterDef6Dots.uti`, `latinUppercaseComp6.uti`,
  `spaces.uti`, `text_nabcc.dis`).
- `COPYING.LESSER` — the licence.

## Licence

liblouis is copyright © the liblouis contributors and is distributed under the
**GNU Lesser General Public License, version 2.1 or later**. The full text is
in `COPYING.LESSER`. The UEB tables carry their own copyright notices (ViewPlus
Technologies, JJB Software, American Printing House for the Blind, RNIB and
individual contributors), under the same licence.

This is a separate, replaceable library. Braillito's own code calls it through
its public functions (`lou_translateString`, `lou_backTranslateString`) and does
not modify it.

## Source

- Upstream: <https://github.com/liblouis/liblouis>
- Release tarball: <https://github.com/liblouis/liblouis/releases/download/v3.39.0/liblouis-3.39.0.tar.gz>
  (SHA-256 `629fa8cb0dfd9ad457c5bf47a42f0953b673e62c8ad6b1d03ddc4e2bd20008f1`)
- Build script: `scripts/build-liblouis-wasm.sh` in the Braillito web repository.
  It downloads that tarball, checks the hash and rebuilds these two files with
  Emscripten. You can use it to rebuild or replace the library.

## Verification

Before publishing, this exact build was run against liblouis's own UEB test
specifications (`tests/braille-specs/en-ueb*.yaml`): 215,960 checks, forward and
backward, all passing. 361 further cases are marked as known failures upstream
and 131 need emphasis or cursor input that the web translator does not use.
