{"id":13768115,"url":"https://github.com/flosSoftware/harmonizer","last_synced_at":"2025-05-10T23:31:01.775Z","repository":{"id":80627957,"uuid":"196824389","full_name":"flosSoftware/harmonizer","owner":"flosSoftware","description":"learn music harmony and rhythm!","archived":false,"fork":false,"pushed_at":"2019-09-02T14:42:10.000Z","size":349,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2024-11-17T03:31:15.067Z","etag":null,"topics":["drum-machine","music-composition","music-theory","synthesizer"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flosSoftware.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-14T10:44:01.000Z","updated_at":"2022-02-04T19:37:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"87f6eccd-8338-464e-a650-4180f730e3e5","html_url":"https://github.com/flosSoftware/harmonizer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flosSoftware%2Fharmonizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flosSoftware%2Fharmonizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flosSoftware%2Fharmonizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flosSoftware%2Fharmonizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flosSoftware","download_url":"https://codeload.github.com/flosSoftware/harmonizer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253497296,"owners_count":21917683,"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":["drum-machine","music-composition","music-theory","synthesizer"],"created_at":"2024-08-03T16:01:16.711Z","updated_at":"2025-05-10T23:31:01.394Z","avatar_url":"https://github.com/flosSoftware.png","language":"JavaScript","readme":"# Live demo\n- http://learnharmony.net\n# Instructions\n- Open index.html\n- Click on the piano keyboard (or press SPACE) to start playing\n- Please note that you can click only the light blue buttons on the keyboard\n- To stop, press SPACE\n- Adjust the parameters as you like, toggles/sliders work while playing, while the others take effect on the first restart\n# How does this work\n- Plays chords according to predefined progressions, in various keys taken from the Circle of fifths\n- It always starts from the key you pressed; if you use SPACE, it starts from A3 note (so the first key is A major or A minor)\n- At times, shifts to a new key (using pivot chords) according to the rules chosen in the select field\n- To modulate from a major key to its relative minor, it makes use of *ii - iv* correspondence or *iii - i* correspondence (in the latter case it doesn't switch to the strict relative key, but to its neighbouring key)\n- To modulate form a minor key to its relative major, it makes use of *I - vi* correspondence or *VI - I* correspondence (in the latter case it doesn't switch to the strict relative key, but to its neighbouring key)\n- At times, shifts to a new progression\n- At times, makes a chord inversion (if Inv parameter is toggled on)\n- Rhythm is generated randomly and changes at each restart\n# Thanks to ...\n- p5.js, p5.sound\n- bootstrap\n- https://codepen.io/zastrow/pen/oDBki for the nice piano keyboard.\n- https://soundpacks.com/free-sound-packs/jazz-drum-kit/ for the drum kit sounds.","funding_links":[],"categories":["Music theory"],"sub_categories":["Web MIDI API"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FflosSoftware%2Fharmonizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FflosSoftware%2Fharmonizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FflosSoftware%2Fharmonizer/lists"}