{"id":21666736,"url":"https://github.com/tubbo/mass","last_synced_at":"2025-08-18T05:11:27.817Z","repository":{"id":56882890,"uuid":"44026338","full_name":"tubbo/mass","owner":"tubbo","description":"Ruby MIDI sequencing framework","archived":false,"fork":false,"pushed_at":"2023-12-15T17:46:26.000Z","size":38,"stargazers_count":3,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-28T02:58:27.969Z","etag":null,"topics":["midi","midi-controller","music"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tubbo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-10-10T20:07:23.000Z","updated_at":"2017-04-23T14:46:18.000Z","dependencies_parsed_at":"2023-12-15T18:52:45.649Z","dependency_job_id":null,"html_url":"https://github.com/tubbo/mass","commit_stats":{"total_commits":30,"total_committers":1,"mean_commits":30.0,"dds":0.0,"last_synced_commit":"5b29344c6d0765e9cf7a7acef268a6fc6e635359"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/tubbo/mass","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubbo%2Fmass","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubbo%2Fmass/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubbo%2Fmass/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubbo%2Fmass/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tubbo","download_url":"https://codeload.github.com/tubbo/mass/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubbo%2Fmass/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270946068,"owners_count":24672890,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-18T02:00:08.743Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["midi","midi-controller","music"],"created_at":"2024-11-25T11:29:05.322Z","updated_at":"2025-08-18T05:11:27.757Z","avatar_url":"https://github.com/tubbo.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mass\n\n[![Build Status](https://travis-ci.org/tubbo/mass.svg?branch=master)](https://travis-ci.org/tubbo/mass)\n[![Code Climate](https://codeclimate.com/github/tubbo/mass/badges/gpa.svg)](https://codeclimate.com/github/tubbo/mass)\n[![Test Coverage](https://codeclimate.com/github/tubbo/mass/badges/coverage.svg)](https://codeclimate.com/github/tubbo/mass/coverage)\n[![Inline docs](http://inch-ci.org/github/tubbo/mass.svg?branch=master)](http://inch-ci.org/github/tubbo/mass)\n\nMass is a Ruby framework for building MIDI synthesizer controls.\n\n## Installation\n\nOn Linux, the **libasound** and **libasound-dev** are required for use.\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'mass'\n```\n\nAnd then execute:\n\n```bash\n$ bundle\n```\n\nOr install it yourself:\n\n```bash\n$ gem install mass\n```\n\n## Usage\n\nTo create a new pattern, use the DSL methods that Mass gives you upon\nmixing it into whatever namespace you're dealing with.\n\n```ruby\nrequire 'mass'\n\ninclude Mass\n\nbpm 128\npattern bars: 4 do\n  note 4, pitch: 'C2'\n  note 4, pitch: 'C3'\n  note 4, pitch: 'C4'\n  note 4, pitch: 'C3'\nend\n```\n\nYou can also use this syntax to also name the sequence and keep it out\nof the main namespace:\n\n```ruby\nMS20 = 'KORG INC. MS-20M Kit'\nTEMPEST = 'Dave Smith Instruments Tempest'\n\nMass.sequence name: 'Your Love', bpm: 125, bars: 32 do\n  pattern name: 'Arpeggio', repeat: true, device: MS20 do\n    note 8, pitch: 'G4'\n    note 8, pitch: 'E4'\n    note 8, pitch: 'C4'\n  end\n\n  pattern name: 'Bass Line', repeat: true, device: TEMPEST do\n    note 8, pitch: 'G4'\n    note 4, pitch: 'E4'\n    note 8, pitch: 'C4'\n    note 4, pitch: 'C4'\n    note 4, pitch: 'C4'\n  end\nend\n```\n\nThis is useful for more complex patterns with names. Read the\n[RDoc documentation][rdoc] for more information on each component and what\neach DSL method does.\n\n## Development\n\nMass was created by [Tom Scott][tubbo] and is published under\nthe [MIT License][mit]. All contributions are welcome as long\nas they are submitted via pull request, include tests that\ndescribe your change and prove what you did works, and do not\nbreak the CI build.\n\nTo get started with contributing, clone down this repo and run the\nfollowing command within its root directory:\n\n```bash\n$ bin/setup\n```\n\nIf you need to install this gem onto your local machine, run:\n\n```bash\n$ bin/rake install\n```\n\nTo release a new version, update the version number in\n**lib/mass/version.rb**, then run the following command to create a Git\ntag for the release, push all commits \u0026 tags to the repo, and upload the\nnewly built `.gem` file to [RubyGems][gem]:\n\n```bash\n$ bin/rake release\n```\n\n[tubbo]: https://github.com/tubbo\n[rdoc]: http://www.rubydoc.info/github/tubbo/mass/master/frames\n[gem]: https://rubygems.org\n[mit]: https://github.com/tubbo/mass/blob/master/LICENSE.txt\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftubbo%2Fmass","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftubbo%2Fmass","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftubbo%2Fmass/lists"}