Skip to content

nicolaslt/eslint-boyscout

Repository files navigation

Coverage Status CircleCI

Boyscout

Would you mind rewriting this with tool X instead of Y, we're gradually migrating to it

A pull request reviewer

I have 20min spare, wish I knew what I could improve

A developer

I wonder how we are doing with refactoring X

A team member

If any of those sound awfully familiar, you have come to the right place.

Boyscouts have a rule: "Leave the campground cleaner than you found it." and this tool helps you apply it to your codebase.

This is a combination of 2 concepts.

  1. An eslint plugin that lets you define your own rules without creating and publishign a plugin.
  2. A custom reporter that shows only the boyscout rules, aggregated by rules

Technically you can use it to track anything an AST tree visitor will allow you to, we use it to keep track of gradual refactoring, the type you only do when you happen to touch a file.

Installation

npm install --save-dev eslint-boyscout

Usage

  1. Make sure to follow the steps in the eslint plugin
  2. Refactoring errors/warning will now be delivered through your favourite IDE/CI eslint integration.

Reporter

boyscout report --rules-dir a/directory: shows the list of files you still need to refactor, grouped by rule

boyscout report --rules-dir a/directory --summary: to only show a count per rule.

Example summary output with a very simple rule:

A congratulations message will be displayed for rules that don't match any files. You can adjust the default message by providing other ones in your rules meta.docs.doneMessage property.

Summary reporter screenshot

About

An experimental tool to help cleaning your code as you go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published