JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 38
  • Score
    100M100P100Q59388F
  • License MIT

Semantic music notation

Package Exports

  • bach-cljs

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (bach-cljs) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

bach

🎼 Semantic music notation


build npm clojars

Introduction

bach is a semantic music notation designed to be both human and computer friendly.

Although its primary domain is music, bach enables the synchronization of rhythmic timelines with just about anything.

⚠️ The project is still considered experimental should not be used in production.

Documentation

Before diving into the docs, please note that bach is a new data format, so naturally there is limited tooling and integration support for it today.

But whether you're an adventerous musician or a developer exploring bach for their project, we advise that you read our Guide page since it provides the most comphrensive overview of bach available.

Example

The following bach data represents the loopable progression of a rock backing track.

🎹 Try running it in the bach editor!

@meter = 4|4
@tempo = 83

:A = [
  3/8 -> {
    scale('E aeolian')
    chord('Em9')
  }
  5/8 -> chord('C')
  3/8 -> chord('Em9')
  4/8 -> chord('C')
  9/8 -> chord('C/D')
]

:B = [
  3/8 -> chord('B')
  5/8 -> chord('Em9')
  1 -> chord('Em9')
]

:C = [
  3/8 -> chord('B')
  5/8 -> chord('G')
  1 -> chord('G')
]

play! [
  7 of :A
  2 of :B
  3 of [
    :C
    when !{ last? } do { :B }
  ]
  3/8 -> chord('B')
  5/8 -> chord('Em9')
  1 -> chord('B7b13')
]

You can find more examples of bach in the Examples page of the documentation.

License

MIT