Granite is an alternative Rails application architecture framework.
Add this line to your application's Gemfile:
gem 'granite'
And then execute:
$ bundle
Or install it yourself as:
$ gem install granite
Please see our official documentation or check the granite application example.
We use semantic versioning for our releases.
Bug reports and pull requests are welcome on GitHub at https://github.com/toptal/granite.
This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
To run specs you can run
bin/setup
docker-compose up
rspec
Add this to your Rubocop config file:
require:
- rubocop-granite
This will add config for Lint/UselessAccessModifier
to treat projector
as separate context. It is equivalent to:
Lint/UselessAccessModifier:
ContextCreatingMethods:
- projector
Granite is released under the MIT License.