Archangel is currently under development. It is not ready for production use.

Travis CI Coverage Status Code Climate Dependency Status Inline docs

This project rocks and uses MIT-LICENSE.


  • Ruby >= 2.2.3
  • Rails ~> 5.1.4

Deploying to Heroku

Deploy a sample application to Heroku to play with.



Add to your application's Gemfile

gem "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


Subsequent updates can be done by bumping the version in your application Gemfile, then installing new migrations

$ bundle exec rake archangel:install:migrations

Run migrations

$ bundle exec rake db:migrate


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


$ bundle exec rake spec


$ 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

Code Analysis

Travis CI

Travis CI is used for running tests. To get the best possible overview of issues with different Ruby versions, Archangel is tested with multiple various of Ruby. See .travis.yml for the versions of Ruby tested.


Hound is used as the code analyzer in pull request. When making a pull request, you may get comments on style and quality violations.


RuboCop is a Ruby static code analyzer.

$ rubocop


scss-lint is a SCSS style analyzer.

$ scss-lint .

Code Climate

Code Climate is used as overall maintainability. When making a pull request, you may get a failures based on violations.


Brakeman is a static analysis security vulnerability scanner.

$ brakeman


Online documentation is available

Yard is used to generate documentation.

Build the documentation

$ yard


$ yard doc

Build the documentation and list all undocumented objects

$ yard stats --list-undoc


  • TODO: Archangel gem development instructions and resources
  • TODO: Archangel instructions and resources for theme developers
  • TODO: Archangel instructions and resources for extension developers


  1. Fork it (
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request