Skip to content

Latest commit

 

History

History
42 lines (27 loc) · 987 Bytes

README.md

File metadata and controls

42 lines (27 loc) · 987 Bytes

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.