[{"data":1,"prerenderedAt":1434},["ShallowReactive",2],{"navigation_docs_en":3,"-en-getting-started-installation":173,"-en-getting-started-installation-surround":1429},[4,30,109,153],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","\u002Fen\u002Fgetting-started","en\u002F01.getting-started",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","\u002Fen\u002Fgetting-started\u002Fintroduction","en\u002F01.getting-started\u002F1.introduction","i-ph-rocket",{"title":15,"path":16,"stem":17,"icon":18},"Installation","\u002Fen\u002Fgetting-started\u002Finstallation","en\u002F01.getting-started\u002F2.installation","i-ph-download",{"title":20,"path":21,"stem":22,"icon":23},"Quick Start","\u002Fen\u002Fgetting-started\u002Fquick-start","en\u002F01.getting-started\u002F3.quick-start","i-ph-play",{"title":25,"path":26,"stem":27,"icon":28},"Live Demo","\u002Fen\u002Fgetting-started\u002Flive-demo","en\u002F01.getting-started\u002F4.live-demo","i-ph-sparkle",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"How To","\u002Fen\u002Fhow-to","en\u002F02.how-to",[35,40,45,50,55,60,65,70,75,79,84,89,94,99,104],{"title":36,"path":37,"stem":38,"icon":39},"Use Rust","\u002Fen\u002Fhow-to\u002Fuse-rust","en\u002F02.how-to\u002F00.use-rust","simple-icons-rust",{"title":41,"path":42,"stem":43,"icon":44},"Use .NET \u002F C#","\u002Fen\u002Fhow-to\u002Fuse-csharp","en\u002F02.how-to\u002F01.use-csharp","simple-icons-dotnet",{"title":46,"path":47,"stem":48,"icon":49},"Use React Native","\u002Fen\u002Fhow-to\u002Fuse-react-native","en\u002F02.how-to\u002F02.use-react-native","simple-icons-react",{"title":51,"path":52,"stem":53,"icon":54},"Use iOS (Swift)","\u002Fen\u002Fhow-to\u002Fuse-ios-swift","en\u002F02.how-to\u002F03.use-ios-swift","simple-icons-apple",{"title":56,"path":57,"stem":58,"icon":59},"Use Android (Kotlin)","\u002Fen\u002Fhow-to\u002Fuse-android-kotlin","en\u002F02.how-to\u002F04.use-android-kotlin","simple-icons-android",{"title":61,"path":62,"stem":63,"icon":64},"Use C FFI","\u002Fen\u002Fhow-to\u002Fuse-c-ffi","en\u002F02.how-to\u002F05.use-c-ffi","simple-icons-c",{"title":66,"path":67,"stem":68,"icon":69},"Use CLI","\u002Fen\u002Fhow-to\u002Fuse-cli","en\u002F02.how-to\u002F06.use-cli","simple-icons-gnubash",{"title":71,"path":72,"stem":73,"icon":74},"Use Web","\u002Fen\u002Fhow-to\u002Fuse-web","en\u002F02.how-to\u002F07.use-web","simple-icons-javascript",{"title":76,"path":77,"stem":78,"icon":49},"Use React","\u002Fen\u002Fhow-to\u002Fuse-react","en\u002F02.how-to\u002F08.use-react",{"title":80,"path":81,"stem":82,"icon":83},"Use Node.js","\u002Fen\u002Fhow-to\u002Fuse-node","en\u002F02.how-to\u002F09.use-node","simple-icons-nodedotjs",{"title":85,"path":86,"stem":87,"icon":88},"Use Python","\u002Fen\u002Fhow-to\u002Fuse-python","en\u002F02.how-to\u002F10.use-python","simple-icons-python",{"title":90,"path":91,"stem":92,"icon":93},"Use Golang","\u002Fen\u002Fhow-to\u002Fuse-golang","en\u002F02.how-to\u002F11.use-golang","simple-icons-go",{"title":95,"path":96,"stem":97,"icon":98},"Use Java & JVM","\u002Fen\u002Fhow-to\u002Fuse-java","en\u002F02.how-to\u002F12.use-java","simple-icons-openjdk",{"title":100,"path":101,"stem":102,"icon":103},"Use Flutter & Dart","\u002Fen\u002Fhow-to\u002Fuse-flutter","en\u002F02.how-to\u002F13.use-flutter","simple-icons-flutter",{"title":105,"path":106,"stem":107,"icon":108},"Use Decoded RGB Input","\u002Fen\u002Fhow-to\u002Fuse-decoded-rgb","en\u002F02.how-to\u002F14.use-decoded-rgb","lucide-image",{"title":110,"path":111,"stem":112,"children":113,"page":29},"Advance Guide","\u002Fen\u002Fadvance-guide","en\u002F03.advance-guide",[114,119,124,129,134,139,144,149],{"title":115,"path":116,"stem":117,"icon":118},"Models & Tiers","\u002Fen\u002Fadvance-guide\u002Fmodels-and-tiers","en\u002F03.advance-guide\u002F01.models-and-tiers","i-ph-cube",{"title":120,"path":121,"stem":122,"icon":123},"Multilingual OCR","\u002Fen\u002Fadvance-guide\u002Fmultilingual-ocr","en\u002F03.advance-guide\u002F02.multilingual-ocr","i-ph-translate",{"title":125,"path":126,"stem":127,"icon":128},"Spatial Layout Reconstruction","\u002Fen\u002Fadvance-guide\u002Fspatial-layout-reconstruction","en\u002F03.advance-guide\u002F03.spatial-layout-reconstruction","i-ph-layout",{"title":130,"path":131,"stem":132,"icon":133},"Image Preprocessing & Tuning","\u002Fen\u002Fadvance-guide\u002Fimage-preprocessing-and-tuning","en\u002F03.advance-guide\u002F04.image-preprocessing-and-tuning","i-ph-sliders",{"title":135,"path":136,"stem":137,"icon":138},"Classification & Orientation","\u002Fen\u002Fadvance-guide\u002Fclassification-and-orientation","en\u002F03.advance-guide\u002F05.classification-and-orientation","i-ph-arrows-clockwise",{"title":140,"path":141,"stem":142,"icon":143},"Performance & Benchmarks","\u002Fen\u002Fadvance-guide\u002Fperformance-and-benchmarks","en\u002F03.advance-guide\u002F06.performance-and-benchmarks","i-ph-chart-line-up",{"title":145,"path":146,"stem":147,"icon":148},"Troubleshooting","\u002Fen\u002Fadvance-guide\u002Ftroubleshooting","en\u002F03.advance-guide\u002F07.troubleshooting","i-ph-wrench",{"title":150,"path":151,"stem":152,"icon":138},"v0.2 to v0.3","\u002Fen\u002Fadvance-guide\u002Fmigration-guide","en\u002F03.advance-guide\u002F08.migration-guide",{"title":154,"path":155,"stem":156,"children":157,"page":29},"Api Reference","\u002Fen\u002Fapi-reference","en\u002F04.api-reference",[158,163,168],{"title":159,"path":160,"stem":161,"icon":162},"InitializeConfig","\u002Fen\u002Fapi-reference\u002Finitialize-config","en\u002F04.api-reference\u002F01.initialize-config","i-ph-code-block",{"title":164,"path":165,"stem":166,"icon":167},"OcrRunOptions","\u002Fen\u002Fapi-reference\u002Focr-run-options","en\u002F04.api-reference\u002F02.ocr-run-options","i-ph-faders",{"title":169,"path":170,"stem":171,"icon":172},"TextResult & Output Modes","\u002Fen\u002Fapi-reference\u002Ftext-result-and-output","en\u002F04.api-reference\u002F03.text-result-and-output","i-ph-textbox",{"id":174,"title":15,"body":175,"description":1421,"extension":1422,"links":1423,"meta":1424,"navigation":1425,"path":16,"seo":1426,"stem":17,"__hash__":1428},"docs_en\u002Fen\u002F01.getting-started\u002F2.installation.md",{"type":176,"value":177,"toc":1391},"minimark",[178,182,192,203,227,232,272,277,377,380,384,391,419,422,424,428,431,446,449,451,455,458,474,500,502,506,512,586,589,659,661,665,669,687,691,707,709,713,716,734,738,741,804,806,810,813,827,834,839,882,885,908,915,922,973,979,1003,1005,1009,1013,1020,1028,1034,1096,1100,1106,1157,1164,1166,1170,1175,1200,1206,1240,1242,1246,1283,1285,1289,1299,1356,1359,1381,1387],[179,180,181],"p",{},"RustO! is packaged modularly across multiple language package managers and registries. Choose your target environment below.",[183,184,186,187,191],"h2",{"id":185},"_1-rust-cargotoml","1. Rust (",[188,189,190],"code",{},"Cargo.toml",")",[179,193,194,195,198,199,202],{},"Add ",[188,196,197],{},"rusto-rs"," via ",[188,200,201],{},"cargo",":",[204,205,210],"pre",{"className":206,"code":207,"language":208,"meta":209,"style":209},"language-bash shiki shiki-themes material-theme-lighter github-light github-dark monokai","cargo add rusto-rs\n","bash","",[188,211,212],{"__ignoreMap":209},[213,214,217,220,224],"span",{"class":215,"line":216},"line",1,[213,218,201],{"class":219},"sR7ES",[213,221,223],{"class":222},"sLACW"," add",[213,225,226],{"class":222}," rusto-rs\n",[179,228,229,230,202],{},"Or add it directly to your ",[188,231,190],{},[204,233,237],{"className":234,"code":235,"language":236,"meta":209,"style":209},"language-toml shiki shiki-themes material-theme-lighter github-light github-dark monokai","[dependencies]\nrusto-rs = \"0.3.2\"\n","toml",[188,238,239,252],{"__ignoreMap":209},[213,240,241,245,249],{"class":215,"line":216},[213,242,244],{"class":243},"swvn1","[",[213,246,248],{"class":247},"sQqfL","dependencies",[213,250,251],{"class":243},"]\n",[213,253,255,259,262,266,269],{"class":215,"line":254},2,[213,256,258],{"class":257},"ss--_","rusto-rs ",[213,260,261],{"class":243},"=",[213,263,265],{"class":264},"siCPE"," \"",[213,267,268],{"class":222},"0.3.2",[213,270,271],{"class":264},"\"\n",[273,274,276],"h3",{"id":275},"optional-cargo-features","Optional Cargo Features",[278,279,280,293],"table",{},[281,282,283],"thead",{},[284,285,286,290],"tr",{},[287,288,289],"th",{},"Feature",[287,291,292],{},"Description",[294,295,296,307,317,327,337,347,357,367],"tbody",{},[284,297,298,304],{},[299,300,301],"td",{},[188,302,303],{},"ffi",[299,305,306],{},"Enables C FFI and JNI bindings for embedding RustO! into foreign runtimes.",[284,308,309,314],{},[299,310,311],{},[188,312,313],{},"use-opencv",[299,315,316],{},"Enables optional OpenCV backend for comparison testing and visual parity validation.",[284,318,319,324],{},[299,320,321],{},[188,322,323],{},"metal",[299,325,326],{},"Enables Apple Metal GPU acceleration on macOS and iOS.",[284,328,329,334],{},[299,330,331],{},[188,332,333],{},"coreml",[299,335,336],{},"Enables Apple CoreML neural engine backend on Apple Silicon.",[284,338,339,344],{},[299,340,341],{},[188,342,343],{},"vulkan",[299,345,346],{},"Enables Vulkan compute shader acceleration for modern GPUs on Linux\u002FWindows\u002FAndroid.",[284,348,349,354],{},[299,350,351],{},[188,352,353],{},"opencl",[299,355,356],{},"Enables OpenCL acceleration on supported GPUs.",[284,358,359,364],{},[299,360,361],{},[188,362,363],{},"cuda",[299,365,366],{},"Enables NVIDIA CUDA acceleration on Linux\u002FWindows.",[284,368,369,374],{},[299,370,371],{},[188,372,373],{},"nnapi",[299,375,376],{},"Enables Android Neural Networks API acceleration on compatible mobile chipsets.",[378,379],"hr",{},[183,381,383],{"id":382},"_2-nodejs-npm-yarn-pnpm","2. Node.js (npm \u002F yarn \u002F pnpm)",[179,385,386,387,390],{},"Install ",[188,388,389],{},"@rustors\u002Fnode"," via your preferred package manager:",[204,392,394],{"className":206,"code":393,"language":208,"meta":209,"style":209},"npm install @rustors\u002Fnode\n# or yarn add @rustors\u002Fnode\n# or pnpm add @rustors\u002Fnode\n",[188,395,396,407,413],{"__ignoreMap":209},[213,397,398,401,404],{"class":215,"line":216},[213,399,400],{"class":219},"npm",[213,402,403],{"class":222}," install",[213,405,406],{"class":222}," @rustors\u002Fnode\n",[213,408,409],{"class":215,"line":254},[213,410,412],{"class":411},"ss7Ak","# or yarn add @rustors\u002Fnode\n",[213,414,416],{"class":215,"line":415},3,[213,417,418],{"class":411},"# or pnpm add @rustors\u002Fnode\n",[179,420,421],{},"Pre-built native N-API binaries are automatically resolved for Linux (x64\u002Farm64), macOS (Apple Silicon & Intel), and Windows (x64).",[378,423],{},[183,425,427],{"id":426},"_3-python-pip-pypi","3. Python (pip \u002F PyPI)",[179,429,430],{},"Install the pre-built wheel from PyPI:",[204,432,434],{"className":206,"code":433,"language":208,"meta":209,"style":209},"pip install rusto\n",[188,435,436],{"__ignoreMap":209},[213,437,438,441,443],{"class":215,"line":216},[213,439,440],{"class":219},"pip",[213,442,403],{"class":222},[213,444,445],{"class":222}," rusto\n",[179,447,448],{},"Supports Python 3.9+ across Linux, macOS, and Windows.",[378,450],{},[183,452,454],{"id":453},"_4-golang-cgo","4. Golang (Cgo)",[179,456,457],{},"Fetch the Go package:",[204,459,461],{"className":206,"code":460,"language":208,"meta":209,"style":209},"go get github.com\u002Fbyrizki\u002Frusto-rs\u002Fpackages\u002Fgo\n",[188,462,463],{"__ignoreMap":209},[213,464,465,468,471],{"class":215,"line":216},[213,466,467],{"class":219},"go",[213,469,470],{"class":222}," get",[213,472,473],{"class":222}," github.com\u002Fbyrizki\u002Frusto-rs\u002Fpackages\u002Fgo\n",[475,476,477],"blockquote",{},[179,478,479,483,484,487,488,491,492,495,496,499],{},[480,481,482],"strong",{},"Note",": Building requires ",[188,485,486],{},"librusto"," shared library. Set ",[188,489,490],{},"CGO_LDFLAGS=\"-L\u002Fpath\u002Fto\u002Flib -Wl,-rpath,\u002Fpath\u002Fto\u002Flib\""," or place ",[188,493,494],{},"librusto.so"," \u002F ",[188,497,498],{},"librusto.dylib"," in your system library path.",[378,501],{},[183,503,505],{"id":504},"_5-java-jvm-jitpack-gradle-maven","5. Java \u002F JVM (JitPack \u002F Gradle \u002F Maven)",[179,507,194,508,511],{},[188,509,510],{},"rusto-java"," from JitPack using Gradle:",[204,513,517],{"className":514,"code":515,"language":516,"meta":209,"style":209},"language-groovy shiki shiki-themes material-theme-lighter github-light github-dark monokai","repositories {\n    mavenCentral()\n    maven { url 'https:\u002F\u002Fjitpack.io' }\n}\n\ndependencies {\n    implementation 'com.github.byrizki.rusto-rs:rusto-java:0.3.2'\n}\n","groovy",[188,518,519,524,532,548,554,561,567,581],{"__ignoreMap":209},[213,520,521],{"class":215,"line":216},[213,522,523],{"class":257},"repositories {\n",[213,525,526,529],{"class":215,"line":254},[213,527,528],{"class":257},"    mavenCentral",[213,530,531],{"class":243},"()\n",[213,533,534,537,540,543,545],{"class":215,"line":415},[213,535,536],{"class":257},"    maven { url ",[213,538,539],{"class":264},"'",[213,541,542],{"class":222},"https:\u002F\u002Fjitpack.io",[213,544,539],{"class":264},[213,546,547],{"class":257}," }\n",[213,549,551],{"class":215,"line":550},4,[213,552,553],{"class":257},"}\n",[213,555,557],{"class":215,"line":556},5,[213,558,560],{"emptyLinePlaceholder":559},true,"\n",[213,562,564],{"class":215,"line":563},6,[213,565,566],{"class":257},"dependencies {\n",[213,568,570,573,575,578],{"class":215,"line":569},7,[213,571,572],{"class":257},"    implementation ",[213,574,539],{"class":264},[213,576,577],{"class":222},"com.github.byrizki.rusto-rs:rusto-java:0.3.2",[213,579,580],{"class":264},"'\n",[213,582,584],{"class":215,"line":583},8,[213,585,553],{"class":257},[179,587,588],{},"Or Maven:",[204,590,594],{"className":591,"code":592,"language":593,"meta":209,"style":209},"language-xml shiki shiki-themes material-theme-lighter github-light github-dark monokai","\u003Crepositories>\n    \u003Crepository>\n        \u003Cid>jitpack.io\u003C\u002Fid>\n        \u003Curl>https:\u002F\u002Fjitpack.io\u003C\u002Furl>\n    \u003C\u002Frepository>\n\u003C\u002Frepositories>\n\n\u003Cdependency>\n    \u003CgroupId>com.github.byrizki.rusto-rs\u003C\u002FgroupId>\n    \u003CartifactId>rusto-java\u003C\u002FartifactId>\n    \u003Cversion>0.3.2\u003C\u002Fversion>\n\u003C\u002Fdependency>\n","xml",[188,595,596,601,606,611,616,621,626,630,635,641,647,653],{"__ignoreMap":209},[213,597,598],{"class":215,"line":216},[213,599,600],{},"\u003Crepositories>\n",[213,602,603],{"class":215,"line":254},[213,604,605],{},"    \u003Crepository>\n",[213,607,608],{"class":215,"line":415},[213,609,610],{},"        \u003Cid>jitpack.io\u003C\u002Fid>\n",[213,612,613],{"class":215,"line":550},[213,614,615],{},"        \u003Curl>https:\u002F\u002Fjitpack.io\u003C\u002Furl>\n",[213,617,618],{"class":215,"line":556},[213,619,620],{},"    \u003C\u002Frepository>\n",[213,622,623],{"class":215,"line":563},[213,624,625],{},"\u003C\u002Frepositories>\n",[213,627,628],{"class":215,"line":569},[213,629,560],{"emptyLinePlaceholder":559},[213,631,632],{"class":215,"line":583},[213,633,634],{},"\u003Cdependency>\n",[213,636,638],{"class":215,"line":637},9,[213,639,640],{},"    \u003CgroupId>com.github.byrizki.rusto-rs\u003C\u002FgroupId>\n",[213,642,644],{"class":215,"line":643},10,[213,645,646],{},"    \u003CartifactId>rusto-java\u003C\u002FartifactId>\n",[213,648,650],{"class":215,"line":649},11,[213,651,652],{},"    \u003Cversion>0.3.2\u003C\u002Fversion>\n",[213,654,656],{"class":215,"line":655},12,[213,657,658],{},"\u003C\u002Fdependency>\n",[378,660],{},[183,662,664],{"id":663},"_6-flutter-dart-pubdev","6. Flutter & Dart (pub.dev)",[273,666,668],{"id":667},"for-flutter-mobile-desktop-apps","For Flutter Mobile & Desktop Apps",[204,670,672],{"className":206,"code":671,"language":208,"meta":209,"style":209},"flutter pub add rusto_flutter\n",[188,673,674],{"__ignoreMap":209},[213,675,676,679,682,684],{"class":215,"line":216},[213,677,678],{"class":219},"flutter",[213,680,681],{"class":222}," pub",[213,683,223],{"class":222},[213,685,686],{"class":222}," rusto_flutter\n",[273,688,690],{"id":689},"for-pure-dart-server-cli","For Pure Dart \u002F Server CLI",[204,692,694],{"className":206,"code":693,"language":208,"meta":209,"style":209},"dart pub add rusto\n",[188,695,696],{"__ignoreMap":209},[213,697,698,701,703,705],{"class":215,"line":216},[213,699,700],{"class":219},"dart",[213,702,681],{"class":222},[213,704,223],{"class":222},[213,706,445],{"class":222},[378,708],{},[183,710,712],{"id":711},"_7-net-c-nuget","7. .NET \u002F C# (NuGet)",[179,714,715],{},"Install the core package from NuGet:",[204,717,719],{"className":206,"code":718,"language":208,"meta":209,"style":209},"dotnet add package RustODotnet\n",[188,720,721],{"__ignoreMap":209},[213,722,723,726,728,731],{"class":215,"line":216},[213,724,725],{"class":219},"dotnet",[213,727,223],{"class":222},[213,729,730],{"class":222}," package",[213,732,733],{"class":222}," RustODotnet\n",[273,735,737],{"id":736},"pre-packaged-model-bundles","Pre-Packaged Model Bundles",[179,739,740],{},"To include lightweight pre-packaged models without manually managing model assets on disk, add one of the official model packages:",[204,742,744],{"className":206,"code":743,"language":208,"meta":209,"style":209},"# Recommended default PP-OCRv6 Tiny models (~6 MB total)\ndotnet add package RustODotnet.Models.PPOCRv6.Tiny\n\n# Or specialized language\u002Ftier model packages:\ndotnet add package RustODotnet.Models.PPOCRv6.Small\ndotnet add package RustODotnet.Models.PPOCRv5.Latin\ndotnet add package RustODotnet.Models.PPOCRv4.Japanese\n",[188,745,746,751,762,766,771,782,793],{"__ignoreMap":209},[213,747,748],{"class":215,"line":216},[213,749,750],{"class":411},"# Recommended default PP-OCRv6 Tiny models (~6 MB total)\n",[213,752,753,755,757,759],{"class":215,"line":254},[213,754,725],{"class":219},[213,756,223],{"class":222},[213,758,730],{"class":222},[213,760,761],{"class":222}," RustODotnet.Models.PPOCRv6.Tiny\n",[213,763,764],{"class":215,"line":415},[213,765,560],{"emptyLinePlaceholder":559},[213,767,768],{"class":215,"line":550},[213,769,770],{"class":411},"# Or specialized language\u002Ftier model packages:\n",[213,772,773,775,777,779],{"class":215,"line":556},[213,774,725],{"class":219},[213,776,223],{"class":222},[213,778,730],{"class":222},[213,780,781],{"class":222}," RustODotnet.Models.PPOCRv6.Small\n",[213,783,784,786,788,790],{"class":215,"line":563},[213,785,725],{"class":219},[213,787,223],{"class":222},[213,789,730],{"class":222},[213,791,792],{"class":222}," RustODotnet.Models.PPOCRv5.Latin\n",[213,794,795,797,799,801],{"class":215,"line":569},[213,796,725],{"class":219},[213,798,223],{"class":222},[213,800,730],{"class":222},[213,802,803],{"class":222}," RustODotnet.Models.PPOCRv4.Japanese\n",[378,805],{},[183,807,809],{"id":808},"_8-react-native-npm-yarn-pnpm","8. React Native (npm \u002F yarn \u002F pnpm)",[179,811,812],{},"Install the React Native npm package:",[204,814,816],{"className":206,"code":815,"language":208,"meta":209,"style":209},"npm install @rustors\u002Freact-native\n",[188,817,818],{"__ignoreMap":209},[213,819,820,822,824],{"class":215,"line":216},[213,821,400],{"class":219},[213,823,403],{"class":222},[213,825,826],{"class":222}," @rustors\u002Freact-native\n",[273,828,830,831,191],{"id":829},"ios-setup-iospodfile","iOS Setup (",[188,832,833],{},"ios\u002FPodfile",[179,835,836,837,202],{},"Add your preferred OCR model pod inside your app target in ",[188,838,833],{},[204,840,844],{"className":841,"code":842,"language":843,"meta":209,"style":209},"language-ruby shiki shiki-themes material-theme-lighter github-light github-dark monokai","target 'YourApp' do\n  pod 'RustO-Models-PPOCRv6-Tiny' # ~6 MB (Recommended)\nend\n","ruby",[188,845,846,862,877],{"__ignoreMap":209},[213,847,848,851,853,856,858],{"class":215,"line":216},[213,849,850],{"class":257},"target ",[213,852,539],{"class":264},[213,854,855],{"class":222},"YourApp",[213,857,539],{"class":264},[213,859,861],{"class":860},"sRxSC"," do\n",[213,863,864,867,869,872,874],{"class":215,"line":254},[213,865,866],{"class":257},"  pod ",[213,868,539],{"class":264},[213,870,871],{"class":222},"RustO-Models-PPOCRv6-Tiny",[213,873,539],{"class":264},[213,875,876],{"class":411}," # ~6 MB (Recommended)\n",[213,878,879],{"class":215,"line":415},[213,880,881],{"class":860},"end\n",[179,883,884],{},"Then install the CocoaPods dependencies:",[204,886,888],{"className":206,"code":887,"language":208,"meta":209,"style":209},"cd ios && pod install\n",[188,889,890],{"__ignoreMap":209},[213,891,892,896,899,902,905],{"class":215,"line":216},[213,893,895],{"class":894},"sMLJd","cd",[213,897,898],{"class":222}," ios",[213,900,901],{"class":243}," &&",[213,903,904],{"class":219}," pod",[213,906,907],{"class":222}," install\n",[273,909,911,912,191],{"id":910},"android-setup-androidappbuildgradle","Android Setup (",[188,913,914],{},"android\u002Fapp\u002Fbuild.gradle",[179,916,917,918,921],{},"In your root ",[188,919,920],{},"settings.gradle",", verify that JitPack is included:",[204,923,925],{"className":514,"code":924,"language":516,"meta":209,"style":209},"dependencyResolutionManagement {\n    repositories {\n        google()\n        mavenCentral()\n        maven { url 'https:\u002F\u002Fjitpack.io' }\n    }\n}\n",[188,926,927,932,937,944,951,964,969],{"__ignoreMap":209},[213,928,929],{"class":215,"line":216},[213,930,931],{"class":257},"dependencyResolutionManagement {\n",[213,933,934],{"class":215,"line":254},[213,935,936],{"class":257},"    repositories {\n",[213,938,939,942],{"class":215,"line":415},[213,940,941],{"class":257},"        google",[213,943,531],{"class":243},[213,945,946,949],{"class":215,"line":550},[213,947,948],{"class":257},"        mavenCentral",[213,950,531],{"class":243},[213,952,953,956,958,960,962],{"class":215,"line":556},[213,954,955],{"class":257},"        maven { url ",[213,957,539],{"class":264},[213,959,542],{"class":222},[213,961,539],{"class":264},[213,963,547],{"class":257},[213,965,966],{"class":215,"line":563},[213,967,968],{"class":257},"    }\n",[213,970,971],{"class":215,"line":569},[213,972,553],{"class":257},[179,974,975,976,978],{},"In ",[188,977,914],{},", add the model bundle:",[204,980,982],{"className":514,"code":981,"language":516,"meta":209,"style":209},"dependencies {\n    implementation 'com.github.byrizki.rusto-rs:rusto-models-ppocrv6-tiny:0.3.2'\n}\n",[188,983,984,988,999],{"__ignoreMap":209},[213,985,986],{"class":215,"line":216},[213,987,566],{"class":257},[213,989,990,992,994,997],{"class":215,"line":254},[213,991,572],{"class":257},[213,993,539],{"class":264},[213,995,996],{"class":222},"com.github.byrizki.rusto-rs:rusto-models-ppocrv6-tiny:0.3.2",[213,998,580],{"class":264},[213,1000,1001],{"class":215,"line":415},[213,1002,553],{"class":257},[378,1004],{},[183,1006,1008],{"id":1007},"_9-ios-swift-cocoapods-spm","9. iOS (Swift \u002F CocoaPods & SPM)",[273,1010,1012],{"id":1011},"swift-package-manager-spm","Swift Package Manager (SPM)",[179,1014,1015,1016,1019],{},"In Xcode, select ",[480,1017,1018],{},"File > Add Package Dependencies..."," and enter:",[204,1021,1026],{"className":1022,"code":1024,"language":1025,"meta":209},[1023],"language-text","https:\u002F\u002Fgithub.com\u002Fbyrizki\u002Frusto-rs.git\n","text",[188,1027,1024],{"__ignoreMap":209},[179,1029,1030,1031,202],{},"Or in your ",[188,1032,1033],{},"Package.swift",[204,1035,1039],{"className":1036,"code":1037,"language":1038,"meta":209,"style":209},"language-swift shiki shiki-themes material-theme-lighter github-light github-dark monokai","dependencies: [\n    .package(url: \"https:\u002F\u002Fgithub.com\u002Fbyrizki\u002Frusto-rs.git\", from: \"0.3.2\")\n]\n","swift",[188,1040,1041,1051,1092],{"__ignoreMap":209},[213,1042,1043,1045,1048],{"class":215,"line":216},[213,1044,248],{"class":257},[213,1046,202],{"class":1047},"sGXK2",[213,1049,1050],{"class":257}," [\n",[213,1052,1053,1056,1059,1062,1065,1067,1069,1072,1075,1078,1081,1083,1085,1087,1089],{"class":215,"line":254},[213,1054,1055],{"class":257},"    .",[213,1057,1058],{"class":894},"package",[213,1060,1061],{"class":243},"(",[213,1063,1064],{"class":894},"url",[213,1066,202],{"class":243},[213,1068,265],{"class":264},[213,1070,1071],{"class":222},"https:\u002F\u002Fgithub.com\u002Fbyrizki\u002Frusto-rs.git",[213,1073,1074],{"class":264},"\"",[213,1076,1077],{"class":257},", ",[213,1079,1080],{"class":894},"from",[213,1082,202],{"class":243},[213,1084,265],{"class":264},[213,1086,268],{"class":222},[213,1088,1074],{"class":264},[213,1090,1091],{"class":243},")\n",[213,1093,1094],{"class":215,"line":415},[213,1095,251],{"class":257},[273,1097,1099],{"id":1098},"cocoapods","CocoaPods",[179,1101,1102,1103,202],{},"In your project's ",[188,1104,1105],{},"Podfile",[204,1107,1109],{"className":841,"code":1108,"language":843,"meta":209,"style":209},"target 'YourApp' do\n  use_frameworks!\n\n  pod 'RustO'\n  pod 'RustO-Models-PPOCRv6-Tiny'\nend\n",[188,1110,1111,1123,1128,1132,1143,1153],{"__ignoreMap":209},[213,1112,1113,1115,1117,1119,1121],{"class":215,"line":216},[213,1114,850],{"class":257},[213,1116,539],{"class":264},[213,1118,855],{"class":222},[213,1120,539],{"class":264},[213,1122,861],{"class":860},[213,1124,1125],{"class":215,"line":254},[213,1126,1127],{"class":257},"  use_frameworks!\n",[213,1129,1130],{"class":215,"line":415},[213,1131,560],{"emptyLinePlaceholder":559},[213,1133,1134,1136,1138,1141],{"class":215,"line":550},[213,1135,866],{"class":257},[213,1137,539],{"class":264},[213,1139,1140],{"class":222},"RustO",[213,1142,580],{"class":264},[213,1144,1145,1147,1149,1151],{"class":215,"line":556},[213,1146,866],{"class":257},[213,1148,539],{"class":264},[213,1150,871],{"class":222},[213,1152,580],{"class":264},[213,1154,1155],{"class":215,"line":563},[213,1156,881],{"class":860},[179,1158,1159,1160,1163],{},"Run ",[188,1161,1162],{},"pod install",".",[378,1165],{},[183,1167,1169],{"id":1168},"_10-android-kotlin-gradle","10. Android (Kotlin \u002F Gradle)",[179,1171,1172,1173,202],{},"Ensure JitPack repository is registered in your root ",[188,1174,920],{},[204,1176,1178],{"className":514,"code":1177,"language":516,"meta":209,"style":209},"repositories {\n    maven { url 'https:\u002F\u002Fjitpack.io' }\n}\n",[188,1179,1180,1184,1196],{"__ignoreMap":209},[213,1181,1182],{"class":215,"line":216},[213,1183,523],{"class":257},[213,1185,1186,1188,1190,1192,1194],{"class":215,"line":254},[213,1187,536],{"class":257},[213,1189,539],{"class":264},[213,1191,542],{"class":222},[213,1193,539],{"class":264},[213,1195,547],{"class":257},[213,1197,1198],{"class":215,"line":415},[213,1199,553],{"class":257},[179,1201,1202,1203,202],{},"Add the core library and model package in your app's ",[188,1204,1205],{},"build.gradle",[204,1207,1209],{"className":514,"code":1208,"language":516,"meta":209,"style":209},"dependencies {\n    implementation 'com.github.byrizki.rusto-rs:rusto-android:0.3.2'\n    implementation 'com.github.byrizki.rusto-rs:rusto-models-ppocrv6-tiny:0.3.2'\n}\n",[188,1210,1211,1215,1226,1236],{"__ignoreMap":209},[213,1212,1213],{"class":215,"line":216},[213,1214,566],{"class":257},[213,1216,1217,1219,1221,1224],{"class":215,"line":254},[213,1218,572],{"class":257},[213,1220,539],{"class":264},[213,1222,1223],{"class":222},"com.github.byrizki.rusto-rs:rusto-android:0.3.2",[213,1225,580],{"class":264},[213,1227,1228,1230,1232,1234],{"class":215,"line":415},[213,1229,572],{"class":257},[213,1231,539],{"class":264},[213,1233,996],{"class":222},[213,1235,580],{"class":264},[213,1237,1238],{"class":215,"line":550},[213,1239,553],{"class":257},[378,1241],{},[183,1243,1245],{"id":1244},"_11-web-react-wasm","11. Web & React (WASM)",[204,1247,1249],{"className":206,"code":1248,"language":208,"meta":209,"style":209},"# Core Web WASM library\nnpm install @rustors\u002Fweb\n\n# React Hooks & Components\nnpm install @rustors\u002Freact\n",[188,1250,1251,1256,1265,1269,1274],{"__ignoreMap":209},[213,1252,1253],{"class":215,"line":216},[213,1254,1255],{"class":411},"# Core Web WASM library\n",[213,1257,1258,1260,1262],{"class":215,"line":254},[213,1259,400],{"class":219},[213,1261,403],{"class":222},[213,1263,1264],{"class":222}," @rustors\u002Fweb\n",[213,1266,1267],{"class":215,"line":415},[213,1268,560],{"emptyLinePlaceholder":559},[213,1270,1271],{"class":215,"line":550},[213,1272,1273],{"class":411},"# React Hooks & Components\n",[213,1275,1276,1278,1280],{"class":215,"line":556},[213,1277,400],{"class":219},[213,1279,403],{"class":222},[213,1281,1282],{"class":222}," @rustors\u002Freact\n",[378,1284],{},[183,1286,1288],{"id":1287},"_12-c-native-shared-libraries-headers","12. C \u002F Native Shared Libraries & Headers",[179,1290,1291,1292,202],{},"Pre-compiled dynamic shared libraries and headers are published with every ",[1293,1294,1298],"a",{"href":1295,"rel":1296},"https:\u002F\u002Fgithub.com\u002Fbyrizki\u002Frusto-rs\u002Freleases",[1297],"nofollow","GitHub Release",[1300,1301,1302,1318,1332,1348],"ul",{},[1303,1304,1305,1308,1309,1311,1312,1077,1315,191],"li",{},[480,1306,1307],{},"Linux",": ",[188,1310,494],{}," (",[188,1313,1314],{},"x86_64",[188,1316,1317],{},"aarch64",[1303,1319,1320,1308,1323,1325,1326,1329,1330,191],{},[480,1321,1322],{},"macOS",[188,1324,498],{}," (Universal ",[188,1327,1328],{},"arm64"," + ",[188,1331,1314],{},[1303,1333,1334,1308,1337,1077,1340,1311,1343,1077,1346,191],{},[480,1335,1336],{},"Windows",[188,1338,1339],{},"rusto.dll",[188,1341,1342],{},"rusto.lib",[188,1344,1345],{},"x64",[188,1347,1328],{},[1303,1349,1350,1308,1353],{},[480,1351,1352],{},"C Header",[188,1354,1355],{},"rusto.h",[179,1357,1358],{},"To compile from source with FFI enabled:",[204,1360,1362],{"className":206,"code":1361,"language":208,"meta":209,"style":209},"cargo build --release --features ffi\n",[188,1363,1364],{"__ignoreMap":209},[213,1365,1366,1368,1371,1375,1378],{"class":215,"line":216},[213,1367,201],{"class":219},[213,1369,1370],{"class":222}," build",[213,1372,1374],{"class":1373},"sFhLe"," --release",[213,1376,1377],{"class":1373}," --features",[213,1379,1380],{"class":222}," ffi\n",[179,1382,1383,1384,1163],{},"The output dynamic and static libraries will be located in ",[188,1385,1386],{},"target\u002Frelease\u002F",[1388,1389,1390],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html.sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html pre.shiki code .sR7ES, html code.shiki .sR7ES{--shiki-light:#E2931D;--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#A6E22E}html pre.shiki code .sLACW, html code.shiki .sLACW{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#E6DB74}html pre.shiki code .swvn1, html code.shiki .swvn1{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html pre.shiki code .sQqfL, html code.shiki .sQqfL{--shiki-light:#E2931D;--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#F8F8F2}html pre.shiki code .ss--_, html code.shiki .ss--_{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html pre.shiki code .siCPE, html code.shiki .siCPE{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#E6DB74}html pre.shiki code .ss7Ak, html code.shiki .ss7Ak{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#6A737D;--shiki-dark-font-style:inherit;--shiki-sepia:#88846F;--shiki-sepia-font-style:inherit}html pre.shiki code .sRxSC, html code.shiki .sRxSC{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#D73A49;--shiki-default-font-style:inherit;--shiki-dark:#F97583;--shiki-dark-font-style:inherit;--shiki-sepia:#F92672;--shiki-sepia-font-style:inherit}html pre.shiki code .sMLJd, html code.shiki .sMLJd{--shiki-light:#6182B8;--shiki-default:#005CC5;--shiki-dark:#79B8FF;--shiki-sepia:#66D9EF}html pre.shiki code .sGXK2, html code.shiki .sGXK2{--shiki-light:#39ADB5;--shiki-default:#D73A49;--shiki-dark:#F97583;--shiki-sepia:#F92672}html pre.shiki code .sFhLe, html code.shiki .sFhLe{--shiki-light:#91B859;--shiki-default:#005CC5;--shiki-dark:#79B8FF;--shiki-sepia:#AE81FF}",{"title":209,"searchDepth":254,"depth":254,"links":1392},[1393,1397,1398,1399,1400,1401,1405,1408,1414,1418,1419,1420],{"id":185,"depth":254,"text":1394,"children":1395},"1. Rust (Cargo.toml)",[1396],{"id":275,"depth":415,"text":276},{"id":382,"depth":254,"text":383},{"id":426,"depth":254,"text":427},{"id":453,"depth":254,"text":454},{"id":504,"depth":254,"text":505},{"id":663,"depth":254,"text":664,"children":1402},[1403,1404],{"id":667,"depth":415,"text":668},{"id":689,"depth":415,"text":690},{"id":711,"depth":254,"text":712,"children":1406},[1407],{"id":736,"depth":415,"text":737},{"id":808,"depth":254,"text":809,"children":1409},[1410,1412],{"id":829,"depth":415,"text":1411},"iOS Setup (ios\u002FPodfile)",{"id":910,"depth":415,"text":1413},"Android Setup (android\u002Fapp\u002Fbuild.gradle)",{"id":1007,"depth":254,"text":1008,"children":1415},[1416,1417],{"id":1011,"depth":415,"text":1012},{"id":1098,"depth":415,"text":1099},{"id":1168,"depth":254,"text":1169},{"id":1244,"depth":254,"text":1245},{"id":1287,"depth":254,"text":1288},"How to install RustO! across Rust, Node.js, Python, Go, Java, Flutter, .NET, React Native, iOS, Android, and Native C FFI.","md",null,{},{"icon":18},{"title":1427,"description":1421},"Installation - RustO!","cTDGqJKGNI5MfmkTFcxx7LSu-VuIN7cEBTHtC87ts04",[1430,1432],{"title":10,"path":11,"stem":12,"description":1431,"icon":13,"children":-1},"High-Performance Pure Rust OCR Library & Multi-Platform Toolkit",{"title":20,"path":21,"stem":22,"description":1433,"icon":23,"children":-1},"Run your first OCR detection with RustO! across all supported platforms in under 5 minutes.",1792905888204]