Skip to content
Core classes for BloodContracts runtime API validation toolkit
Branch: master
Clone or download
Latest commit 8b8942a May 18, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin Remove Dry::Initializer dependency & refactor Mar 25, 2019
examples Chore #errors and #match a bit Mar 26, 2019
lib Bump version to 0.3.2 May 18, 2019
spec Initial commit Mar 23, 2019
.gitignore Introduce BC::Contract Mar 26, 2019
.rspec Initial commit Mar 23, 2019
.travis.yml Initial commit Mar 23, 2019
Gemfile Initial commit Mar 23, 2019
Rakefile Initial commit Mar 23, 2019
blood_contracts-core.gemspec Remove Dry::Initializer dependency & refactor Mar 25, 2019


Simple implementation of Refinement Types and Contract (based on types). Would be the basement for the BloodContracts API production testing framework.


Add this line to your application's Gemfile:

gem 'blood_contracts-core'

And then execute:

$ bundle

Or install it yourself as:

$ gem install blood_contracts-core


TODO: Write usage instructions here


After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to


Bug reports and pull requests are welcome on GitHub at 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.


The gem is available as open source under the terms of the MIT License.

Code of Conduct

Everyone interacting in the BloodContracts::Core project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

You can’t perform that action at this time.