Instalasi
RustO! dikemas secara modular di berbagai ekosistem manajer paket bahasa. Pilih target lingkungan pengembangan Anda di bawah ini.
1. Rust (Cargo.toml)
Tambahkan rusto-rs via cargo:
cargo add rusto-rs
Atau definisikan langsung pada file Cargo.toml:
[dependencies]
rusto-rs = "0.3.2"
Fitur Opsional Cargo
| Fitur | Deskripsi |
|---|---|
ffi | Mengaktifkan C FFI dan JNI bindings untuk mengintegrasikan RustO! ke runtime bahasa lain. |
use-opencv | Mengaktifkan backend OpenCV opsional untuk pengujian komparasi dan verifikasi paritas visual. |
metal | Mengaktifkan akselerasi Apple Metal GPU di macOS dan iOS. |
coreml | Mengaktifkan backend Apple CoreML neural engine di perangkat Apple Silicon. |
vulkan | Mengaktifkan akselerasi Vulkan compute shader untuk GPU modern di Linux/Windows/Android. |
opencl | Mengaktifkan akselerasi OpenCL pada GPU yang kompatibel. |
cuda | Mengaktifkan akselerasi NVIDIA CUDA di Linux/Windows. |
nnapi | Mengaktifkan akselerasi Android Neural Networks API pada chipset perangkat yang didukung. |
2. Node.js (npm / yarn / pnpm)
Pasang @rustors/node via manajer paket pilihan Anda:
npm install @rustors/node
# atau yarn add @rustors/node
# atau pnpm add @rustors/node
Biner native N-API yang telah dirakit secara otomatis terdeteksi untuk Linux (x64/arm64), macOS (Apple Silicon & Intel), dan Windows (x64).
3. Python (pip / PyPI)
Pasang wheel pra-rakit dari PyPI:
pip install rusto
Mendukung Python 3.9+ di seluruh lingkungan Linux, macOS, dan Windows.
4. Golang (Cgo)
Unduh paket Go:
go get github.com/byrizki/rusto-rs/packages/go
Catatan: Kompilasi membutuhkan library bersama
librusto. AturCGO_LDFLAGS="-L/path/to/lib -Wl,-rpath,/path/to/lib"atau tempatkanlibrusto.so/librusto.dylibke dalam path library sistem Anda.
5. Java / JVM (JitPack / Gradle / Maven)
Tambahkan rusto-java dari JitPack menggunakan Gradle:
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
dependencies {
implementation 'com.github.byrizki.rusto-rs:rusto-java:0.3.2'
}
Atau Maven:
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.byrizki.rusto-rs</groupId>
<artifactId>rusto-java</artifactId>
<version>0.3.2</version>
</dependency>
6. Flutter & Dart (pub.dev)
Untuk Aplikasi Mobile & Desktop Flutter
flutter pub add rusto_flutter
Untuk CLI Server / Dart Murni
dart pub add rusto
7. .NET / C# (NuGet)
Pasang paket inti dari NuGet:
dotnet add package RustODotnet
Paket Bundel Model
Untuk menyertakan model bawaan yang ringan tanpa perlu mengelola file aset model secara manual, pasang salah satu paket model resmi:
# Model default yang direkomendasikan: PP-OCRv6 Tiny (~6 MB total)
dotnet add package RustODotnet.Models.PPOCRv6.Tiny
# Atau paket model bahasa/tingkat khusus:
dotnet add package RustODotnet.Models.PPOCRv6.Small
dotnet add package RustODotnet.Models.PPOCRv5.Latin
dotnet add package RustODotnet.Models.PPOCRv4.Japanese
8. React Native (npm / yarn / pnpm)
Pasang paket React Native npm:
npm install @rustors/react-native
Konfigurasi iOS (ios/Podfile)
Tambahkan pod model OCR pilihan Anda di dalam target aplikasi pada ios/Podfile:
target 'YourApp' do
pod 'RustO-Models-PPOCRv6-Tiny' # ~6 MB (Direkomendasikan)
end
Kemudian jalankan instalasi CocoaPods:
cd ios && pod install
Konfigurasi Android (android/app/build.gradle)
Pada root settings.gradle, pastikan repositori JitPack sudah ditambahkan:
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Pada android/app/build.gradle, tambahkan dependensi paket model:
dependencies {
implementation 'com.github.byrizki.rusto-rs:rusto-models-ppocrv6-tiny:0.3.2'
}
9. iOS (Swift / CocoaPods & SPM)
Swift Package Manager (SPM)
Di Xcode, pilih File > Add Package Dependencies... dan masukkan:
https://github.com/byrizki/rusto-rs.git
Atau dalam file Package.swift:
dependencies: [
.package(url: "https://github.com/byrizki/rusto-rs.git", from: "0.3.2")
]
CocoaPods
Pada file Podfile proyek Anda:
target 'YourApp' do
use_frameworks!
pod 'RustO'
pod 'RustO-Models-PPOCRv6-Tiny'
end
Jalankan perintah pod install.
10. Android (Kotlin / Gradle)
Pastikan repositori JitPack terdaftar pada settings.gradle:
repositories {
maven { url 'https://jitpack.io' }
}
Tambahkan pustaka inti dan paket model pada build.gradle aplikasi Anda:
dependencies {
implementation 'com.github.byrizki.rusto-rs:rusto-android:0.3.2'
implementation 'com.github.byrizki.rusto-rs:rusto-models-ppocrv6-tiny:0.3.2'
}
11. Web & React (WASM)
# Library Web WASM Inti
npm install @rustors/web
# React Hooks & Komponen
npm install @rustors/react
12. C / Native Shared Libraries & Headers
Pustaka bersama dinamis pra-rakit dan file header C dirilis pada setiap GitHub Release:
- Linux:
librusto.so(x86_64,aarch64) - macOS:
librusto.dylib(Universalarm64+x86_64) - Windows:
rusto.dll,rusto.lib(x64,arm64) - Header C:
rusto.h
Untuk melakukan kompilasi dari kode sumber dengan fitur FFI aktif:
cargo build --release --features ffi
File pustaka dinamis dan statis hasil kompilasi akan berada di direktori target/release/.