Native
Dart packages related to FFI and native assets bundling.
Install / Use
/learn @dart-lang/NativeREADME
Overview
This repository is home to Dart packages related to FFI and native assets building and bundling.
Documentation
See the doc directory for more documentation.
Packages
| Package | Description | Issues | Version |
| --- | --- | --- | --- |
| code_assets | This package contains the Dart API for code assets in hook/build.dart and hook/link.dart. | |
|
| data_assets | This package contains the Dart API for data assets in
hook/build.dart and hook/link.dart. | |
|
| ffi | Utilities for working with Foreign Function Interface (FFI) code. |
|
|
| ffigen | Generator for FFI bindings, using LibClang to parse C, Objective-C, and Swift files. |
|
|
| hooks | This package contains the API for
hook/build.dart and hook/link.dart. | |
|
| hooks_runner | This package is the backend that invokes
hook/build.dart and hook/link.dart from Dart and Flutter. | |
|
| jni | A library to access JNI from Dart and Flutter that acts as a support library for package:jnigen. |
|
|
| jni_flutter | A library to access Flutter Android specific APIs from Dart. |
|
|
| jnigen | A Dart bindings generator for Java and Kotlin that uses JNI under the hood to interop with Java virtual machine. |
|
|
| native_doc_dartifier | A library that converts code snippets from other languages into Dart. |
|
|
| native_toolchain_c | A library to invoke the native C compiler installed on the host machine. |
|
|
| objective_c | A library to access Objective C from Flutter that acts as a support library for package:ffigen. |
|
|
| swift2objc | A tool for generating bindings that allow interop between Dart and Swift code. |
|
|
| swiftgen | A tool for generating bindings that allow interop between Dart and Swift code. |
|
|
External packages
Packages not on this repo but also related to FFI and native assets. ❤️
| Package | Description | Version |
| --- | --- | --- |
| native_toolchain_cmake | A library to invoke CMake for Dart Native Assets. | |
| native_toolchain_go | A library to invoke the native Go compiler installed on the host machine. |
|
| native_toolchain_ninja | A library to invoke Ninja for Dart Native Assets. |
|
| native_toolchain_rust | A library to invoke the native Rust compiler installed on the host machine. |
|
| native_toolchain_rs | A library to build and bundle Rust code for Dart Native Assets. |
|
| native_toolchain_zig | A library to build and bundle Zig code for Dart Native Assets. |
|
Publishing automation
For information about our publishing automation and release process, see https://github.com/dart-lang/ecosystem/wiki/Publishing-automation.
For additional information about contributing, see our contributing page.
