Please consider this project abandoned. There are many roadblocks that prevent upgrading this to the latest Semantic-UI and now there's Fomantic-UI. https://github.com/Semantic-Org/Semantic-UI-Rails-LESS/issues/53. I suggest you look at bundling Fomantic-UI in with webpacker instead. It is possible though not completely straightforward. This project is starting to get security tickets around dependencies (that I won't fix), so user beware.
This is a gem for Rails with Semantic UI assets inside. It provides the ability to customize component themes and variables on the fly in your application.
Add this block to your application's Gemfile:
# Semantic UI assets
gem 'less-rails-semantic_ui'
gem 'autoprefixer-rails'
gem 'therubyracer'
Semantic UI is using autoprefixer (in our case autoprefixer-rails) to appending additional CSS vendor-prefixes for improve compatibility with different browsers. Without it some parts of Semantic UI (i.e. transitions or modal dialogs because they depends to transitions) won't works in some browsers. You can remove this gem if you don't use such functionality of Semantic UI.
P.S. I hope in the future this hack will be unnecessary.
And then execute:
$ bundle install
After that, install configuration files inside your application in the vendor/assets
directory with:
$ rails generate semantic_ui:install
Require semantic_ui/semantic_ui.js
in app/assets/application.js
:
...
//= require semantic_ui/semantic_ui
...
Require semantic_ui/semantic_ui.css
in app/assets/application.css
:
...
*= require semantic_ui/semantic_ui
...
Execute command below and merge your custom and new changes in config files:
$ rails generate semantic_ui:install
You can modify any Semantic UI configs and files placed to vendor/assets/javascripts/semantic_ui
and vendor/assets/stylesheets/semantic_ui
directories.
For example:
semantic_ui.js
and semantic_ui.css
files.theme.config
.config/{collections,elements, globals,modules,views}/*.{overrides,variables}
files.This gem will directly track the semantic versioning of the Semantic UI project. Major and minor versions will always match to theirs, though we may have tiny patch level releases specific to this gem.
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)