tree: c083d278cf6583897e108ad64cb4784ca5cbf57b [path history] [tgz]
  1. lib/
  2. CHANGELOG.md
  3. LICENSE
  4. pubspec.yaml
  5. README.md
  6. run_tests.sh
packages/flutter_lints/README.md

pub package

This package contains a recommended set of lints for Flutter apps, packages, and plugins to encourage good coding practices.

Lints are surfaced by the dart analyzer, which statically checks dart code. Dart-enabled IDEs typically present the issues identified by the analyzer in their UI. Alternatively, the analyzer can be invoked manually by running flutter analyze.

This package is built on top of Dart's recommended.yaml set of lints from package:lints.

Usage

Flutter apps, packages, and plugins created with flutter create starting with Flutter version 2.xx are already set up to use the lints defined in this package. Entities created before that version can use these lints by following these instructions:

  1. Depend on this package as a dev_dependency by running flutter pub add --dev flutter_lints.
  2. Create an analyzer_options.yaml file at the root of the package (alongside the pubspec.yaml file) and include: package:flutter_lints/flutter.yaml from it.

Example analyzer_options.yaml file:

# This file configures the analyzer, which statically analyzes Dart code to
# check for errors, warnings, and lints.
#
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be
# invoked from the command line by running `flutter analyze`.

# The following line activates a set of recommended lints for Flutter apps,
# packages, and plugins designed to encourage good coding practices.
include: package:flutter_lints/flutter.yaml

linter:
  # The lint rules applied to this project can be customized in the
  # section below to disable rules from the `package:flutter_lints/flutter.yaml`
  # included above or to enable additional rules. A list of all available lints
  # and their documentation is published at
  # https://dart-lang.github.io/linter/lints/index.html.
  #
  # Instead of disabling a lint rule for the entire project in the
  # section below, it can also be suppressed for a single line of code
  # or a specific dart file by using the `// ignore: name_of_lint` and
  # `// ignore_for_file: name_of_lint` syntax on the line or in the file
  # producing the lint.
  rules:
    # avoid_print: false  # Uncomment to disable the `avoid_print` rule
    # prefer_single_quotes: true  # Uncomment to enable the `prefer_single_quotes` rule

# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options