Symphonia
simple core toolkit for my rails apps
Installation
add to your Gemfile: gem 'symphonia
, path: '$SYMPHONIA_PATH'
or
gem 'symphonia', git: '[email protected]:lukas/symphonia.git', branch: 'v2'
after bundle install
run post-installation: rails g symphonia:setup
Setup prepare
config/initializers/settings.rb
, createspec/spec_helper.rb
, add stylesheets and javascripts references and copy basic layout.
Configuration
Upgrade to v4.0
- update Gemfile:
ruby gem 'rails', '~> 6.1' gem 'symphonia', '~> 4.0' source "https://gems.luk4s.cz" do gem 'symphonia_spec', group: %i[development test] end
Andbundle update
- upgrade rails:
https://guides.rubyonrails.org/upgrading_ruby_on_rails.html
bash export THOR_MERGE=vimdiff rails app:update
## Upgrade to v5.0 Version 5 remove sprockets bootstrap, font-awesome and others CSS/JS things. It expect that assets will be managed by webpacker (or similar) FE technology.
Also remove Role
model and whole permissions custom logic. Its replace standardized CanCanCan gem (https://github.com/CanCanCommunity/cancancan/tree/develop/docs)
Sprockets fallback
For fallback add to Gemfile
gem "bootstrap", "~> 4.6"
gem "jquery-rails"
gem "jquery-ui-rails"
gem "listen"
gem "sass-rails"
gem "turbolinks"
gem 'font-awesome-sass', '~> 6.2.0'
in your "app/assets/stylessheets/general.scss" make sure symphonia is imported
@import 'symphonia/basic';
@import 'symphonia/layout';
AND you need add symphonia/application.css into precompile
Rails.application.config.assets.precompile << 'symphonia/application.css'
CanCanCan
For user there is Symphonia::UserAbility
which defined permissions for User model + for admin add basic CRUD operation for :all
.