Skip to main content

Graph-Oriented Computer-Assisted Composition in Python

Project description

PyPI version Python 3.10+ License: CC BY-SA 4.0

Klotho

Klotho is an open source computer-assisted composition toolkit implemented in Python. It is designed to work in tandem with external synthesis applications and as a resource for the methods, models, works, and frameworks associated with music composition and metacomposition.

Klotho adapts to multiple Python workflows, supporting traditional scripting, interactive notebook environments, and immediate computational tasks through the interpreter.


Installation

Option 1: Install from PyPI (Recommended)

pip install klotho-cac

That's it. You're ready to go.

Option 2: Install from Source

Clone the repository to get a local copy of the Klotho source code, then install in editable mode:

git clone https://github.com/kr4g/Klotho.git
cd Klotho/
pip install -e .

Editable mode (-e) means changes you make to the source are immediately reflected without reinstalling.

For contributors: To also install testing and documentation tools, run pip install -e .[dev] instead.


Integration with SuperCollider

To use Klotho with SuperCollider, see the Klotho-SC extension package: https://github.com/kr4g/Klotho-SC.git.


Tutorials

Interactive Tutorials: https://kr4g.github.io/Klotho/

Browse the Klotho tutorial series directly in your browser — no installation required.


Documentation

📖 Online Documentation: https://klotho.readthedocs.io/

The complete documentation is available online and includes:

  • Complete API reference for all modules
  • Usage examples and tutorials
  • NumPy-style docstring documentation

🛠️ Build Documentation Locally (Optional):

For developers who want to build the documentation locally or preview changes:

pip install klotho-cac[docs]
cd docs
make dev

About

Klotho extends from a lineage of computer-assisted composition (CAC) theories, practices, and software environments. While it provides support for conventional musical materials, its strengths are best utilized when working with complex, abstract, or otherwise unconventional musical structures not easily accessible with traditional notation software or digital audio workstations.

Contributing

Contributions of all kinds are welcome — whether it's code, bug reports, documentation improvements, or ideas for new features. To contribute, fork the repository, create a branch, and open a pull request. For bugs or suggestions, open an issue on GitHub Issues. All contributions are accepted under the same CC BY-SA 4.0 license, and contributors are credited through Git history.

License

Klotho © 2023–2026 by Ryan Millett is licensed under CC BY-SA 4.0.

CC Icon BY Icon SA Icon

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

klotho_cac-4.0.6.tar.gz (303.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

klotho_cac-4.0.6-py3-none-any.whl (328.4 kB view details)

Uploaded Python 3

File details

Details for the file klotho_cac-4.0.6.tar.gz.

File metadata

  • Download URL: klotho_cac-4.0.6.tar.gz
  • Upload date:
  • Size: 303.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for klotho_cac-4.0.6.tar.gz
Algorithm Hash digest
SHA256 7cf494119f2d0fc51cdfe254a621e3c6da65d93698a6737efc034a55cd03ccd1
MD5 1fb524b6e09039dba7e774636ac13c35
BLAKE2b-256 a767cbf574126728c3f103d8d1993e947f49fe93ecc5110ebff69fe4574659be

See more details on using hashes here.

File details

Details for the file klotho_cac-4.0.6-py3-none-any.whl.

File metadata

  • Download URL: klotho_cac-4.0.6-py3-none-any.whl
  • Upload date:
  • Size: 328.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for klotho_cac-4.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7b9464879f026742d43bd7475ad08a381e4aba953bc0e6fb40180f04662a9fd8
MD5 cbc5a5dc5db5c229f35a251698b43862
BLAKE2b-256 4900fcdb2e3651a167148d60a09428ca101414c613f741cb1543facd65e226a8

See more details on using hashes here.

Supported by

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