erblint-github
Template style checking for GitHub's Ruby projects
Setup
- Update your
Gemfileand runbundle install
gem "erb_lint", require: false
gem "erblint-github"
- Require the linters within the
.erb-lintersfolder. This could be done by adding a file.erb-linters/erblint-github.rbwith the following line.
require "erblint-github/linters"
- Update the
erb-lint.ymlto configure the rule.
.erb-lint.yml
---
linters:
GitHub::Accessibility::AvoidBothDisabledAndAriaDisabled:
enabled: true
GitHub::Accessibility::AvoidGenericLinkTextCounter:
enabled: true
GitHub::Accessibility::DisabledAttributeCounter:
enabled: true
GitHub::Accessibility::IframeHasTitle:
enabled: true
GitHub::Accessibility::ImageHasAlt:
enabled: true
GitHub::Accessibility::LinkHasHrefCounter:
enabled: true
GitHub::Accessibility::NoAriaLabelMisuseCounter:
enabled: true
GitHub::Accessibility::NoPositiveTabIndex:
enabled: true
GitHub::Accessibility::NoRedundantImageAlt:
enabled: true
GitHub::Accessibility::NoTitleAttributeCounter:
enabled: true
GitHub::Accessibility::SvgHasAccessibleTextCounter:
enabled: true
Rules
- GitHub::Accessibility::AvoidBothDisabledAndAriaDisabled
- GitHub::Accessibility::AvoidGenericLinkTextCounter
- GitHub::Accessibility::DisabledAttributeCounter
- GitHub::Accessibility::IframeHasTitle
- GitHub::Accessibility::ImageHasAlt
- GitHub::Accessibility::LinkHasHrefCounter
- GitHub::Accessibility::NoAriaLabelMisuseCounter
- GitHub::Accessibility::NoPositiveTabIndex
- GitHub::Accessibility::NoRedundantImageAlt
- GitHub::Accessibility::NoTitleAttributeCounter
- GitHub::Accessibility::SvgHasAccessibleTextCounter
Testing
bundle install
bundle exec rake
Recommended extension
If you use VS Code, we highly encourage ERB Linter extension to see immediate feedback in your editor.
Note
This repo contains several accessibility-related linting rules to help surface accessibility issues that would otherwise go undetected until a later stage. Please note that due to the limitations of static code analysis, these ERB accessibility checks are NOT enough for ensuring the accessibility of your app. This shouldn't be the only tool you use to catch accessibility issues and should be supplemented with other tools that can check the runtime browser DOM output, as well as processes like accessibility design reviews, manual audits, user testing, etc.