/kazan

:bomb: Kazan creates rails project and setups predefined gems and tools. Env settings, Spec tools, Database settings, development tools. Bonuses for production.

Primary LanguageRubyMIT LicenseMIT

Kazan Build Status Dependency Status Code Climate Gem Version

Kazan creates rails project and setups predefined gems and tools.

img

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.
  • 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.0.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.
  • 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.
  • 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

License

The gem is available as open source under the terms of the MIT License.