A configurable linting tool for analyzing Slim templates, integrating with RuboCop for static analysis.
Slim-Lint is a static analysis tool designed to keep Slim templates clean, readable, and consistent. It enforces style guidelines and identifies potential issues in Slim files, and integrates with RuboCop to extend Ruby static analysis capabilities to template code.
Ruby developers and teams using the Slim templating language who need to maintain code quality in their view templates, particularly those integrating with Ruby on Rails or other Ruby web frameworks.
Developers choose Slim-Lint for its seamless integration with RuboCop, bringing robust Ruby static analysis to templates, and its flexible, configurable rule system that supports inline disabling and multiple workflow integrations like Git hooks and CI/CD.
Configurable tool for analyzing Slim templates
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Seamlessly integrates RuboCop's static analysis cops directly into Slim templates, allowing inline disabling with comments like `- # rubocop:disable`, as shown in the README.
Offers a YAML-based config system for customizing linter behavior, includes/excludes, and rule severity, evidenced by the example `.slim-lint.yml` file with per-linter options.
Works with command line, Git hooks via Overcommit, CI/CD like GitHub Actions with a dedicated reporter, and editor plugins for Sublime Text, Emacs, Atom, and VS Code.
Allows disabling linters or RuboCop cops for specific code sections using template comments, such as `/ slim-lint:disable TagCase`, providing granular linting control.
Limited to Slim templates only, so it doesn't cover other templating languages or Ruby code, requiring additional tools like RuboCop for comprehensive linting.
Setting up the YAML configuration can be verbose and requires familiarity with both Slim syntax and RuboCop's cop system, adding to the learning curve.
Focuses on reporting issues without built-in auto-fix functionality, meaning developers must manually correct violations, unlike some modern linters.