# Maraiah

Public domain tools for editing data for the Marathon engine. The name "Maraiah"
is derived from the Japanese transliteration of "Mariah," and is pronounced
"mah-rye-uhh" (/mɑɹaɪʌ/ in IPA.) It has no special meaning.

## `maraiah`

The basis of this project is the Rust project `maraiah` which provides functions
and structures to build applications which work with Marathon's data. It is
subdivided into two libraries: `maraiah-durandal` and `maraiah-marathon`.
Ideally these would be separate libraries but Cargo is woefully unable to do so
for varying reasons. They will be treated as separate in this document.

## `maraiah-durandal`

The `durandal` library is a set of almost fully portable tools written in Rust,
including binary file reading, safe C-like `enum` reading, improved error
handling, FFI tools, fixed point numbers, and image and sound structures.

## `maraiah-marathon`

`marathon` is a library for working with various data formats, primarily
Marathon's. It also handles Macintosh PICT files, Portable PixMap, TARGA, RIFF
WAVE and other formats.

## `maraiah-leela`

`leela` is a CLI utility that essentially allows for a direct user interface to
the underlying Maraiah library.

## `maraiah-tycho`

`tycho` is a map editor written in C++ and Rust using Qt for GUI.
