Scruin is an event auditing system for Ruby on Rails and PostgreSQL.

Readme Hero Image

Project status

Warning: Scruin is currently under heavy development and may not yet work as advertised. Use at your own risk.

Gem Version Build Status Coverage Status Code Climate Inline docs Security


  • Rails 4.2+
  • Ruby 2.1+
  • PostgreSQL 9.2+


Add the scruin gem to your Rails application's Gemfile with:

gem 'scruin', github: 'tonyhburns/scruin', branch: 'master'


TODO: Write configuration instructions here.


TODO: Write usage instructions here.


See the YARD documentation for the latest API documentation.

Generate local documentation with YARD (output to the doc directory):

$ bin/rake yard




Scruin is cryptographically signed. To be sure the gem you install hasn't been tampered with, verify the checksum of the signing certificate and add it (if you haven't already) as a trusted certificate:

$ sha256 <(curl -Ls
$ gem cert --add <(curl -Ls

The SHA256 checksum of the signing certificate should be:


Installing the gem with the MediumSecurity trust profile will verify all signed gems, but allow the installation of unsigned dependencies:

$ gem install scruin -P MediumSecurity

You can also set the trust file for Bundler:

$ bundle --trust-policy MediumSecurity

Using the MediumSecurity policy is often necessary because not all of your dependencies may not be signed, so HighSecurity is not an option.

Reporting security bugs

If you have discovered an issue with Scruin of a sensitive nature that could compromise the security of Scruin users, please disclose it responsibly by following the steps in

Development and testing

Scruin follows the Ruby Style Guide for style conventions, with a few exceptions. See .rubocop.yml for details.

Run linters (RuboCop and Inch):

$ bin/rake lint

Run tests:

$ bin/rake spec


See for full information on how to contribute to Scruin.


© 2015 Tony Burns

Distributed under the MIT License. See LICENSE.txt for details.

The Scruin logo is licensed under CC BY-SA 4.0.