{"id":13432294,"url":"https://github.com/Deep-Symmetry/beat-carabiner","last_synced_at":"2025-03-16T23:31:06.173Z","repository":{"id":57713222,"uuid":"85531533","full_name":"Deep-Symmetry/beat-carabiner","owner":"Deep-Symmetry","description":"A minimal tempo bridge between Pioneer Pro DJ Link and Ableton Link in Clojure.","archived":false,"fork":false,"pushed_at":"2024-07-08T09:52:36.000Z","size":693,"stargazers_count":37,"open_issues_count":0,"forks_count":6,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-02T02:55:07.485Z","etag":null,"topics":["ableton-link","clojure","dj-link","pioneer"],"latest_commit_sha":null,"homepage":"","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Deep-Symmetry.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"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},"funding":{"github":"Deep-Symmetry","liberapay":"deep-symmetry","custom":"https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=LG5NLFL5T372W\u0026source=url"}},"created_at":"2017-03-20T03:27:59.000Z","updated_at":"2024-10-31T00:44:20.000Z","dependencies_parsed_at":"2024-07-08T12:06:02.347Z","dependency_job_id":"7390f18e-3c8c-4666-acd8-04dde15d26b9","html_url":"https://github.com/Deep-Symmetry/beat-carabiner","commit_stats":{"total_commits":63,"total_committers":2,"mean_commits":31.5,"dds":0.06349206349206349,"last_synced_commit":"48423fc2005f05dce9713954e1cb59b9ecb558ee"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deep-Symmetry%2Fbeat-carabiner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deep-Symmetry%2Fbeat-carabiner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deep-Symmetry%2Fbeat-carabiner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deep-Symmetry%2Fbeat-carabiner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Deep-Symmetry","download_url":"https://codeload.github.com/Deep-Symmetry/beat-carabiner/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243949874,"owners_count":20373653,"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":["ableton-link","clojure","dj-link","pioneer"],"created_at":"2024-07-31T02:01:10.106Z","updated_at":"2025-03-16T23:31:05.789Z","avatar_url":"https://github.com/Deep-Symmetry.png","language":"Clojure","funding_links":["https://github.com/sponsors/Deep-Symmetry","https://liberapay.com/deep-symmetry","https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=LG5NLFL5T372W\u0026source=url"],"categories":["Clojure"],"sub_categories":[],"readme":"# beat-carabiner\n\n\u003cimg alt=\"a blue carabiner\" align=\"right\" width=\"150\" src=\"doc/assets/carabiner.png\"\u003e\n\n[![project chat](https://img.shields.io/badge/chat-on%20zulip-brightgreen)](https://deep-symmetry.zulipchat.com/#narrow/stream/278354-carabiner)\n\nA Clojure library for bridging Pioneer Pro DJ Link networks and\n[Ableton Link](https://www.ableton.com/en/link/).\n\n[![License](https://img.shields.io/badge/License-Eclipse%20Public%20License%202.0-blue.svg)](#licenses)\n\n\u003e [!NOTE]\n\u003e :construction: This project is undergoing major changes. It has\n\u003e become a library that manages the binding between Ableton Link and\n\u003e Beat Link, incorporating two years of improvements to Beat Link and\n\u003e Beat Link Trigger, so that it supports sync in both directions, from\n\u003e DJ Link to Ableton Link (as it always has), and also the reverse. To\n\u003e eliminate duplication of work, and make sure everyone is always\n\u003e getting the latest code, [Beat Link\n\u003e Trigger](https://github.com/Deep-Symmetry/beat-link-trigger) is now\n\u003e using this new library instead of having its own copy of the code.\n\u003e\n\u003e The ability to run beat-carabiner as a standalone project for use in\n\u003e headless environments like the Raspberry Pi has moved to a new\n\u003e project, [Open Beat\n\u003e Control](https://github.com/Deep-Symmetry/open-beat-control). In\n\u003e addition to all the features that used to be available in the\n\u003e original Beat Carabiner project, it makes Beat Link features\n\u003e available to other programs (such as Max/MSP, Max4Live, and Pure\n\u003e Data) using Open Sound Control. A few features have been chosen\n\u003e initially to prove the concept, and more will be added over time.\n\n\u003e [!CAUTION]\n\u003e Although you can still download an old standalone\n\u003e version of beat-carabiner from the Releases page here, it is no\n\u003e longer documented or supported, and we encourage you to switch to\n\u003e Open Beat Control (and read its [user\n\u003e guide](https://obc-guide.deepsymmetry.org/)), because it gives you\n\u003e many new features for Ableton Link synchronization alone, as well as\n\u003e its other capabilities.\n\n## Usage\n\n1. Set up a Clojure project using [Leiningen](http://leiningen.org) or\n   [Boot](https://github.com/boot-clj/boot#boot--).\n\n1. Add this project as a dependency:\n   [![Clojars Project](https://img.shields.io/clojars/v/beat-carabiner.svg)](https://clojars.org/beat-carabiner)\n\n1. In the namespace from which you want to use `beat-carabiner`,\n   add this to the `:require` section of the `ns` form:\n\n       [beat-carabiner.core :as beat-carabiner]\n\nThen consult the [API\ndocumentation](https://cljdoc.org/d/beat-carabiner/beat-carabiner/CURRENT/api/beat-carabiner.core)\nfor how to use it. [![cljdoc\nbadge](https://cljdoc.org/badge/beat-carabiner/beat-carabiner)](https://cljdoc.org/d/beat-carabiner/beat-carabiner/CURRENT/api/beat-carabiner.core)\n\nAlthough it is possible to download (or build) and start your own copy\nof [Carabiner](https://github.com/Deep-Symmetry/carabiner) if you are\nworking on an operating system or processor architecture that is not\nyet supported by\n[lib-carabiner](https://github.com/Deep-Symmetry/lib-carabiner), in most\nsituations you can let beat-carabiner automatically manage an embedded\ninstance for you using lib-carabiner. You will need at least Java 9 to\nload lib-carabiner, but a current release will perform better and have\nmore recent security updates.\n\n## Java Version\n\nIf you are a Java developer who’d like to use the capability offered\nby this library without having to embed Clojure and work with interop\ncode, or would just find it easier to study a Java implementation,\nthis has been ported as\n[beat-carabiner-java](https://github.com/Deep-Symmetry/beat-carabiner-java).\n\n## Getting Help\n\n\u003ca href=\"http://zulip.com\"\u003e\u003cimg align=\"right\" alt=\"Zulip logo\"\n src=\"doc/assets/zulip-icon-circle.svg\" width=\"128\" height=\"128\"\u003e\u003c/a\u003e\n\nDeep Symmetry\u0026rsquo;s projects are generously sponsored with hosting\nby \u003ca href=\"https://zulip.com\"\u003eZulip\u003c/a\u003e, an open-source modern team\nchat app designed to keep both live and asynchronous conversations\norganized. Thanks to them, you can \u003ca\nhref=\"https://deep-symmetry.zulipchat.com/#narrow/stream/278354-carabiner\"\u003echat\nwith our community\u003c/a\u003e, ask questions, get inspiration, and share your\nown ideas. You can also open an\n[issue](https://github.com/Deep-Symmetry/beat-carabiner/issues) on the\nproject.\n\n### Logging Configuration\n\nbeat-carabiner uses the excellent\n[Timbre](https://github.com/ptaoussanis/timbre) logging framework. If\nyou do nothing, log messages above the `debug` level will be written\nto the standard output. But you can configure it however you would\nlike, as described in its\n[documentation](https://github.com/ptaoussanis/timbre#configuration).\n\n## Licenses\n\n\u003ca href=\"http://deepsymmetry.org\"\u003e\u003cimg align=\"right\" alt=\"Deep Symmetry\"\n src=\"doc/assets/DS-logo-github.png\" width=\"250\" height=\"150\"\u003e\u003c/a\u003e\n\nCopyright © 2017–2023 [Deep Symmetry, LLC](http://deepsymmetry.org)\n\nDistributed under the [Eclipse Public License\n2.0](https://opensource.org/licenses/EPL-2.0). By using this software\nin any fashion, you are agreeing to be bound by the terms of this\nlicense. You must not remove this notice, or any other, from this\nsoftware. A copy of the license can be found in\n[LICENSE.md](https://github.com/Deep-Symmetry/beat-carabiner/blob/master/LICENSE.md)\nwithin this project.\n\nThe included copies of Carabiner are distributed under the [GNU\nGeneral Public License, version\n2](https://opensource.org/licenses/GPL-2.0). A copy of the license can be found in\n[gpl-2.0.md](https://github.com/Deep-Symmetry/beat-carabiner/blob/master/gpl-2.0.md)\nwithin this project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDeep-Symmetry%2Fbeat-carabiner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDeep-Symmetry%2Fbeat-carabiner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDeep-Symmetry%2Fbeat-carabiner/lists"}