Watch this video and create your First Flutter Plugins. 
In this course, you will learn all about How to create and release Flutter Plugin. and create a plugin from scratch
Without destroying any more time, let’s get started.
Flutter supports using shared packages contributed by other developers to the Flutter and Dart ecosystems. This allows for quickly building an app without having to develop everything from scratch.
What is the difference between a package and a plugin? A plugin is a type of package—the full designation is plugin package, which is generally shortened to a plugin.
At a minimum, a Dart package is a directory containing a pubspec file. Additionally, a package can contain dependencies (listed in the pubspec), Dart libraries, apps, resources, tests, images, and examples. The pub dev site lists many packages—developed by Google engineers and generous members of the Flutter and Dart community— that you can use in your app.
A plugin package is a special kind of package that makes platform functionality available to the app. Plugin packages can be written for Android (using Kotlin or Java), iOS (using Swift or Objective-C), web, macOS, Windows, Linux, or any combination thereof. For example, a plugin might provide Flutter apps with the ability to use a device’s camera.