A Python-based software environment for developing algorithmic art projects.
Project description
CreativePython
CreativePython is a Python-based software environment for learning and developing algorithmic art projects. It mirrors the JythonMusic API, and is powered by PySide6 and portaudio.
CreativePython is distributed under the MIT License.
This package is still under development.
Requirements
Before installing CreativePython, you will need:
- Python3, version 3.9 or greater [Download]
- A C++ compiler (see Troubleshooting below)
Installation
If you're familiar with Python development, we recommend installing CreativePython through the Command Prompt/Terminal.
Windows
Install CreativePython using pip:
python -m pip install CreativePython
MacOS
Use Homebrew to install the prerequisite portaudio library, then install CreativePython using pip:
brew install portaudio
pip install CreativePython
Linux
Use apt, or your preferred package manager, to install the prerequisite portaudio library, then install CreativePython using pip:
sudo apt-get portaudio
pip install CreativePython
Using CreativePython
Importing Libraries
CreativePython's core modules are the music, gui, image, timer, osc, and midi libraries. You can import these libraries into your python code using:
import music
from music import *
from music import Note, Play, C4, HN
Or a similar statement. CreativePython includes a number of useful constants, so we recommend using wildcard imports like from music import *.
NOTE: The first time you import music, CreativePython will download a high-quality soundfont (FluidR3 G2-2.sf2) for you. You should only have to do this once.
Running CreativePython programs
CreativePython is designed for use in Python's Interactive Mode. To use Interactive Mode, enter a command like:
python -i <filename>.py
Example
Download playNote.py:
# playNote.py
# Demonstrates how to play a single note.
from music import * # import music library
note = Note(C4, HN) # create a middle C half note
Play.midi(note) # and play it!
In IDLE, you can open playNote.py, and select Run, then Run Module from the toolbar.
In a terminal, run playNote.py in interactive mode:
python -i playNote.py
After you do, you should hear a single C4 half-note.
Troubleshooting
CMake configuration failed
Some of CreativePython's libraries may need to compile C++ code during installation.
-
On Windows, download and install Visual Studio Build Tools 2022. In the Visual Studio installer, make sure "Desktop Development with C++" is checked.
-
On MacOS, you can download and install XCode from the App Store.
Restart your computer, then try installing CreativePython again.
PENCIL Editor
CreativePython will soon be available as PENCIL, a customized Python IDE based on IDLE (Python's Integrated Development and Learning Environment).
Attribution
PENCIL is derived from IDLE, which is part of Python and created by Guido van Rossum and the Python development team. IDLE is distributed under the Python Software Foundation License Version 2.
Original IDLE Credits:
- Copyright © 2001-2023 Python Software Foundation. All Rights Reserved.
- See
resources/pencillib/CREDITS.txtfor complete IDLE contributor list.
PENCIL Modifications:
- Copyright © 2025 Dr. Bill Manaris
- Modified for use with CreativePython
- Includes custom "JEM" theme and keymap defaults
- User configuration stored in
~/.pencilrc/
Licenses
- CreativePython: MIT License (see
LICENSE) - IDLE/PENCIL: Python Software Foundation License Version 2 (see
LICENSE-PSF.txt)
For complete licensing information, see the LICENSE and LICENSE-PSF.txt files in this distribution.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file creativepython-1.1.2.tar.gz.
File metadata
- Download URL: creativepython-1.1.2.tar.gz
- Upload date:
- Size: 326.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00c8eeddbd6490b4efa991b66071e91a62b872bbe33971ccdd24376269e8f5e4
|
|
| MD5 |
57a63e43a69f9cf0405ce706f369fe1f
|
|
| BLAKE2b-256 |
1b1c7d3f87cdbc30908facde5151b0a163940a34ad7912efc0f85a5c8d041a1a
|
File details
Details for the file creativepython-1.1.2-py3-none-any.whl.
File metadata
- Download URL: creativepython-1.1.2-py3-none-any.whl
- Upload date:
- Size: 372.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
931e762f7164fee5dc31ee61b4c9397ca950ef81253e828db163e2da47b349fc
|
|
| MD5 |
26172777588b9a9f0921faf81de70716
|
|
| BLAKE2b-256 |
8f4a4ef16c47a81a1eb01d9b05673361a93f023229a24866e73d91194157fee6
|