{"id":49453600,"url":"https://github.com/philippotto/Piano-Trainer","last_synced_at":"2026-06-02T05:00:38.487Z","repository":{"id":20020233,"uuid":"23288047","full_name":"philippotto/Piano-Trainer","owner":"philippotto","description":"A web-app for training sheet reading skills by using your MIDI-enabled piano.","archived":false,"fork":false,"pushed_at":"2018-05-22T20:20:31.000Z","size":14747,"stargazers_count":248,"open_issues_count":11,"forks_count":33,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-09-14T03:37:07.778Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://philippotto.github.io/Piano-Trainer/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/philippotto.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-08-24T17:51:29.000Z","updated_at":"2025-07-02T23:32:54.000Z","dependencies_parsed_at":"2022-08-27T03:41:20.987Z","dependency_job_id":null,"html_url":"https://github.com/philippotto/Piano-Trainer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/philippotto/Piano-Trainer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philippotto%2FPiano-Trainer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philippotto%2FPiano-Trainer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philippotto%2FPiano-Trainer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philippotto%2FPiano-Trainer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/philippotto","download_url":"https://codeload.github.com/philippotto/Piano-Trainer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philippotto%2FPiano-Trainer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33806987,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-02T02:00:07.132Z","response_time":109,"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":[],"created_at":"2026-04-30T04:01:03.701Z","updated_at":"2026-06-02T05:00:38.469Z","avatar_url":"https://github.com/philippotto.png","language":"JavaScript","funding_links":[],"categories":["📦 Legacy \u0026 Inactive Projects"],"sub_categories":[],"readme":"[SheetMusicTutor](http://philippotto.github.io/Piano-Trainer/) [![Build Status](https://travis-ci.org/philippotto/Piano-Trainer.svg?branch=master)](https://travis-ci.org/philippotto/Piano-Trainer)\n=============\n\n\nSheetMusicTutor is a web app which allows practicing sheet reading skills right in your browser.\nCurrently, there are two different modes:\n\n- Pitch reading training\n- Rhythm training\n\nThe **pitch reading training** mode uses the [Web MIDI API](http://www.w3.org/TR/webmidi/). Connect your piano via MIDI to your computer and play the displayed notes.\nThe generated notes won't be typical chords in a typical combination.\nSo, you can't rely on intuition or experience.\nInstead you must read the correct notes.\n\nRead more in this [blog post](http://scm.io/blog/hack/2015/07/piano-trainer/).\n\nOn the contrary, the **rhythm training** mode can be used without a keyboard. Just tap the given rhythm with your space button or on your touch screen.\n\nSheetMusicTutor is written in ES6 and React, uses [Vex](https://github.com/0xfe/vexflow) for rendering the sheets and [Chartist](https://github.com/gionkunz/chartist-js) for rendering the graphs.\nThe tests are executed with Jasmine/Karma on Travis.\n\n\n## How to use the pitch reading training\n\nCurrently, the Web MIDI API has very limited browser support.\nTry Chrome (at least version 39) and activate the experimental `enable-web-midi` flag (`chrome://flags/#enable-web-midi`).\nAfter connecting your MIDI device to your computer, it may be necessary to restart Chrome.\nAdditionally, make sure that no other software is reading from the device.\nFinally: Just visit the GitHub hosted [Piano-Trainer](http://philippotto.github.io/Piano-Trainer/).\n\nIf you want to run SheetMusicTutor locally, checkout the repository and execute `npm install` and `npm start` within the folder.\n\n## License\n\nMIT © Philipp Otto\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilippotto%2FPiano-Trainer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphilippotto%2FPiano-Trainer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilippotto%2FPiano-Trainer/lists"}