Step 1: Create the package
Step 2: Implement the package

Step 2a: Define the package API (.dart)
Step 2b: Add Android platform code (.kt/.java)
Step 2c: Add iOS platform code (.swift/.h+.m)
Step 2d: Add Linux platform code (.h+.cc)
Step 2e: Add macOS platform code (.swift)
Step 2f: Add Windows platform code (.h+.cpp)
Step 2g: Connect the API and the platform code


Add support for platforms in an existing plugin project
Dart platform implementations

Dart-only platform implementations
Hybrid platform implementations


Testing your plugin

Developing FFI plugin packages

Step 1: Create the package
Step 2: Building and bundling native code
Step 3: Binding to native code
Step 4: Invoking native code

Adding documentation