Undercarriage
*Undercarriage is currently under development. It is not ready for production use.*
Undercarriage is a set of concerns to add to your application to trim some of the fat from controllers and models.
Requirements
- Ruby >= 3.3.0
- Rails >= 6.0
Installation
Add to your application's Gemfile
gem 'undercarriage', '~> 1.0'
Run the bundle command
$ bundle install
Usage
TODO
Testing
Run tests with one of the following
$ bundle exec rspec
$ bundle exec rspec spec
Appraisal
Undercarriage uses Appraisal2 (a maintained fork of Appraisal, still exposing the appraisal executable) to ensure various dependency versions work as expected
When dependencies change, run
$ bundle exec appraisal install
$ bundle exec appraisal generate-install
To run tests with Appraisal, run
$ bundle exec appraisal rspec
$ bundle exec appraisal rails-6-0 rspec spec
$ bundle exec appraisal rails-6-1 rspec spec
$ bundle exec appraisal rails-7-0 rspec spec
$ bundle exec appraisal rails-7-1 rspec spec
$ bundle exec appraisal rails-7-2 rspec spec
$ bundle exec appraisal rails-8-0 rspec spec
$ bundle exec appraisal rails-8-1 rspec spec
Code Analysis
Various tools are used to ensure code is linted and formatted correctly.
RuboCop
RuboCop is a Ruby static code analyzer.
$ rubocop
YARD-Lint
YARD-Lint is a linter for YARD documentation.
$ bundle exec yard-lint
Documentation
Yard is used to generate documentation. Online documentation is available
Build the documentation with one of the following
$ yard
$ yard doc
Build the documentation and list all undocumented objects
$ yard stats --list-undoc
License
The gem is available as open source under the terms of the MIT License.
Contributing
- Fork it (https://github.com/dfreerksen/undercarriage/fork)
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request