Mojibake est une bibliothèque Unicode écrite en C11 et compatible C++17, distribuée sous licence MIT et fournie en deux fichiers amalgamés pour une intégration sans dépendances.
Elle implémente de manière conforme les algorithmes du standard, offrant la normalisation (NFC/NFD/NFKC/NFKD), les conversions de casse, le filtrage et des fonctions dédiées comme NFKC casefold et le quick-check.
La bibliothèque prend en charge l'analyse avancée du texte, y compris la base de données de caractères, la segmentation en graphemes/mots/phrases, l'algorithme bidirectionnel, la détection et l'analyse d'emoji, ainsi que le calcul de la largeur d'affichage.
Mojibake fournit aussi des fonctionnalités d'infrastructure telles que la conversion d'encodages UTF-8/UTF-16/UTF-32, la détection de confusables, la validation d'identifiants, des allocateurs personnalisés, un wrapper C++17, un outil CLI et une build WASM/TypeScript.
Le projet est largement testé (suites de conformité Unicode, plus de 1,5 million d'assertions, fuzzing, ASan/UBSan) et propose des options de compilation pour réduire la taille des tables selon les besoins.