Ekzhang Harmony Save

🎶 Generate four-part harmony following idiomatic voice-leading procedures with DP!

Project README

Harmony

Generate four-part harmony following idiomatic voice-leading procedures with DP!

>>> voiceProgression('B-', 'I I6 IV V43/ii ii V V7 I')

Four-part harmony

See the web interface at autoharmony.herokuapp.com. This was built with Music21.

Usage

First, install and activate dependencies managed by Pipenv.

$ pipenv install
$ pipenv shell

To generate a chorale:

$ python voicing.py

Then, create a fresh Postgres database. Tables will be created on first application run. To launch the development web server:

$ FLASK_APP=app.py FLASK_DEBUG=1 DATABASE_URL=<POSTGRES_URL> flask run

To launch the production web server:

$ DATABASE_URL=<POSTGRES_URL> WEB_CONCURRENCY=2 gunicorn app:app

License

Licensed under the BSD 3-Clause License.

Open Source Agenda is not affiliated with "Ekzhang Harmony" Project. README Source: ekzhang/harmony

Open Source Agenda Badge

Open Source Agenda Rating