# 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](https://xenharmlib.readthedocs.io/en/latest/)
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
Raw data
{
"_id": null,
"home_page": null,
"name": "xenharmlib",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11.7",
"maintainer_email": null,
"keywords": "atonal theory, diatonic set theory, microtonal, microtonality, music, music theory, musicology, post-tonal theory, xenharmonics",
"author": null,
"author_email": "Fabian Vallon <fabian.vallon@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/66/85/9090338d029cd2f9c3ad9742954ad07e361aa6ce3d93c0eeee0a7d555acc/xenharmlib-0.2.0.tar.gz",
"platform": null,
"description": "# Xenharmlib\n\nXenharmlib is a music theory library for the exploration and research of\nmicrotonality, diatonic set theory, non-standard notations, and many\nmore. The library implements a superset of Western classical music theory,\nso you can also use it to compose and analyze music in the boundaries of\nthe common practice period or 20th century Western music.\n\n[Click here for the official documentation](https://xenharmlib.readthedocs.io/en/latest/)\n\nSo far it supports the following:\n\n* Equal division tunings (e.g. Western, Modern Arabic, Bohlen-Pierce)\n* Analysis of intervals, scales, and their relations to one another\n* Group theoretical analysis (integer pitches, pitch classes, etc)\n* Up/Down Notation (a superset of Western accidental notation)\n* Building blocks for custom notations\n\nComing soon:\n\n* Maximally even sets\n* Interval vectors and related properties\n* Key signature support for Up/Down Notation scales\n* Scale and triad generators\n* Just Intonation and Prime Limit Tunings\n* Odd Limit Tunings\n* Extended Helmholtz-Ellis JI Pitch Notation\n",
"bugtrack_url": null,
"license": null,
"summary": "A library for microtonal music theory",
"version": "0.2.0",
"project_urls": {
"Documentation": "https://xenharmlib.readthedocs.io/en/latest/",
"Homepage": "https://gitlab.com/retooth/xenharmlib",
"Issues": "https://gitlab.com/retooth/xenharmlib/-/issues"
},
"split_keywords": [
"atonal theory",
" diatonic set theory",
" microtonal",
" microtonality",
" music",
" music theory",
" musicology",
" post-tonal theory",
" xenharmonics"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "7ac5e3a16393b5035aea4be5734937d1cbba01a9dc3a478c3e7b3720d3188904",
"md5": "b6ec30665c3f8d442cd86e154f211362",
"sha256": "2bdda94372c7bedff0b128662a79af04f721c77c515019e4b3225661fcf9a8a1"
},
"downloads": -1,
"filename": "xenharmlib-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b6ec30665c3f8d442cd86e154f211362",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11.7",
"size": 93064,
"upload_time": "2024-10-06T19:41:49",
"upload_time_iso_8601": "2024-10-06T19:41:49.590190Z",
"url": "https://files.pythonhosted.org/packages/7a/c5/e3a16393b5035aea4be5734937d1cbba01a9dc3a478c3e7b3720d3188904/xenharmlib-0.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "66859090338d029cd2f9c3ad9742954ad07e361aa6ce3d93c0eeee0a7d555acc",
"md5": "28b59c6a92c2688225b693bf040d231f",
"sha256": "1367c054d639a05e3f4ef448eb2eb0147c989d7fb26006c06ae7edd7b6ca23d0"
},
"downloads": -1,
"filename": "xenharmlib-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "28b59c6a92c2688225b693bf040d231f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11.7",
"size": 72813,
"upload_time": "2024-10-06T19:41:47",
"upload_time_iso_8601": "2024-10-06T19:41:47.929493Z",
"url": "https://files.pythonhosted.org/packages/66/85/9090338d029cd2f9c3ad9742954ad07e361aa6ce3d93c0eeee0a7d555acc/xenharmlib-0.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-06 19:41:47",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "retooth",
"gitlab_project": "xenharmlib",
"lcname": "xenharmlib"
}