Skip to content
This repository has been archived by the owner on Feb 23, 2024. It is now read-only.

Latest commit

 

History

History
112 lines (73 loc) · 4.97 KB

README.md

File metadata and controls

112 lines (73 loc) · 4.97 KB

Very Good Flutter Plugin

🚶‍♂️ Repository has moved

The Very Good Flutter Plugin template is now developed within the Very Good Templates repository, and can be found at very_good_templates/very_good_flutter_plugin.

Please file new issues on Very Good Templates.


Very Good Ventures Very Good Ventures

Developed with 💙 by Very Good Ventures 🦄

coverage style: very good analysis License: MIT

A Very Good Flutter Plugin created by the Very Good Ventures Team.


Getting Started 🚀

❗ In order to start using Very Good Flutter Plugin you must have the Flutter SDK installed on your machine.

Running the Example ⚙️

The src directory contains the main my_plugin package along with the platform interface and the platform-specific implementations.

You can run the example via:

cd src/my_plugin/example
flutter run

The plugin supports the following platforms:

  • ✅ Android
  • ✅ iOS
  • ✅ Linux
  • ✅ MacOS
  • ✅ Web
  • ✅ Windows

Generating a Custom Plugin 📦

The Very Good Flutter Plugin template is available through an independent mason brick or via the Very Good CLI.

If you have not previously installed Very Good CLI, you can install it via:

Very Good CLI usage

Very Good CLI usage docs are available here.

Using the brick directly

  1. Install mason

    dart pub global activate mason_cli

  2. Add the brick

    mason add -g very_good_flutter_plugin

  3. Make a new Very Good Flutter Plugin

    mason make very_good_flutter_plugin

Testing 🧪

Very Good Flutter Plugin ships with 100% code coverage. To learn more about why we believe 100% code coverage is important and other testing best practices read our guide to Flutter testing.

Running Tests 🧑‍🔬

Each platform implementation includes tests which can be run via:

flutter test

Continuous Integration 🤖

Very Good Flutter Plugin comes with a built-in GitHub Actions workflow but you can also add your preferred CI/CD solution.

Out of the box, on each pull request and push, the CI formats, lints, and tests the code using Very Good Workflows. This ensures the code remains consistent and behaves correctly as you add functionality or make changes. The project uses Very Good Analysis for a strict set of analysis options used by our team. Code coverage is enforced using the [Very Good Coverage GitHub Action][very_good_coverage_link].

In addition, there are E2E tests as part of the my_plugin workflow to ensure that the plugin correctly integrates with the host application on each platform.