{"id":14988,"name":"pypianoroll","description":"A toolkit for working with piano rolls","url":"https://github.com/salu133445/pypianoroll","last_synced_at":"2025-09-04T22:37:11.647Z","repository":{"id":38206601,"uuid":"117360127","full_name":"salu133445/pypianoroll","owner":"salu133445","description":"A toolkit for working with piano rolls","archived":false,"fork":false,"pushed_at":"2023-06-26T08:16:50.000Z","size":10094,"stargazers_count":146,"open_issues_count":9,"forks_count":18,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-08-24T22:50:59.682Z","etag":null,"topics":["midi","music","music-generation","music-information-retrieval","python","visulization"],"latest_commit_sha":null,"homepage":"https://salu133445.github.io/pypianoroll/","language":"Python","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/salu133445.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"salu133445"}},"created_at":"2018-01-13T16:42:39.000Z","updated_at":"2025-07-07T03:44:47.000Z","dependencies_parsed_at":"2023-01-29T21:20:27.247Z","dependency_job_id":"f7a3e468-8451-49cd-9f8a-5df8fa80c387","html_url":"https://github.com/salu133445/pypianoroll","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/salu133445/pypianoroll","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/salu133445","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273685029,"owners_count":25149719,"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-09-04T02:00:08.968Z","response_time":61,"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"}},"owner":{"login":"salu133445","name":"Hao-Wen (Herman) Dong 董皓文","uuid":"22392791","kind":"user","description":"Assistant Professor at University of Michigan | PhD from UC San Diego | Human-Centered Generative AI for Content Generation","email":"","website":"hermandong.com","location":"USA/Taiwan","twitter":"hermanhwdong","company":"UC San Diego","icon_url":"https://avatars.githubusercontent.com/u/22392791?u=49c40ff0b4f8a19a7b2edf93e7801d31e9f56467\u0026v=4","repositories_count":26,"last_synced_at":"2025-08-28T08:38:46.721Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/salu133445","funding_links":["https://github.com/sponsors/salu133445"],"total_stars":3238,"followers":410,"following":42,"created_at":"2022-11-15T15:17:26.594Z","updated_at":"2025-08-28T08:38:46.721Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/salu133445","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/salu133445/repositories"},"packages":[{"id":2879260,"name":"pypianoroll","ecosystem":"pypi","description":"A toolkit for working with piano rolls","homepage":null,"licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/salu133445/pypianoroll","keywords_array":["music","audio","music-information-retrieval"],"namespace":null,"versions_count":23,"first_release_published_at":"2018-01-26T08:52:04.000Z","latest_release_published_at":"2021-02-13T18:49:35.000Z","latest_release_number":"1.0.4","last_synced_at":"2025-08-24T19:02:26.239Z","created_at":"2022-04-10T12:16:41.884Z","updated_at":"2025-08-24T20:23:37.074Z","registry_url":"https://pypi.org/project/pypianoroll/","install_command":"pip install pypianoroll --index-url https://pypi.org/simple","documentation_url":"https://salu133445.github.io/pypianoroll/","metadata":{"funding":null,"documentation":"https://salu133445.github.io/pypianoroll/","classifiers":["Development Status :: 5 - Production/Stable","License :: OSI Approved :: MIT License","Programming Language :: Python :: 3","Topic :: Multimedia :: Sound/Audio"],"normalized_name":"pypianoroll","project_status":null},"repo_metadata":{"id":38206601,"uuid":"117360127","full_name":"salu133445/pypianoroll","owner":"salu133445","description":"A toolkit for working with piano rolls","archived":false,"fork":false,"pushed_at":"2023-06-26T08:16:50.000Z","size":10094,"stargazers_count":146,"open_issues_count":9,"forks_count":18,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-08-17T20:52:38.841Z","etag":null,"topics":["midi","music","music-generation","music-information-retrieval","python","visulization"],"latest_commit_sha":null,"homepage":"https://salu133445.github.io/pypianoroll/","language":"Python","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/salu133445.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"salu133445"}},"created_at":"2018-01-13T16:42:39.000Z","updated_at":"2025-07-07T03:44:47.000Z","dependencies_parsed_at":"2023-01-29T21:20:27.247Z","dependency_job_id":"f7a3e468-8451-49cd-9f8a-5df8fa80c387","html_url":"https://github.com/salu133445/pypianoroll","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/salu133445/pypianoroll","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/salu133445","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271942436,"owners_count":24847405,"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-24T02:00:11.135Z","response_time":111,"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"},"owner_record":{"login":"salu133445","name":"Hao-Wen (Herman) Dong 董皓文","uuid":"22392791","kind":"user","description":"Assistant Professor at University of Michigan | PhD from UC San Diego | Human-Centered Generative AI for Content Generation","email":"","website":"hermandong.com","location":"USA/Taiwan","twitter":"hermanhwdong","company":"UC San Diego","icon_url":"https://avatars.githubusercontent.com/u/22392791?u=49c40ff0b4f8a19a7b2edf93e7801d31e9f56467\u0026v=4","repositories_count":26,"last_synced_at":"2025-08-17T20:41:56.459Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/salu133445","funding_links":["https://github.com/sponsors/salu133445"],"total_stars":3238,"followers":410,"following":42,"created_at":"2022-11-15T15:17:26.594Z","updated_at":"2025-08-17T20:41:56.459Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/salu133445","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/salu133445/repositories"},"tags":[{"name":"v1.0.4","sha":"b384a7f7fa6092d790e36b1c268bdc7076f215ef","kind":"commit","published_at":"2021-02-13T18:47:55.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v1.0.4","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.4/manifests"},{"name":"v1.0.3","sha":"8dbc19b434c85b08d2ec85c08bdfbdb4b7e90ccb","kind":"commit","published_at":"2021-01-09T07:36:07.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v1.0.3","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v1.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.3/manifests"},{"name":"v1.0.2","sha":"618356eadb872b90c69ba1bc4a57e12eb77c8a0b","kind":"commit","published_at":"2020-12-26T19:05:36.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v1.0.2","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"d95b87e251dff29955a5d936a40b08f31f5c9ae7","kind":"commit","published_at":"2020-12-26T10:50:02.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v1.0.1","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"3781f12a8dea10bc5baa18ed5b13acf5438dcb5b","kind":"commit","published_at":"2020-11-04T15:21:26.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v1.0.0","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v1.0.0/manifests"},{"name":"v0.5.3","sha":"6ddb4460df62de8c5982c7d696e4347e691db1e8","kind":"commit","published_at":"2020-01-07T10:29:23.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v0.5.3","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v0.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v0.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.3/manifests"},{"name":"v0.5.2","sha":"4d87eba9fc3dca0b353c85e303caf0d25ccd2e29","kind":"commit","published_at":"2019-10-24T08:35:08.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v0.5.2","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v0.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v0.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.2/manifests"},{"name":"v0.5.1","sha":"a7634d55c6a3942351267f79b9e8ccada812eee1","kind":"commit","published_at":"2019-10-23T23:07:28.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v0.5.1","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v0.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"4f0a48c1a08be7523002d450272d19deb7e308b2","kind":"commit","published_at":"2018-09-13T19:40:07.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v0.5.0","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"f60b80dd30c67a7a5f4c95d6d89bc175a0616a9f","kind":"commit","published_at":"2018-05-18T08:11:06.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v0.4.0","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"ce36c9a4ff6e1d8af3242f61f5500153ccf0f9cf","kind":"commit","published_at":"2018-04-16T11:34:43.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v0.3.0","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.3.0/manifests"},{"name":"v0.2.0","sha":"ea8b88ac49c1db00eabc508b80e1f716117f383a","kind":"commit","published_at":"2018-04-12T09:42:24.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/v0.2.0","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/v0.2.0/manifests"},{"name":"0.1.4","sha":"5710121215933382b93f92d9fd844546a249ffa2","kind":"commit","published_at":"2018-04-10T11:33:22.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/0.1.4","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/0.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@0.1.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.1.4/manifests"},{"name":"0.1.0","sha":"d57c1f564347b805b3d1aab02930fe6321bd25bd","kind":"commit","published_at":"2018-01-27T15:04:23.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/0.1.0","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.1.0/manifests"},{"name":"0.0.2","sha":"9cd96818f3c8560adf649d48fc62343bc0ef648a","kind":"commit","published_at":"2018-01-26T07:12:54.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/0.0.2","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@0.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.0.2/manifests"},{"name":"0.0.1","sha":"9a8625e73f65425e7a0330199ef6eb4d3b960192","kind":"commit","published_at":"2018-01-25T19:37:30.000Z","download_url":"https://codeload.github.com/salu133445/pypianoroll/tar.gz/0.0.1","html_url":"https://github.com/salu133445/pypianoroll/releases/tag/0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/salu133445/pypianoroll@0.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/tags/0.0.1/manifests"}]},"repo_metadata_updated_at":"2025-08-24T20:23:37.073Z","dependent_packages_count":1,"downloads":2163,"downloads_period":"last-month","dependent_repos_count":79,"rankings":{"downloads":6.776549750451719,"dependent_repos_count":1.6829460190746677,"dependent_packages_count":4.714065656226561,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":4.391187141917649},"purl":"pkg:pypi/pypianoroll","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/pypianoroll","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/pypianoroll","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/pypianoroll/dependencies","status":null,"funding_links":["https://github.com/sponsors/salu133445"],"critical":null,"issue_metadata":{"last_synced_at":"2025-07-22T12:18:29.605Z","issues_count":28,"pull_requests_count":11,"avg_time_to_close_issue":14689995.888888888,"avg_time_to_close_pull_request":19862500.57142857,"issues_closed_count":18,"pull_requests_closed_count":7,"pull_request_authors_count":5,"issue_authors_count":17,"avg_comments_per_issue":1.6785714285714286,"avg_comments_per_pull_request":1.4545454545454546,"merged_pull_requests_count":3,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/issues","maintainers":[{"login":"salu133445","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/salu133445"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypianoroll/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypianoroll/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypianoroll/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypianoroll/related_packages","maintainers":[{"uuid":"salu133445","login":"salu133445","name":null,"email":null,"url":null,"packages_count":2,"html_url":"https://pypi.org/user/salu133445/","role":null,"created_at":"2023-02-25T04:58:58.254Z","updated_at":"2023-02-25T04:58:58.254Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/salu133445/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":724920,"maintainers_count":308248,"namespaces_count":0,"keywords_count":237984,"github":"pypi","metadata":{"funded_packages_count":50481},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-04T05:23:51.177Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":2111299,"full_name":"salu133445/pypianoroll","default_branch":"main","committers":[{"name":"salu133445","email":"salu133445@gmail.com","login":"salu133445","count":328},{"name":"salu133445","email":"b02901080@ntu.edu.tw","login":null,"count":57},{"name":"George Ogden","email":"George-Ogden@outlook.com","login":"George-Ogden","count":3},{"name":"adamoudad","email":"adam.oudad@gmail.com","login":"adamoudad","count":1},{"name":"Francesco Landolfi","email":"flandolfi","login":"flandolfi","count":1},{"name":"Hao-Wen Dong","email":"salu133445@citi.sinica.edu.tw","login":null,"count":1}],"total_commits":391,"total_committers":6,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":65.16666666666667,"dds":0.16112531969309463,"past_year_committers":[],"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2025-05-23T19:00:37.462Z","last_synced_commit":"7bb6dba37da646e13789a083e6ec006a0424730c","created_at":"2024-10-02T19:25:27.133Z","updated_at":"2025-05-23T19:00:37.653Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-04T00:00:25.936Z","repositories_count":5480019,"commits_count":853389012,"contributors_count":31098138,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"salu133445/pypianoroll","html_url":"https://github.com/salu133445/pypianoroll","last_synced_at":"2025-08-24T20:46:24.996Z","status":"error","issues_count":28,"pull_requests_count":11,"avg_time_to_close_issue":14689995.888888888,"avg_time_to_close_pull_request":19862500.57142857,"issues_closed_count":18,"pull_requests_closed_count":7,"pull_request_authors_count":5,"issue_authors_count":17,"avg_comments_per_issue":1.6785714285714286,"avg_comments_per_pull_request":1.4545454545454546,"merged_pull_requests_count":3,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2024-10-02T19:25:27.951Z","updated_at":"2025-09-02T23:48:38.023Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/salu133445%2Fpypianoroll/issues","issue_labels_count":{"bug":7,"question":6,"enhancement":1},"pull_request_labels_count":{"bug":2,"enhancement":1},"issue_author_associations_count":{"NONE":20,"OWNER":2},"pull_request_author_associations_count":{"CONTRIBUTOR":5,"NONE":2},"issue_authors":{"MaximusWhite":2,"Yannik1337":2,"salu133445":2,"djosix":2,"maximoskp":1,"Clockmender":1,"santient":1,"dedededefo":1,"Natooz":1,"huasheng-yue":1,"15805383399":1,"p3zo":1,"rgb000000":1,"mauroalejandrojm":1,"ruiguo-bio":1,"bojobo":1,"ChristosSgouropoulos":1,"GuiMarion":1},"pull_request_authors":{"George-Ogden":3,"aspil":1,"adamoudad":1,"flandolfi":1,"bojobo":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10067183,"issues_count":31166656,"pull_requests_count":94972760,"authors_count":10688095,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"NONE":1},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{"maximoskp":1},"past_year_pull_request_authors":{},"maintainers":[{"login":"salu133445","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/salu133445"}],"active_maintainers":[]},"events":{"total":{"WatchEvent":8,"PullRequestEvent":1,"ForkEvent":3},"last_year":{"WatchEvent":8,"PullRequestEvent":1,"ForkEvent":3}},"keywords":["midi","music","music-generation","music-information-retrieval","python","visulization"],"dependencies":[{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2022-08-18T21:40:21.605Z","updated_at":"2022-08-18T21:40:21.605Z","repository_link":"https://github.com/salu133445/pypianoroll/blob/main/setup.py","dependencies":[{"id":1954223968,"package_name":"numpy","ecosystem":"pypi","requirements":"\u003e=1.12.0","direct":true,"kind":"runtime","optional":false},{"id":1954223969,"package_name":"scipy","ecosystem":"pypi","requirements":"\u003e=1.0.0","direct":true,"kind":"runtime","optional":false},{"id":1954223970,"package_name":"pretty_midi","ecosystem":"pypi","requirements":"\u003e=0.2.8","direct":true,"kind":"runtime","optional":false},{"id":1954223971,"package_name":"matplotlib","ecosystem":"pypi","requirements":"\u003e=1.5","direct":true,"kind":"runtime","optional":false}]}],"score":14.551199852789889,"created_at":"2025-09-04T15:50:45.867Z","updated_at":"2025-10-07T08:08:16.951Z","avatar_url":"https://github.com/salu133445.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":2163,"funding_links":["https://github.com/sponsors/salu133445"],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/14988","html_url":"https://science.ecosyste.ms/projects/14988","bibtex_url":"https://science.ecosyste.ms/projects/14988/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/14988/export.apalike"}