{"id":23982370,"url":"https://github.com/ut-proj/undertone","last_synced_at":"2025-04-14T05:52:46.316Z","repository":{"id":53773604,"uuid":"294439392","full_name":"ut-proj/undertone","owner":"ut-proj","description":"Making Music with Extempore, OSC, and SuperCollider in LFE/OTP","archived":false,"fork":false,"pushed_at":"2021-07-26T05:49:46.000Z","size":4052,"stargazers_count":60,"open_issues_count":52,"forks_count":4,"subscribers_count":6,"default_branch":"release/0.4.x","last_synced_at":"2025-04-14T05:52:41.555Z","etag":null,"topics":["erlang","extempore","lfe","lisp","music","open-sound-control","osc","sound","supercollider","synthesizers"],"latest_commit_sha":null,"homepage":"","language":"LFE","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ut-proj.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":"2020-09-10T14:50:46.000Z","updated_at":"2025-03-03T16:13:33.000Z","dependencies_parsed_at":"2022-09-19T01:10:47.121Z","dependency_job_id":null,"html_url":"https://github.com/ut-proj/undertone","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ut-proj%2Fundertone","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ut-proj%2Fundertone/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ut-proj%2Fundertone/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ut-proj%2Fundertone/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ut-proj","download_url":"https://codeload.github.com/ut-proj/undertone/tar.gz/refs/heads/release/0.4.x","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248830389,"owners_count":21168272,"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":["erlang","extempore","lfe","lisp","music","open-sound-control","osc","sound","supercollider","synthesizers"],"created_at":"2025-01-07T11:16:43.990Z","updated_at":"2025-04-14T05:52:46.298Z","avatar_url":"https://github.com/ut-proj.png","language":"LFE","funding_links":[],"categories":[],"sub_categories":[],"readme":"# undertone\n\n[![Build Status][gh-actions-badge]][gh-actions]\n[![LFE Versions][lfe-badge]][lfe]\n[![Erlang Versions][erlang-badge]][versions]\n[![Tag][github-tag-badge]][github-tag]\n\n[![Project Logo][logo]][logo-large]\n\n*Making Music with Extempore, OSC, and SuperCollider in LFE/OTP*\n\n##### Table of Contents\n\n* [About](#about-)\n* [Status](#status-)\n* [Presentations \u0026 Demos](#presentations--demos-)\n* [Build and Test](#build-and-test-)\n* [Usage Overview](#usage-overview-)\n* [Architecture](#architecture-)\n* [Documentation](#documentation-)\n* [License](#license-)\n\n## About [\u0026#x219F;](#table-of-contents)\n\nThis is a project for making music in LFE, with support for MIDI, audio\nprocessing, Open Sound Control, and more. The `undertone` project relies\nheavily upon the phenomenal work of [Andrew Sorensen](https://github.com/digego)\net al in the [Extempore project](https://github.com/digego/extempore),\nessentially having the aim of providing an LFE DSL for BEAM-native, distributed\ninteraction with Extempore.\n\nSuperCollider support is currently limited to basic OSC operations. Features for\nthat or other backends or adding new backends to undertone will be prioritised\nbased upon time and interest.\n\nBackend and OSC server versions tested against:\n\n* Extempore 0.8.7\n* SuperCollider 3.11.2\n* Erlang OSC server 2.0 and 2.1\n* Ardour 5 and 6\n\n## Status [\u0026#x219F;](#table-of-contents)\n\n**Caution**: This is a work-in-progress under active development in the very\nearly stages of sound-systems integration in LFE: you have been warned! Loss of\nlimb or sanity are not the responsbility of the project nor the maintainers.\n\nCurrent state of `undertone`:\n\n* An OTP release-based project that automtically runs in the LFE REPL\n* A fully functional Extempore REPL (any encountered issues are bugs --\n  [file a ticket](https://github.com/lfex/undertone/issues/new)!) with an\n  automatically reconnecting TCP client\n* Basic Open Sound Control support (SuperCollider, the Ardour DAW)\n\nFor the current list of open tickets and the views by milestone, see the\nfollowing:\n\n* https://github.com/lfex/undertone/issues\n* https://github.com/lfex/undertone/milestones\n\n## Presentations \u0026 Demos [\u0026#x219F;](#table-of-contents)\n\nhttps://undertone.lfe.io/presentations/\n\n\n## Build and Test [\u0026#x219F;](#table-of-contents)\n\n```shell\n$ rebar3 compile\n$ rebar3 ltest # this step is optional\n$ rebar3 release\n```\n\n## Usage Overview [\u0026#x219F;](#table-of-contents)\n\nFor the examples below, start the REPL:\n\n```shell\n$ rebar3 repl\n```\n[![Banner Screenshot][banner-image]][banner-image]\n\nNote that, while under active development, the undertone logging level will be\nset to `debug`. If that's too much for you, before you start the REPL edit the\n`./config/sys.config` file and change `level =\u003e debug` to `notice` or\n`warning`.\n\nUsage examples have been moved here, due to the rapid accretion of content:\n\n* [A quick-start for Extempore in LFE](https://undertone.lfe.io/book/current/quick-start/extempore/index.html)\n* [SuperCollider via OSC](https://undertone.lfe.io/book/current/quick-start/osc/index.html#supercollider-a-hreftable-of-contentsa)\n\n## Architecture [\u0026#x219F;](#table-of-contents)\n\n[![C4 architecture diagram: system context][sys-context]][sys-context]\n\n[![C4 architecture diagram: container][containers]][containers]\n\n## Documentation [\u0026#x219F;](#table-of-contents)\n\nThere is an early-stage [documentation effort](https://github.com/cnbbooks/lfe-music-programming)\nfor this project, with draft content published at [undertone.lfe.io/book](https://undertone.lfe.io/book/).\n\n## License [\u0026#x219F;](#table-of-contents)\n\nApache License, Version 2.0\n\nCopyright © 2020, Duncan McGreggor \u003coubiwann@gmail.com\u003e.\n\n\n[//]: ---Named-Links---\n\n[logo]: priv/images/logo-v1.png\n[logo-large]: priv/images/logo-v1-large.png\n[github]: https://github.com/lfex/undertone\n[gh-actions-badge]: https://github.com/lfex/undertone/workflows/ci%2Fcd/badge.svg\n[gh-actions]: https://github.com/lfex/undertone/actions\n[lfe]: https://github.com/rvirding/lfe\n[lfe-badge]: https://img.shields.io/badge/lfe-2.0-blue.svg\n[erlang-badge]: https://img.shields.io/badge/erlang-19%20to%2023-blue.svg\n[versions]: https://github.com/lfex/undertone/blob/master/.github/workflows/cicd.yml\n[github-tag]: https://github.com/lfex/undertone/tags\n[github-tag-badge]: https://img.shields.io/github/tag/lfex/undertone.svg\n[github-downloads]: https://img.shields.io/github/downloads/lfex/undertone/total.svg\n[banner-image]: priv/images/banner-screenshot.png\n[sys-context]: priv/images/system-context.jpg\n[containers]: priv/images/containers.jpg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fut-proj%2Fundertone","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fut-proj%2Fundertone","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fut-proj%2Fundertone/lists"}