ruby-mext: music extensions for the ruby language (native ruby code)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Nicola Bernardini 7c67934c68 Merge branch 'master' of 7 months ago
bin corrected require in bin/console 3 years ago
lib completed note names handling (first batch) 10 months ago
spec completed note names handling (first batch) 10 months ago
.gitignore added the PitchClass object along with its methods 3 years ago
.rdoc_options added rdoc documentation support 3 years ago
.rspec added choose method to array 3 years ago
.ruby-gemset init 3 years ago
.ruby-version updated ruby and gems 2 years ago
.travis.yml corrected travis file to perform with ruby-2.6 3 years ago
Gemfile init 3 years ago
LICENSE Initial commit 3 years ago added rubygem badge 3 years ago
Rakefile added gruff plotting for testing visually 3 years ago
ruby-mext.gemspec updated gemspec 7 months ago

Ruby::Mext music extensions for the ruby language (native ruby code)

Build Status Maintainability Gem Version

These are extensions of usual idiomatic ruby objects (i.e. Numeric, Array, etc.) that make ruby a comfortable language for musicians.

It is the usual unfinished ever-expanding project. Feel free to contribute to it in the form of pull requests if you are so inclined.


Add this line to your application's Gemfile:

gem 'ruby-mext'

And then execute:

$ bundle

Or install it yourself as:

$ gem install ruby-mext


Just add anywhere in your code:

require 'ruby-mext'

and boum! There you go. You have the extensions.

There should be some documentation here for each extension. Feel free to contribute them! :-D


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

Please note: I am trying to keep this library as simple and easy to use as possible. Let's not over-feature it as we (musicians) always do.