{"id":13801560,"url":"https://github.com/ZaneH/piano-trainer","last_synced_at":"2025-05-13T11:31:22.618Z","repository":{"id":43785244,"uuid":"510455597","full_name":"ZaneH/piano-trainer","owner":"ZaneH","description":"Memorize piano scales with ease! A piano practice program w/ MIDI support. Consider it an interactive reference manual 🎹","archived":false,"fork":false,"pushed_at":"2025-04-20T19:41:47.000Z","size":3933,"stargazers_count":1478,"open_issues_count":5,"forks_count":50,"subscribers_count":15,"default_branch":"main","last_synced_at":"2025-05-08T17:47:49.435Z","etag":null,"topics":["audio","chords","circle-of-fifths","keyboard","midi","midir","music","music-learning","music-theory","note","piano","practice","quiz","react","rust","scales","tauri","trainer","tutor"],"latest_commit_sha":null,"homepage":"https://zaneh.itch.io/piano-trainer","language":"TypeScript","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/ZaneH.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"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},"funding":{"github":"ZaneH","ko_fi":"zaneh"}},"created_at":"2022-07-04T17:55:17.000Z","updated_at":"2025-05-04T16:46:41.000Z","dependencies_parsed_at":"2024-01-17T16:59:09.634Z","dependency_job_id":"438d2fd3-8a61-42bc-9ad9-f2b2a6129737","html_url":"https://github.com/ZaneH/piano-trainer","commit_stats":{"total_commits":94,"total_committers":8,"mean_commits":11.75,"dds":"0.13829787234042556","last_synced_commit":"5c7e3293eb76f9adcbdb41f043b1352bf0d8961f"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZaneH%2Fpiano-trainer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZaneH%2Fpiano-trainer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZaneH%2Fpiano-trainer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZaneH%2Fpiano-trainer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ZaneH","download_url":"https://codeload.github.com/ZaneH/piano-trainer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253317736,"owners_count":21889682,"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","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":["audio","chords","circle-of-fifths","keyboard","midi","midir","music","music-learning","music-theory","note","piano","practice","quiz","react","rust","scales","tauri","trainer","tutor"],"created_at":"2024-08-04T00:01:24.382Z","updated_at":"2025-05-13T11:31:22.597Z","avatar_url":"https://github.com/ZaneH.png","language":"TypeScript","funding_links":["https://github.com/sponsors/ZaneH","https://ko-fi.com/zaneh"],"categories":["Applications","TypeScript","Apps"],"sub_categories":["Learning","Open Source"],"readme":"\u003ca href=\"https://www.producthunt.com/posts/piano-trainer?utm_source=badge-top-post-topic-badge\u0026utm_medium=badge\u0026utm_souce=badge-piano\u0026#0045;trainer\" target=\"_blank\"\u003e\u003cimg align=\"right\" src=\"https://api.producthunt.com/widgets/embed-image/v1/top-post-topic-badge.svg?post_id=351951\u0026theme=light\u0026period=monthly\u0026topic_id=204\" alt=\"Piano\u0026#0032;Trainer - Memorize\u0026#0032;piano\u0026#0032;scales\u0026#0032;and\u0026#0032;chords\u0026#0032;with\u0026#0032;ease | Product Hunt\" style=\"width: 250px; height: 54px;\" width=\"250\" height=\"54\" /\u003e\u003c/a\u003e\n\n# Piano Trainer\n\nLearn to play the piano at your own pace through various modes of practice. [Watch the video](https://vimeo.com/730642802)\n\n\u003cp align=\"center\"\u003e\n\u003cimg alt=\"Piano Trainer screenshot\" src=\"https://i.imgur.com/Nxg1706.png\" height=\"250px\" /\u003e\n\u003cimg alt=\"Piano Trainer screenshot #2\" src=\"https://i.imgur.com/mBg1fjH.png\" height=\"250px\" /\u003e\n\u003c/p\u003e\n\n## Features\n\n- [x] MIDI compatible\n  - [x] Home row keyboard input\n- [x] Cross-platform support\n- [x] Interactive scale practice\n- [x] Interactive chord practice\n- [x] Interactive fifths practice\n- [x] Interactive quiz\n- [x] Hard mode\n\n## Coming Soon\n\n- [ ] Interactive inversion practice\n- [ ] Settings\n  - [ ] Toggle questions in quiz mode\n  - [x] Change keyboard sound\n\n# Releases\n\nDownload for free on all platforms on [itch.io/piano-trainer](https://zaneh.itch.io/piano-trainer)\n\nor download the [latest build here](https://github.com/ZaneH/piano-trainer/releases)\n\n## Run Locally\n\nYou'll need to setup Rust and Tauri CLI by following the [Getting Started guide here](https://tauri.app/v1/guides/getting-started/prerequisites).\n\n```bash\n$ git clone https://github.com/ZaneH/piano-trainer.git\n$ cd piano-trainer\n$ yarn tauri dev\n```\n\n## Build Target Binary\n\nOutputs to `./src-tauri/target/release/bundle`\n\n```bash\n$ yarn tauri build\n```\n\n# Contributions\n\nContributions are more than welcome. Read the [Technical Breakdown here](https://github.com/ZaneH/piano-trainer/wiki/Technical-Breakdown) to learn about the codebase.\n\nCreate a PR pointing to the `dev` branch. Stable builds will be merged into `master`.\n\nCode formatting is automically handled with Git Hooks.\n\n# Credit\n\nSpecial thank you to [ruohki/tauri-midi-example](https://github.com/ruohki/tauri-midi-example), [kevinsqi/react-piano](https://github.com/kevinsqi/react-piano), and the [Tauri Discord community](https://tauri.app/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZaneH%2Fpiano-trainer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FZaneH%2Fpiano-trainer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZaneH%2Fpiano-trainer/lists"}