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 you use Flutter plugins?
Adding a package dependency to an app
Read moreHow do you make a plugin for Flutter?
Building a Custom Plugin Using Flutter
Read more