Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Wise -`ღ´- Stack

Wise-stack is an opinioned modular Rails 5.2+ application template focused on Ruby developing best practices. It's compatible with rails 6.0+.

Wise-stack aims to provide a customizable stack of recipes for the template. It installs the latest gem version obtained from rubygems.org, so you don't have to bother to have the template up-to-date.

Some recipes are optionals. Wise-stack asks for installation, but you can configure default answers on default_answers.yml

Usage

git clone git@github.com:gabrypulzio/wise-stack.git /path/to/wise-stack
rails new [APPLICATION_NAME] -T -m /path/to/wise-stack/template.rb

Features

  • Modular recipes
  • Produces explicit gem version on Gemfile, to avoid breaking changes on code in case of gem updates (see: rubygems guides)
  • Automatically install latest versions of gems.
  • Updates automatically system gem tools (rubocop, html2slim).
  • Webpack compatible.
  • Uses Slim as template language.
  • Best practices tools:
  • Common developing tools:
  • security tools:
  • testing tools:
  • customizations:
    • Git gitignore that properly ignores security sensitive files.
    • Rails overwrites for a more clean and secure scaffolding.
    • Custom .rubocop.yml with a rails friendly configuration.

Special notes on recipes

  • Webpack:
    • wise-stack renames app/javascript to app/webpacker because it's possibile to put stylesheets too in this directory. The structure is configured like this:
app/webpacker/
├── packs
│   ├── application.js
│   └── stylesheets.scss
└── src
    ├── javascripts # optionals javascripts to be included in packs/application.js
    └── stylesheets # optionals stylesheets to be included in packs/stylesheets.scss
  • Bootstrap:

    • If used, stylesheets will be served through webpack, to simplify stylesheets management.
  • Rails_overwrites:

    • Disables scaffold stylesheets, assets, helpers and json from scaffolding.
    • Sets quiet assets.
    • Removes application.css and install a blank application.scss in favor of scss syntax.
  • Rubocop:

    • Installs a custom .rubocop.yml on the project root path.
    • A rubocop autocorrection will be executed in the end of the template process.
  • Slim-rails

    • All views will be automatically converted to slim using html2slim in the end of the template process.

About

Modular rails 5.2+ application template, compatible with rails 6.0+.

Resources

License

Packages

No packages published
You can’t perform that action at this time.