Releases: Desert-Ant-Labs/emo
Release list
Emo 0.10.2
Packages
- SwiftPM:
.package(url: "https://github.com/Desert-Ant-Labs/emo.git", from: "0.10.2") - Android:
ai.desertant:emo:0.10.2(Maven Central) - Android bundled model resources:
ai.desertant:emo-tflite-resources:0.10.2 - npm:
@desert-ant-labs/emo@0.10.2
What's Changed
Full Changelog: v0.10.1...v0.10.2
Emo 0.10.1
Packages
- SwiftPM:
.package(url: "https://github.com/Desert-Ant-Labs/emo.git", from: "0.10.1") - Android:
ai.desertant:emo:0.10.1(Maven Central) - Android bundled model resources:
ai.desertant:emo-tflite-resources:0.10.1 - npm:
@desert-ant-labs/emo@0.10.1
What's Changed
- Android: depend on ai.desertant:core instead of vendoring HostBridge.kt by @finnvoor in #6
- node: build on @desert-ant-labs/core instead of vendoring the JS runtime by @finnvoor in #7
- node: pass directory=null for the shared managed model cache by @finnvoor in #8
- mise: consume the shared model-SDK build catalog by @finnvoor in #9
- kotlin: use the ai.desertant.model-sdk Gradle convention plugin by @finnvoor in #10
- ci: tag-driven releases via the shared model-SDK workflow by @finnvoor in #11
- Bump desert-ant-core to 0.5.1 and release 0.10.1 by @finnvoor in #12
Full Changelog: v0.8.0...v0.10.1
Emo 0.8.0
Emo 0.8.0 release.
- SwiftPM: https://github.com/Desert-Ant-Labs/emo.git, from 0.8.0
- Android: ai.desertant:emo:0.8.0
- Android bundled model resources: ai.desertant:emo-tflite-resources:0.8.0
- npm: @desert-ant-labs/emo@0.7.0 (unchanged this release)
Highlights:
- Android minimum lowered from API 31 to API 24 (Android 7.0). NFKC normalization now runs through the host's java.text.Normalizer instead of the platform libicu, removing the API 31 floor. Validated on real hardware.
- On-device multilingual emoji suggestion with a small bundled model, consistent APIs across Swift, Kotlin, and JavaScript.
v0.7.0
Unified cross-platform Emo SDK: one Swift pipeline shipping to Apple (Core ML), Android (LiteRT), and JavaScript/Node (LiteRT.js in the browser, native Core ML/LiteRT in Node). Small model bundled by default on every platform; on-demand download from desert-ant-labs/emo@v0.7.0 available. Validated on macOS Core ML, Linux LiteRT, headless-Chromium, Node (linux-x64/arm64 + darwin-arm64), and Android on-device.
0.6.0
Emo 0.6.0 - transformer-pool model, ~800-emoji curated vocab.
- New architecture: a tiny 2-layer transformer encoder + attention pool over the semantic token sequence (order-aware; composes phrases/idioms instead of averaging).
- Curated ~800-emoji everyday vocab (foods, animals, objects, instruments, ...), near-duplicates merged.
- Independent held-out top-1 (judged by an independent model): ~75% (0.5.0) -> ~78%.
- On-device size ~5.0 MB (4-bit palettized).
0.3.0
0.2.0
What's new
Preferred emoji skin tone
Emo.suggestions(for:) now accepts an optional skinTone to request a preferred skin tone for skin-tone-capable emoji. The model predicts the default (yellow) presentation; this is applied as post-processing.
try await Emo.suggestions(for: "go for a run", limit: 1, skinTone: .medium) // 🏃🏽- New
EmojiSkinToneenum:.default, .light, .mediumLight, .medium, .mediumDark, .dark. - New
String.applyingSkinTone()helper, handling ZWJ sequences and existing modifiers/VS16. - Defaults to
.default(no modifier) — fully backwards compatible.