Skip to content

Instantly share code, notes, and snippets.

@karimmtarek
Forked from hauleth/.rubocop.yml
Last active August 29, 2015 14:19
Show Gist options
  • Save karimmtarek/61351057e7acdb5cb1e7 to your computer and use it in GitHub Desktop.
Save karimmtarek/61351057e7acdb5cb1e7 to your computer and use it in GitHub Desktop.
# Hauleth's Rails app template
# Sass helpers and nicer views
gem 'autoprefixer-rails'
# Faster HTML escaping
gem 'escape_utils'
# Translations
gem 'r18n-rails'
# Inline email CSS
gem 'roadie', '~> 3.0.1'
gem 'roadie-rails'
# Better logging
gem 'lograge'
# Dokku/Heroku deployment
gem 'rails_12factor'
gem_group :development do
# Check for N+1 queries
gem 'bullet'
# Check popular vulnerabilities
gem 'brakeman', require: false
# Check Rails internals in Chrome
gem 'meta_request'
gem 'quiet_assets'
# Create model annotations
gem 'annotate', '~> 2.6.5'
# STFU
gem 'quiet_assets'
gem 'guard'
gem 'guard-minitest'
gem 'guard-brakeman'
end
gem_group :development, :test do
# Fabricate models instead of fixtures
gem 'fabrication'
gem 'ffaker'
if RUBY_VERSION =~ /^2\./
# Enable debugging in Ruby 2
gem 'byebug'
gem 'pry-byebug'
end
gem 'pry-rails'
end
gem_group :test do
# Use Double Ruby (RR) as mock mocking library
gem 'rr', require: true
# Use MiniTest::Spec instead of MiniTest::Unit
gem 'minitest-rails'
gem 'minitest-extra-matchers'
gem 'minitest-reporters'
# Generate coverage reports
gem 'simplecov', require: false
end
# Configure generators
application <<-CONF
config.generators do |g|
# Use Fabrication gem
g.test_framework :minitest_spec_rails, fixture_replacement: :fabrication
g.fixture_replacement :fabrication, dir: 'test/fabricators'
# Do not generate redundant
g.helper false
g.stylesheets false
g.javascripts false
end
CONF
if yes?('Would you like to add Devise?')
gem 'devise'
# Automatically add CanCanCan gem
gem 'cancancan'
# Generate Devise config
generate 'devise:install'
# and model
model_name = ask('What would you like the user model to be called? [user]')
model_name = 'user' if model_name.blank?
generate 'devise', model_name
generate 'cancan:ability'
end
run 'rm README.rdoc'
run 'touch README.md'
initializer 'escape_utils.rb', <<-DOC
begin
require 'escape_utils/html/rack' # to patch Rack::Utils
require 'escape_utils/html/erb' # to patch ERB::Util
require 'escape_utils/html/cgi' # to patch CGI
rescue LoadError
Rails.logger.info 'Escape_utils is not in the gemfile'
end
DOC
after_bundle do
# Initialize Git repository
git :init
git add: '.'
git commit: '-m "Initial commit"'
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment