flutter_kiwi_nlp 0.0.1
flutter_kiwi_nlp: ^0.0.1 copied to clipboard
Flutter plugin for Korean morphological analysis with Kiwi via native FFI and web WASM.
0.0.1 #
- Bootstrap a native-first Flutter FFI plugin structure for Kiwi.
- Replace template
sumAPI withKiwiAnalyzerAPIs (create,analyze,addUserWord,close). - Add match/build option constants and typed analysis result models.
- Add conditional Dart export so web builds fail gracefully with
KiwiException. - Introduce C wrapper API in
src/flutter_kiwi_ffi.hand dynamic Kiwi C API bridge insrc/flutter_kiwi_ffi.c. - Replace example app with a Kiwi GUI-style analyzer demo.
- Add platform prebuilt layout hooks for bundling Kiwi binaries (
android jniLibs,linux/prebuilt,windows/prebuilt,ios/macos Frameworks). - Add
tool/fetch_kiwi_release_assets.shto download official Kiwi release binaries/models into plugin paths. - Document Android release limitation (
libKiwiJava.soonly) for C API FFI usage. - Add
tool/build_android_libkiwi.shto build Androidlibkiwi.sofor selected ABIs using Android NDK. - Add web backend (
kiwi-nlpWASM) withmodelPathURL-based loading. - Add native
assetModelPathsupport: Kiwi model files can be bundled as Flutter assets and auto-extracted to temp storage for FFI initialization. - Add zero-argument initialization path discovery: native auto-detects default asset model locations.
- Add native default-model auto-download fallback (first run) with local cache, so integrations can call
KiwiAnalyzer.create()without app-side model asset setup. - Update web backend defaults to
kiwi-nlp@0.22.1. - Improve web zero-config model loading: first try known same-origin asset bases, then fallback to release archive download (direct URL + GitHub API metadata fallback).
- Bundle default Kiwi base model files in package assets (
assets/kiwi-models/cong/base) so no app-side asset declaration is required for default usage. - Expand web initialization error messages with per-attempt details (asset base and archive URL/API attempts).
- Switch web default model loading to URL-based
modelFiles(assets/packages/flutter_kiwi_nlp/...) to avoidrootBundle/AssetManifestruntime issues in DDC. - Add Android ABI filters (
arm64-v8a,x86_64) to avoid packaging unsupported 32-bit runtime combinations. - Make example error messages selectable (
SelectableText) and print all caught errors to logs viadebugPrint/debugPrintStack. - Add GitHub Actions desktop CI matrix at
.github/workflows/desktop-build.ymlto build example on Linux and Windows. - Add macOS auto-build flow via
tool/build_macos_kiwi_dylib.shandmacos/flutter_kiwi_nlp.podspecprepare_command, solibkiwi.dylibis generated during macOS pod install when missing. - Add Linux auto-build flow via
tool/build_linux_libkiwi.shandlinux/CMakeLists.txtcustom target, solibkiwi.sois generated during Linux build when missing. - Add Windows auto-build flow via
tool/build_windows_kiwi_dll.ps1andwindows/CMakeLists.txtcustom target, sokiwi.dllis generated during Windows build when missing.