This repository is a very contrived package project, aiming to show how elm-review and the CLI are used in a project, and showcase the output by actually running them in your terminal.
Configuration lies in the review/ directory. There is an elm.json which lists the dependencies containing review rules we wish to use. It also contains a src/ReviewConfig.elm file, in which we explicitly choose the rules we want to enable.
The imported rules come from the review-unused, review-common, and review-debug packages in the Elm package registry.
There are two custom rules in this project:
NoDefiningColorsOutsideOfUiColor: This rule prevents defining colors (usingCss.hex) outside of theUi.Colormodule, which is the central location where we define colors in the application.NoUsingHtmlButton: This rule prevents users from usingHtml.buttonandHtml.Styled.button, because we already have a great module to create buttons with theUi.Button.
Both rules are found in the review/ directory. You can find their corresponding tests in review/tests/.
You can run the review by running npm run review, which will run elm-review. This means it will run elm-review on all the Elm files in the project.
You can also run the fix mode by running npm run review:fix, which will run in effect run elm-review --fix.
You can see what elm-review looks like when run in a CI like Travis here.