Skip to main content

A library for microtonal music theory

Project description

Xenharmlib

Xenharmlib is a music theory library for the exploration and research of microtonality, diatonic set theory, non-standard notations, and many more. The library implements a superset of Western classical music theory, so you can also use it to compose and analyze music in the boundaries of the common practice period or 20th century Western music.

Click here for the official documentation

So far it supports the following:

  • Equal division tunings (e.g. Western, Modern Arabic, Bohlen-Pierce)
  • Analysis of intervals, scales, and their relations to one another
  • Group theoretical analysis (integer pitches, pitch classes, etc)
  • Up/Down Notation (a superset of Western accidental notation)
  • Building blocks for custom notations

Coming soon:

  • Maximally even sets
  • Interval vectors and related properties
  • Key signature support for Up/Down Notation scales
  • Scale and triad generators
  • Just Intonation and Prime Limit Tunings
  • Odd Limit Tunings
  • Extended Helmholtz-Ellis JI Pitch Notation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xenharmlib-0.2.0.tar.gz (72.8 kB view details)

Uploaded Source

Built Distribution

xenharmlib-0.2.0-py3-none-any.whl (93.1 kB view details)

Uploaded Python 3

File details

Details for the file xenharmlib-0.2.0.tar.gz.

File metadata

  • Download URL: xenharmlib-0.2.0.tar.gz
  • Upload date:
  • Size: 72.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.0

File hashes

Hashes for xenharmlib-0.2.0.tar.gz
Algorithm Hash digest
SHA256 1367c054d639a05e3f4ef448eb2eb0147c989d7fb26006c06ae7edd7b6ca23d0
MD5 28b59c6a92c2688225b693bf040d231f
BLAKE2b-256 66859090338d029cd2f9c3ad9742954ad07e361aa6ce3d93c0eeee0a7d555acc

See more details on using hashes here.

File details

Details for the file xenharmlib-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: xenharmlib-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 93.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.0

File hashes

Hashes for xenharmlib-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2bdda94372c7bedff0b128662a79af04f721c77c515019e4b3225661fcf9a8a1
MD5 b6ec30665c3f8d442cd86e154f211362
BLAKE2b-256 7ac5e3a16393b5035aea4be5734937d1cbba01a9dc3a478c3e7b3720d3188904

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page