Kazan
Kazan creates rails project and setups predefined gems and tools.
Installation
Install gem:
$ gem install kazan
Usage
By default this rails application generator uses PostgreSQL as db and RSpec as test framework. Also it installs and setups a lot usefull gems, and you don't need waste time then you stat new project.
Just run:
$ kazan projectname
This generator maps all flags to rails native generator, for example you can create api application:
$ kazan projectname --api
See all gems that will be installed to project in Gemfile for web application or for api Gemfile.api.
Gems
It includes applications gems:
-
Dotenv Shim to load environment variables from .env into ENV in development.
-
I18n is central point to collect locale data for use in Ruby on Rails.
-
MetaTags a gem to make your Rails application SEO-friendly. Gem is not generated if --api is selected.
-
PostgreSQL database with PG adapter is used by defaul.
-
Puma is a simple, fast, threaded, and highly concurrent HTTP 1.1 server for Ruby/Rack applications.
-
Rack Timeout aborts requests that are taking too long; an exception is raised.
- Rails 5.2.0
-
Rails Config helps you easily manage environment specific settings in an easy and usable manner.
-
Rollbar error monitoring fits right into your continuous delivery and deployment workflows to provide confidence in every code release.
-
Simple From [API EXCLUDED] aims to be as flexible as possible while helping you with powerful components to create your forms.
It includes assets gems [API EXCLUDED]:
-
Normalize Css makes browsers render all elements more consistently and in line with modern standards. It precisely targets only the styles that need normalizing.
-
Sass is the most mature, stable, and powerful professional grade CSS extension language in the world.
It includes development gems:
-
Annotate adds a comment summarizing the current schema.
-
Awesome Print prints pretty Ruby objects in full color exposing their internal structure with proper indentation.
-
Better Errors [API EXCLUDED] replaces the standard Rails error page with a much better and more useful error page.
-
Brakeman is an open source static analysis tool which checks Ruby on Rails applications for security vulnerabilities.
-
ByeBug is a simple to use, feature rich debugger for Ruby 2.
-
Bundler Audit is patch-level verification for bundler.
-
Bullet is designed to help you increase your application's performance by reducing the number of queries it makes.
-
Foreman procfile-based applications.
-
Letter Opener previews email in the default browser instead of sending it.
-
Listen listens to file modifications and notifies you about the changes.
-
Pry for interactively exploring objects.
-
Rack Mini Profiler [API EXCLUDED] displays speed badge for every html page.
-
Reek - code smell detector for Ruby.
-
RuboCop is a Ruby static code analyzer. Out of the box it will enforce many of the guidelines outlined in the community Ruby Style Guide.
-
scss-lint is a tool to help keep your SCSS files clean and readable by running it against a collection of configurable linter rules.
-
Spring speeds up development by keeping your application running in the background.
-
Web Console [API EXCLUDED] is a debugging tool for your Ruby on Rails applications.
It includes tests gems:
-
Capybara [API EXCLUDED] helps you test web applications by simulating how a real user would interact with your app.
-
Database Cleaner is a set of strategies for cleaning your database in Ruby.
-
Factory Bot is a fixtures replacement with a straightforward definition syntax.
-
Faker a port of Perl's Data::Faker library that generates fake data.
-
Formulaic [API EXCLUDED] the tedium of formulaic form filling with Capybara.
-
I18n-Tasks [API EXCLUDED] Gem that helps manage locales and test if are there problems.
-
I18n-Yaml-Sorter [API EXCLUDED] Sort all locales by keys.
-
Launchy [API EXCLUDED] helper class for launching cross-platform applications in a fire and forget manner.
-
Rspec is a testing framework for Rails.
-
Simplecov is a code coverage analysis tool for Ruby.
-
Shoulda Matchers provides RSpec- and Minitest-compatible one-liners that test common Rails functionality.
-
Timecop providing "time travel" and "time freezing" capabilities, making it dead simple to test time-dependent code.
-
Web Mock for stubbing and setting expectations on HTTP requests in Ruby.
Bonuses
- t() and l() in specs without prefixing with I18n.
- Low database connection pool limit.
- Rails' flashes set up and in application layout.
-
Rack::Deflater to compress responses with Gzip.
-
Safe binstubs.
- Ready Seo controller with methods for generating files - robots.txt,
sitemap.xml.
License
The gem is available as open source under the terms of the MIT License.