Skip to content

gabrypulzio/wise-stack

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

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

Wise -`ღ´- Stack

Wise-stack is an opinioned modular Rails 6.1+ application template focused on Ruby on Rails developing best practices. Wise-stack aims to provide a customizable stack of recipes to simplify the installation and configuration of the most useful tools for rails developing.

Every gem in the recipes will be installed with the latest version obtained from rubygems.org and described in Gemfile with the pessimistic version constraint operator, to avoid breaking changes in case of a bundle update.

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
  • Use pessimistic version constraint operator on Gemfile, to avoid breaking changes on code in case of gem updates (see: rubygems guides)
  • 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:
    • Use stylesheet_pack_tag for stylesheets.
    • wise-stack renames app/javascript to app/webpacker because it's possibile to handle stylesheets too with wepbacker. The structure is configured as below:
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/application.scss
  • Bootstrap:

    • Inject bootstrap helpers for flash messages in application.html.erb
  • Rails_overwrites:

    • Disable scaffold stylesheets, assets, helpers and json from scaffolding.
    • Remove application.css and install a blank application.scss in favor of scss syntax.
  • Rubocop:

    • Install a custom .rubocop.yml on the project root path.
    • A rubocop autocorrection will be executed at the end of the template process.

About

Modular Rails 6.1+ application template focused on Ruby on Rails developing best practices.

Resources

License

Stars

Watchers

Forks

Packages

No packages published