A meticulously crafted Ruby gem to enhance the cleanliness and structure of your project's files. This tool ensures consistency and uniformity across various formats, including Ruby, ERB, YAML, Markdown, JSON, JS, CSS, SASS, LESS, and other formats supported by Prettier.
The cleaner recognizes and caters to various file formats:
File Type | File Extension | Processor |
---|---|---|
ERB | .html.erb , .html |
htmlbeautifier && erb-lint |
Ruby | .rb , .rake , Gemfile , Rakefile , .axlsx , .gemspec , .ru , .podspec , .jbuilder , .rabl , .thor , config.ru , Berksfile , Capfile , Guardfile , Podfile , Thorfile , Vagrantfile |
rubocop |
YAML | .yml (only files in locales folder) |
ImmosquareYaml |
JS | .js , .mjs |
eslint |
JSON | .json |
ImmosquareExtensions |
Markdown | .md , .md.erb |
ImmosquareCleaner |
Others | Any other format | prettier |
You can view the specific configurations for all supported linters in the linters folder of the repository.
Prerequisite: Please be sure to have bun installed. (This is necessary to launch eslint & prettier commands.)
Add the gem in your development group in the Gemfile:
group :development do
...
gem "immosquare-cleaner"
...
end
Tailor the behavior of the gem/module with the provided configuration options:
ImmosquareCleaner.config do |config|
config.rubocop_options = "--your-rubocop-options-here"
config.htmlbeautifier_options = "--your-htmlbeautifier-options-here"
config.erblint_options = "--your-erblint-options-here"
end
To clean a specific file:
ImmosquareCleaner.clean("path/to/your/file.rb")
To clean rails project files:
rake immosquare_cleaner:clean_app
Automate the cleaning process for all files upon saving in VS Code:
- Install the Run on Save extension from the VS Code marketplace.
- Add the following configuration to your
settings.json
in VS Code:
"emeraldwalk.runonsave": {
"commands": [
{
"match": ".*",
"cmd": "if bundle info immosquare-cleaner &>/dev/null; then bundle exec immosquare-cleaner '${file}'; else echo 'please install the gem immosquare-cleaner'; fi",
"runIn": "backend"
}
]
}
With the above, every time you save a file in VS Code, it will automatically be cleaned using immosquare-cleaner
.
Contributions are welcome! Please open an issue or submit a pull request on our GitHub repository.
This gem is available under the terms of the MIT License.