class Recipes::Style

Public Instance Methods

create() click to toggle source
# File lib/potassium/recipes/style.rb, line 2
def create
  add_linters
  add_config_files
  add_readme_header :style_guide
end
install() click to toggle source
# File lib/potassium/recipes/style.rb, line 8
def install
  create
end

Private Instance Methods

add_config_files() click to toggle source
# File lib/potassium/recipes/style.rb, line 31
def add_config_files
  copy_file '../assets/.rubocop.yml', '.rubocop.yml'
  copy_file '../assets/.eslintrc.json', '.eslintrc.json'
  copy_file '../assets/.stylelintrc.json', '.stylelintrc.json'
end
add_linters() click to toggle source
# File lib/potassium/recipes/style.rb, line 14
def add_linters
  gather_gems(:development, :test) do
    gather_gem 'rubocop', Potassium::RUBOCOP_VERSION
    gather_gem 'rubocop-performance'
    gather_gem 'rubocop-rails'
    gather_gem 'rubocop-rspec', Potassium::RUBOCOP_RSPEC_VERSION
    gather_gem 'rubocop-platanus'
  end

  after(:vite_install) do
    run "yarn add --dev stylelint eslint eslint-plugin-import "\
      "@typescript-eslint/eslint-plugin @typescript-eslint/parser "\
      "eslint-plugin-platanus eslint-plugin-vue @vue/eslint-config-typescript "\
      "eslint-plugin-tailwindcss"
  end
end