Archangel is currently under development. It is not ready for production use.
This project rocks and uses MIT-LICENSE.
- Ruby >= 2.2.3
- Rails >= 5.0
Deploy a sample application to play with.
Add to your application's Gemfile
gem "archangel", github: "archangel/archangel"
Run the bundle command
bundle install
Run the install generator
bundle exec rails g archangel:install
Run the install generator with seed data
bundle exec rails g archangel:install --seed
Seed data can be created separately by running rake db:seed
In your application, generate a theme named foobar
bundle exec rails g archangel:theme --theme-name=foobar
In your application, generate a theme named foo_bar
bundle exec rails g archangel:theme --theme-name="foo bar"
If you do not pass a theme-name flag, it will generate a new theme with the name "unknown theme"
Subsequent updates can be done by bumping the version in your Gemfile then adding the new migrations
bundle exec rake archangel:install:migrations
Run migrations
bundle exec rake db:migrate
First, generate a dummy application. You will be required to generate a dummy application before running tests.
bundle exec rake dummy_app
Run tests
bundle exec rake
or
bundle exec rake spec
or
bundle exec rspec spec
You can also enable fail fast in order to stop tests at the first failure
bundle exec rspec spec --fail-fast
Online documentation is available
Yard is used to generate documentation.
yard
List all undocumented objects
yard stats --list-undoc
Yard server with auto-recompile
yard server --reload
Hound is used as the code analyzer. When making a pull request, you may get comments on style and quality violations.
RuboCop is a Ruby static code analyzer.
rubocop
Reek is a code smell detector for Ruby.
reek
jshint is a Javascript style analyzer.
Install globally with
npm install -g jshint
Run jshint
jshint ./app/assets/javascripts
eslint is a Javascript style analyzer.
Install globally with
npm install -g eslint
Run eslint
eslint ./app/assets/javascripts
scss-lint is a SCSS style analyzer.
scss-lint .
Brakeman is a static analysis security vulnerability scanner.
brakeman
rails_best_practices is a code metric tool to check the quality of Rails code.
Output to console
rails_best_practices .
Output to HTML file (rails_best_practices_output.html)
rails_best_practices -f html .
- Fork it (https://github.com/archangel/archangel/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