Metadata-Version: 2.4
Name: PythonMusic
Version: 1.0
Summary: A Python-based software environment for developing algorithmic art projects.
Author-email: "Dr. Bill Manaris" <manaris@cofc.edu>, Taj Ballinger <ballingertj@g.cofc.edu>, Trevor Ritchie <ritchiets@g.cofc.edu>
License-Expression: GPL-3.0-or-later
Project-URL: Homepage, https://pythonmusic.org
Project-URL: Documentation, https://pythonmusic.org
Keywords: music,audio,midi,learning,algorithmic art,algoart
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: LICENSE-PSF
Requires-Dist: setuptools>=69.0
Requires-Dist: wheel>=0.46.0
Requires-Dist: tinysoundfont>=0.3.6
Requires-Dist: osc4py3>=1.0.8
Requires-Dist: mido>=1.3.3
Requires-Dist: PySide6>=6.9.1
Requires-Dist: python-rtmidi>=1.5.8
Requires-Dist: sounddevice>=0.5.2
Requires-Dist: soundfile>=0.13.1
Requires-Dist: tqdm>=4.67.1
Requires-Dist: pooch>=1.8
Requires-Dist: pypianoroll>=1.0
Requires-Dist: verovio>=5.6.0
Requires-Dist: pymusicxml>=0.5.6
Requires-Dist: pyinstaller>=6.16.0
Requires-Dist: pyobjc-framework-Cocoa>=9.0; sys_platform == "darwin"
Dynamic: license-file

# PythonMusic

PythonMusic is a Python-based software environment for learning and developing algorithmic art projects. It mirrors the [JythonMusic API](https://jythonmusic.me/api-reference/).

**Full documentation, tutorials, and examples live at [pythonmusic.org](https://pythonmusic.org/).** This README covers only the essentials.

## Installation

Requires **Python 3.12+** and a **C++ compiler** (some dependencies build native code). On Linux, install [portaudio](http://portaudio.com/) first.

```
# Windows/macOS
pip install PythonMusic

# Linux (Debian/Ubuntu)
sudo apt-get install portaudio19-dev
pip install PythonMusic
```

If installation fails for lack of a compiler, install the [Visual Studio Build Tools](https://visualstudio.microsoft.com/downloads/) (Windows) or [Xcode](https://apps.apple.com/us/app/xcode/id497799835?mt=12) (macOS), then retry. See the [site](https://pythonmusic.org/) for full setup help.

The first time you `import music`, PythonMusic offers to download a default soundfont (FluidR3 GM) to a local cache for MIDI playback.

## PEM editor

PythonMusic ships with PEM, a customized Python editor (a hard fork of IDLE). After installing, run:

```
pem <filename.py>
```

## License

PythonMusic and PEM are free software under the [GNU GPL v3 or later](https://www.gnu.org/licenses/gpl-3.0.html) (see `LICENSE`). PythonMusic derives from [JythonMusic](https://jythonmusic.me/), which is also GPLv3.

- PEM's IDLE-derived components remain under the Python Software Foundation License v2 (`LICENSE-PSF`).
- The bundled `nevmuse` metrics component is a separate work with its own terms (see `src/PythonMusic/nevmuse/NOTICE.txt`).

For full licensing details, see `LICENSE` and `LICENSE-PSF`.
