You write a package entirely in pure Dart. Plugins are also (special) Dart packages. They get published to Pub and you interact with them via their Dart interface. The main difference between the two is that with a pure Dart package you don’t need to write any native code and testing is a breeze .
Read moreHow do I use Flutter plugin?
How to write a Flutter plugin
Read moreHow do I use Flutter plugin locally?
For the full process:
Read more