Flutterando Analysis
This package provides lint rules for Dart and Flutter which are used in
Flutterando's packages and projects. For more information, see the complete list of options.
Report Bug
ยท
Request Feature
Table of Contents
About The Project
Flutterando Analysis are a set of Flutter and Dart Lint rules that are the basis of our projects here at the community. They were inspired and selected from our work experience with other companies, and are backed up by several senior Flutter developers that can guarantee it's usefullness.
This project is distributed under the MIT License. See LICENSE.txt
for more information.
Sponsors
How To Use
To use our linter rules import it to your project like this:
a) Adding the package as a dependency in your Pubspec.yaml:
# Add it as a dev dependency
dev_dependencies:
flutterando_analysis: ^0.0.1
# Or as a normal dependency if you need to
dependencies:
flutterando_analysis: ^0.0.1
b) Alternatively, use Dart Pub. You can take out the tag --dev
if you want to install as a normal dependency:
dart pub add --dev flutterando_analysis
After importing it, add an include in your project's analysis_options.yaml
:
include: package:flutterando_analysis/flutter.yaml
or, for Dart:
include: package:flutterando_analysis/dart.yaml
There are 4 sets of linter rules that you can choose from:
-
dart.yaml
-
flutter.yaml
-
dart_package.yaml
-
flutter_package.yaml (this second set has the rule "public_member_api_docs" set to True)
See also the analysis_options.0.0.1.yaml to know which rules we are using.
How To Suppress Lints
There may be cases where specific lint rules are undesirable. Lint rules can be suppressed at the line, file, or project level.
An example use case for suppressing lint rules at the file level is suppressing the prefer_const_constructors
in order to achieve 100% code coverage. This is due to the fact that const constructors are executed before the tests are run, resulting in no coverage collection.
Line Level
To suppress a specific lint rule for a specific line of code, use an ignore
comment directly above the line:
// ignore: public_member_api_docs
class A {}
File Level
To suppress a specific lint rule of a specific file, use an ignore_for_file
comment at the top of the file:
// ignore_for_file: public_member_api_docs
class A {}
class B {}
Project Level
To suppress a specific lint rule for an entire project, modify analysis_options.yaml
:
Example (change flutterando_analysis.yaml for the analysis file you are using, like in the Getting Started section above):
include: package:flutterando_analysis/flutterando_analysis.yaml
linter:
rules:
public_member_api_docs: false
Badge
To indicate that your project is using flutterando_analysis
you can use this badge:
Just copy and paste in your readme.md the code below:
[![style: Flutterando analysis](https://img.shields.io/badge/style-flutterando__analysis-blueviolet)](https://pub.dev/packages/flutterando_analysis)
Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better or questions, please open an issue here, with the appropriate tag. Don't forget to give the project a star! Thanks!
Remember to include a tag, and to follow Conventional Commits and Semantic Versioning when uploading your commit and/or creating the issue.
Contact
Flutterando Community
Acknowledgements
Thanks to the people who contributed to this project.
Disclaimer: this project's readme was based on very_good_analysis' readme.
Maintaned by
Built and maintained by Flutterando.
Libraries
- flutterando_analysis
- See analysis_options.0.0.1.yaml for the complete list of rules