Granite
Granite is an alternative Rails application architecture framework.
Installation
Add this line to your application's Gemfile:
gem 'granite'
And then execute:
$ bundle
Or install it yourself as:
$ gem install granite
Usage
Please see our official documentation or check the granite application example.
Versioning
We use semantic versioning for our releases.
Contributing
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.
Running specs
To run specs you can run
bin/setup
docker-compose up
rspec
Using Granite's Rubocop config
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
License
Granite is released under the MIT License.