{"id":15561279,"url":"https://github.com/shingt/harmonykit","last_synced_at":"2025-04-23T22:26:57.465Z","repository":{"id":32464783,"uuid":"36044563","full_name":"shingt/HarmonyKit","owner":"shingt","description":"Tool to generate harmony in audio frequencies in Swift.","archived":false,"fork":false,"pushed_at":"2021-06-27T22:42:31.000Z","size":124,"stargazers_count":6,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-19T10:38:22.804Z","etag":null,"topics":["audio","harmony","ios","swift","tuning"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/shingt.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":"2015-05-22T00:54:44.000Z","updated_at":"2023-03-05T04:33:16.000Z","dependencies_parsed_at":"2023-01-14T10:01:07.790Z","dependency_job_id":null,"html_url":"https://github.com/shingt/HarmonyKit","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shingt%2FHarmonyKit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shingt%2FHarmonyKit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shingt%2FHarmonyKit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shingt%2FHarmonyKit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shingt","download_url":"https://codeload.github.com/shingt/HarmonyKit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250525318,"owners_count":21445046,"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","harmony","ios","swift","tuning"],"created_at":"2024-10-02T16:06:56.091Z","updated_at":"2025-04-23T22:26:57.425Z","avatar_url":"https://github.com/shingt.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HarmonyKit\n\n[![CI Status](http://img.shields.io/travis/shingt/HarmonyKit.svg?style=flat)](https://travis-ci.org/shingt/HarmonyKit)\n![iOS 12.0+](https://img.shields.io/badge/iOS-10.0%2B-blue.svg)\n![Swift 5.0](https://img.shields.io/badge/Swift-4.2-orange.svg)\n\nTool to generate audio frequencies.\n\n## Synopsis\n\n```swift\nlet notes = HarmonyKit.tune(\n    configuration: .init(\n        temperament: .equal,\n        pitch: 442,\n        transpositionTone: .C,\n        octaveRange: 1..\u003c2\n    )\n)\nnotes.forEach { print($0) }\n\n// =\u003e\n// tone: E, octave: 1, frequency: 41.390736\n// tone: F, octave: 1, frequency: 43.851955\n// tone: B♭, octave: 1, frequency: 58.53534\n// tone: G♭, octave: 1, frequency: 46.459526\n// tone: A♭, octave: 1, frequency: 52.149055\n// tone: E♭, octave: 1, frequency: 39.06765\n// tone: C, octave: 1, frequency: 32.851845\n// tone: B, octave: 1, frequency: 62.016026\n// tone: D, octave: 1, frequency: 36.87495\n// tone: G, octave: 1, frequency: 49.222153\n// tone: A, octave: 1, frequency: 55.25\n// tone: D♭, octave: 1, frequency: 34.80532\n```\n\nYou can also specify pure temperament:\n\n```swift\nlet pureMajorNotes = HarmonyKit.tune(\n    configuration: .init(\n        temperament: .pure(.major, rootTone: .C),\n        pitch: 442,\n        transpositionTone: .C,\n        octaveRange: 1..\u003c2\n    )\n)\n\nlet pureMinorNotes = HarmonyKit.tune(\n    configuration: .init(\n        temperament: .pure(.minor, rootTone: .C),\n        pitch: 442,\n        transpositionTone: .C,\n        octaveRange: 1..\u003c2\n    )\n)\n```\n\n## Installation\n\nHarmonyKit is available through [CocoaPods](http://cocoapods.org). To install it, simply add the following line to your Podfile:\n\n```ruby\npod \"HarmonyKit\"\n```\n\n## Example\n\nSee `Tests/HarmonyKitTests/HarmonyKitTests.swift`.\n\n### Author\n\nshingt\n\n## License\n\nHarmonyKit is available under the MIT license. See the LICENSE file for more info.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshingt%2Fharmonykit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshingt%2Fharmonykit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshingt%2Fharmonykit/lists"}