Pyramid Lint logo

Pub Version Build Status License

Custom lints, quick fixes, and assists for Dart and Flutter.

Pyramid Lint

Pyramid Lint extends the Dart analyzer with optional rules for general Dart code and Flutter widgets. Enable only the checks you want, apply quick fixes from your IDE, and run the same analysis from the command line with dart analyze or flutter analyze.

Built as an analyzer plugin on analysis_server_plugin.

Features

  • Lints — Opt-in rules for Dart and Flutter (see available lints).
  • Quick fixes — Automated corrections for many diagnostics in the IDE.
  • Assists — Refactorings such as wrap_with_stack and convert_to_for_in_iterable_indexed_loop.

Requirements

  • Dart 3.10+ or Flutter 3.38+

Installation

Analyzer plugins are configured in the root analysis_options.yaml of your package or workspace via the top-level plugins section (not the legacy analyzer.plugins list).

To add pyramid_lint to your project, add the following to your analysis_options.yaml file:

plugins:
  pyramid_lint: ^3.0.0 # replace with the latest version

Configuration

Enable lints

All Pyramid Lint rules are disabled by default. Turn them on under diagnostics:

plugins:
  pyramid_lint: ^3.0.0
    diagnostics:
      specific_lint_rule: true

Browse the full list in the documentation or copy the recommended preset.

Configure a lint

Some rules accept options under options:

plugins:
  pyramid_lint: ^3.0.0
    diagnostics:
      max_lines_for_file: true
    options:
      max_lines_for_file:
        max_lines: 300

Documentation

Full guides, rule reference, and assists: docs.page/charlescyt/pyramid_lint

Contributing

Contributions are welcome—issues, pull requests, and doc improvements.

See the contributing guide to get started.

License

MIT

Libraries

main
Custom lints, quick fixes, and assists for Dart and Flutter.