CreativePython 0.1.8__tar.gz → 0.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. {creativepython-0.1.8 → creativepython-0.2.0}/LICENSE +19 -0
  2. creativepython-0.2.0/LICENSE-PSF +67 -0
  3. {creativepython-0.1.8 → creativepython-0.2.0}/MANIFEST.in +1 -0
  4. {creativepython-0.1.8/src/CreativePython.egg-info → creativepython-0.2.0}/PKG-INFO +47 -13
  5. {creativepython-0.1.8 → creativepython-0.2.0}/README.md +28 -13
  6. {creativepython-0.1.8 → creativepython-0.2.0}/pyproject.toml +10 -1
  7. creativepython-0.2.0/src/CreativePython/__init__.py +10 -0
  8. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/boids.py +1 -0
  9. {creativepython-0.1.8 → creativepython-0.2.0/src/CreativePython.egg-info}/PKG-INFO +47 -13
  10. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython.egg-info/SOURCES.txt +3 -3
  11. creativepython-0.2.0/src/CreativePython.egg-info/top_level.txt +2 -0
  12. creativepython-0.2.0/src/bin/libportaudio.2.dylib +0 -0
  13. {creativepython-0.1.8 → creativepython-0.2.0}/src/gui.py +1502 -922
  14. {creativepython-0.1.8 → creativepython-0.2.0}/src/music.py +286 -152
  15. creativepython-0.1.8/src/CreativePython/__init__.py +0 -0
  16. creativepython-0.1.8/src/CreativePython/_creativepythonSetup.py +0 -134
  17. creativepython-0.1.8/src/CreativePython/_soundfont.py +0 -73
  18. creativepython-0.1.8/src/CreativePython.egg-info/top_level.txt +0 -11
  19. {creativepython-0.1.8 → creativepython-0.2.0}/setup.cfg +0 -0
  20. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/.DS_Store +0 -0
  21. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/ArvoPart.CantusInMemoriam.py +0 -0
  22. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/ConcretPH_Xenakis.py +0 -0
  23. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/DeepPurple.SmokeOnTheWater.py +0 -0
  24. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/JS_Bach.Canon.TriasHarmonica.BWV1072.py +0 -0
  25. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/JS_Bach.Canon_1.GoldbergGround.BWV1087.py +0 -0
  26. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/Mozart.MusikalischesWurfelspiel.py +0 -0
  27. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/PierreCage.StructuresPourDeuxChances.py +0 -0
  28. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/RGB_Display.py +0 -0
  29. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/TerryRiley.InC.py +0 -0
  30. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/arpeggiator1.py +0 -0
  31. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/arpeggiator2.py +0 -0
  32. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/autumnLeaves.py +0 -0
  33. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/axelF.py +0 -0
  34. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/biosignals.txt +0 -0
  35. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/brownianMelody.py +0 -0
  36. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/changesByTupac.py +0 -0
  37. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/clementine.py +0 -0
  38. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/continuousPitchInstrumentAudio.py +0 -0
  39. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/drumExample.py +0 -0
  40. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/drumMachinePattern1.py +0 -0
  41. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/drumsComeAlive.py +0 -0
  42. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/fibonacci.py +0 -0
  43. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/findPitchOctave.py +0 -0
  44. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/furElise.py +0 -0
  45. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/generativeMusic.py +0 -0
  46. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/goldenTree.py +0 -0
  47. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/guidoWordMusic.py +0 -0
  48. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/harmonicesMundi.py +0 -0
  49. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/harmonicesMundiRevisisted.py +0 -0
  50. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/harmonographLateral.py +0 -0
  51. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/harmonographRotary.py +0 -0
  52. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/iPianoBlackDown.png +0 -0
  53. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/iPianoOctave.png +0 -0
  54. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/iPianoParallel.py +0 -0
  55. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/iPianoSimple.py +0 -0
  56. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/iPianoWhiteCenterDown.png +0 -0
  57. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/iPianoWhiteLeftDown.png +0 -0
  58. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/iPianoWhiteRightDown.png +0 -0
  59. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/midiIn1.py +0 -0
  60. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/midiIn2.py +0 -0
  61. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/midiIn3.py +0 -0
  62. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/midiOut.a.py +0 -0
  63. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/midiOut.b.py +0 -0
  64. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/midiSynthesizer.py +0 -0
  65. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/midiSynthesizer2.py +0 -0
  66. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/moondog-bird_slament.wav +0 -0
  67. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/musicalSphere.py +0 -0
  68. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/note.py +0 -0
  69. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/octoplus.py +0 -0
  70. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/oscIn1.py +0 -0
  71. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/oscIn2.py +0 -0
  72. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/pentatonicMelody.py +0 -0
  73. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/pianoPhase.py +0 -0
  74. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/pianoRollGenerator.py +0 -0
  75. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/playNote.py +0 -0
  76. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/proteinMusic.py +0 -0
  77. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/randomCircles.py +0 -0
  78. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/randomCirclesThroughMidiInput.py +0 -0
  79. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/randomCirclesTimed.py +0 -0
  80. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/retrograde.a.py +0 -0
  81. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/retrograde.b.py +0 -0
  82. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/retrograde.c.py +0 -0
  83. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/rowYourBoat.py +0 -0
  84. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/scaleTutor.py +0 -0
  85. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/sierpinskiTriangle.py +0 -0
  86. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/simpleButtonInstrument.py +0 -0
  87. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/simpleCircleInstrument.py +0 -0
  88. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/sineMelody.py +0 -0
  89. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/sineMelodyPlus.py +0 -0
  90. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/sliderControl.py +0 -0
  91. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/sonifyBiosignals.py +0 -0
  92. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/sonifyImage.py +0 -0
  93. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/soundscapeLoutrakiSunset.jpg +0 -0
  94. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/stringQuartet.py +0 -0
  95. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/textMusic.py +0 -0
  96. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/theWayItIs.py +0 -0
  97. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/themeAndVariations.py +0 -0
  98. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/throwingDice.py +0 -0
  99. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/windChimes.py +0 -0
  100. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/examples/zipfMetrics.py +0 -0
  101. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/resources/.DS_Store +0 -0
  102. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/resources/550973__luizguilherme_a__clean-guitarr-riff.mp3 +0 -0
  103. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/resources/chopper.jpg +0 -0
  104. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython/resources/de-brazzas-monkey.jpg +0 -0
  105. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython.egg-info/dependency_links.txt +0 -0
  106. {creativepython-0.1.8 → creativepython-0.2.0}/src/CreativePython.egg-info/requires.txt +0 -0
  107. {creativepython-0.1.8 → creativepython-0.2.0}/src/_RealtimeAudioPlayer.py +0 -0
  108. {creativepython-0.1.8 → creativepython-0.2.0}/src/iannix.py +0 -0
  109. {creativepython-0.1.8 → creativepython-0.2.0}/src/image.py +0 -0
  110. {creativepython-0.1.8 → creativepython-0.2.0}/src/markov.py +0 -0
  111. {creativepython-0.1.8 → creativepython-0.2.0}/src/midi.py +0 -0
  112. {creativepython-0.1.8 → creativepython-0.2.0}/src/osc.py +0 -0
  113. {creativepython-0.1.8 → creativepython-0.2.0}/src/timer.py +0 -0
  114. {creativepython-0.1.8 → creativepython-0.2.0}/src/zipf.py +0 -0
@@ -19,3 +19,22 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.
22
+
23
+ ================================================================================
24
+ THIRD PARTY COMPONENTS
25
+ ================================================================================
26
+
27
+ This software includes PENCIL, a derivative work based on IDLE (Integrated
28
+ Development and Learning Environment), which is part of Python and distributed
29
+ under the Python Software Foundation License Version 2.
30
+
31
+ IDLE Components:
32
+ - Location: resources/pencillib/
33
+ - Copyright: © 2001-2023 Python Software Foundation. All Rights Reserved.
34
+ - License: Python Software Foundation License Version 2 (see LICENSE-PSF.txt)
35
+ - Original Authors: Guido van Rossum and Python development team
36
+ - PENCIL Modifications: Copyright © 2025 Dr. Bill Manaris
37
+
38
+ For complete IDLE/PENCIL licensing information and contributor credits, see:
39
+ - LICENSE-PSF.txt (Python Software Foundation License)
40
+ - resources/pencillib/CREDITS.txt (Complete contributor list)
@@ -0,0 +1,67 @@
1
+ PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
2
+ --------------------------------------------
3
+
4
+ This license applies to the IDLE components (located in resources/pencillib/)
5
+ that are incorporated into PENCIL.
6
+
7
+ 1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and
8
+ the Individual or Organization ("Licensee") accessing and otherwise using this
9
+ software ("Python") in source or binary form and its associated documentation.
10
+
11
+ 2. Subject to the terms and conditions of this License Agreement, PSF hereby
12
+ grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce,
13
+ analyze, test, perform and/or display publicly, prepare derivative works,
14
+ distribute, and otherwise use Python alone or in any derivative version,
15
+ provided, however, that PSF's License Agreement and PSF's notice of copyright,
16
+ i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
17
+ 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022,
18
+ 2023 Python Software Foundation; All Rights Reserved" are retained in Python
19
+ alone or in any derivative version prepared by Licensee.
20
+
21
+ 3. In the event Licensee prepares a derivative work that is based on or
22
+ incorporates Python or any part thereof, and wants to make the derivative work
23
+ available to others as provided herein, then Licensee hereby agrees to include
24
+ in any such work a brief summary of the changes made to Python.
25
+
26
+ 4. PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO
27
+ REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT
28
+ LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF
29
+ MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON
30
+ WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.
31
+
32
+ 5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY
33
+ INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING,
34
+ DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF
35
+ ADVISED OF THE POSSIBILITY THEREOF.
36
+
37
+ 6. This License Agreement will automatically terminate upon a material breach of
38
+ its terms and conditions.
39
+
40
+ 7. Nothing in this License Agreement shall be deemed to create any relationship of
41
+ agency, partnership, or joint venture between PSF and Licensee. This License
42
+ Agreement does not grant permission to use PSF trademarks or trade name in a
43
+ trademark sense to endorse or promote products or services of Licensee, or any
44
+ third party.
45
+
46
+ 8. By copying, installing or otherwise using Python, Licensee agrees to be bound
47
+ by the terms and conditions of this License Agreement.
48
+
49
+
50
+ ACKNOWLEDGMENT
51
+ --------------
52
+
53
+ PENCIL is a derivative work based on IDLE (Integrated Development and Learning
54
+ Environment), which is part of the Python standard library.
55
+
56
+ Original IDLE was created by Guido van Rossum and has been maintained and
57
+ enhanced by numerous contributors to the Python project.
58
+
59
+ PENCIL modifications include:
60
+ - Custom default themes and keymaps ("JEM")
61
+ - Modified configuration directory (~/.pencilrc/)
62
+ - Integration with CreativePython environment
63
+ - Various UI and feature enhancements
64
+
65
+ For a complete list of IDLE contributors, see resources/pencillib/CREDITS.txt
66
+
67
+ IDLE source code and documentation: https://github.com/python/cpython/tree/main/Lib/pencillib
@@ -1,3 +1,4 @@
1
+ recursive-include src/bin *
1
2
  recursive-include src/CreativePython/resources *
2
3
  recursive-include src/CreativePython/examples *
3
4
  recursive-exclude */.DS_Store
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CreativePython
3
- Version: 0.1.8
3
+ Version: 0.2.0
4
4
  Summary: A Python-based software environment for developing algorithmic art projects.
5
5
  Author-email: "Dr. Bill Manaris" <manaris@cofc.edu>, Taj Ballinger <ballingertj@g.cofc.edu>, Trevor Ritchie <ritchiets@g.cofc.edu>
6
6
  License: MIT License
@@ -25,6 +25,24 @@ License: MIT License
25
25
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
26
  SOFTWARE.
27
27
 
28
+ ================================================================================
29
+ THIRD PARTY COMPONENTS
30
+ ================================================================================
31
+
32
+ This software includes PENCIL, a derivative work based on IDLE (Integrated
33
+ Development and Learning Environment), which is part of Python and distributed
34
+ under the Python Software Foundation License Version 2.
35
+
36
+ IDLE Components:
37
+ - Location: resources/pencillib/
38
+ - Copyright: © 2001-2023 Python Software Foundation. All Rights Reserved.
39
+ - License: Python Software Foundation License Version 2 (see LICENSE-PSF.txt)
40
+ - Original Authors: Guido van Rossum and Python development team
41
+ - PENCIL Modifications: Copyright © 2025 Dr. Bill Manaris
42
+
43
+ For complete IDLE/PENCIL licensing information and contributor credits, see:
44
+ - LICENSE-PSF.txt (Python Software Foundation License)
45
+ - resources/pencillib/CREDITS.txt (Complete contributor list)
28
46
  Project-URL: Homepage, https://jythonmusic.me
29
47
  Keywords: music,audio,midi,learning,algorithmic art,algoart
30
48
  Classifier: Programming Language :: Python :: 3
@@ -33,6 +51,7 @@ Classifier: License :: OSI Approved :: MIT License
33
51
  Requires-Python: >=3.9
34
52
  Description-Content-Type: text/markdown
35
53
  License-File: LICENSE
54
+ License-File: LICENSE-PSF
36
55
  Requires-Dist: setuptools>=69.0
37
56
  Requires-Dist: tinysoundfont>=0.3.6
38
57
  Requires-Dist: osc4py3>=1.0.8
@@ -69,17 +88,7 @@ Before installing CreativePython, you will need:
69
88
 
70
89
  # Beginner Installation (Windows/MacOS)
71
90
 
72
- 1. Download the [CreativePython Setup Script](https://www.dropbox.com/scl/fi/253bvfqsf0ij3rmza88q5/_creativepythonSetup.py?rlkey=iu4y4u8pujltgfx6kbjmodu9m&dl=1).
73
-
74
- 2. Open `creativePythonSetup.py` with IDLE, Python's Integrated Development Learning Environment.
75
-
76
- 3. From the IDLE toolbar, select `Run`, then `Run Module`.
77
-
78
- 4. CreativePython will check for its requirements on your system, download any missing requirements, and install its libraries.
79
-
80
- 5. If you see `[CreativePython Setup]: CreativePython installed successfully.`, you're all done! You're ready to start using CreativePython in your Python code.
81
-
82
- - To test the installation, try out the **playNote** example below!
91
+ COMING SOON
83
92
 
84
93
  # Custom Installation
85
94
 
@@ -163,10 +172,35 @@ After you do, you should hear a single C4 half-note.
163
172
 
164
173
  ### CMake configuration failed
165
174
 
166
- Some of CreativePython's libraries need to compile C++ code during installation.
175
+ Some of CreativePython's libraries may need to compile C++ code during installation.
167
176
 
168
177
  - On Windows, download and install [Visual Studio Build Tools 2022](https://visualstudio.microsoft.com/downloads/). In the Visual Studio installer, make sure "Desktop Development with C++" is checked.
169
178
 
170
179
  - On MacOS, you can download and install [XCode from the App Store](https://apps.apple.com/us/app/xcode/id497799835?mt=12).
171
180
 
172
181
  Restart your computer, then try installing CreativePython again.
182
+
183
+ # PENCIL Editor
184
+
185
+ CreativePython is also available as PENCIL, a customized Python IDE based on IDLE (Python's Integrated Development and Learning Environment).
186
+
187
+ ## Attribution
188
+
189
+ 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.
190
+
191
+ **Original IDLE Credits:**
192
+ - Copyright © 2001-2023 Python Software Foundation. All Rights Reserved.
193
+ - See `resources/pencillib/CREDITS.txt` for complete IDLE contributor list.
194
+
195
+ **PENCIL Modifications:**
196
+ - Copyright © 2025 Dr. Bill Manaris
197
+ - Modified for use with CreativePython
198
+ - Includes custom "JEM" theme and keymap defaults
199
+ - User configuration stored in `~/.pencilrc/`
200
+
201
+ ## Licenses
202
+
203
+ - **CreativePython**: MIT License (see `LICENSE`)
204
+ - **IDLE/PENCIL**: Python Software Foundation License Version 2 (see `LICENSE-PSF.txt`)
205
+
206
+ For complete licensing information, see the `LICENSE` and `LICENSE-PSF.txt` files in this distribution.
@@ -18,17 +18,7 @@ Before installing CreativePython, you will need:
18
18
 
19
19
  # Beginner Installation (Windows/MacOS)
20
20
 
21
- 1. Download the [CreativePython Setup Script](https://www.dropbox.com/scl/fi/253bvfqsf0ij3rmza88q5/_creativepythonSetup.py?rlkey=iu4y4u8pujltgfx6kbjmodu9m&dl=1).
22
-
23
- 2. Open `creativePythonSetup.py` with IDLE, Python's Integrated Development Learning Environment.
24
-
25
- 3. From the IDLE toolbar, select `Run`, then `Run Module`.
26
-
27
- 4. CreativePython will check for its requirements on your system, download any missing requirements, and install its libraries.
28
-
29
- 5. If you see `[CreativePython Setup]: CreativePython installed successfully.`, you're all done! You're ready to start using CreativePython in your Python code.
30
-
31
- - To test the installation, try out the **playNote** example below!
21
+ COMING SOON
32
22
 
33
23
  # Custom Installation
34
24
 
@@ -112,10 +102,35 @@ After you do, you should hear a single C4 half-note.
112
102
 
113
103
  ### CMake configuration failed
114
104
 
115
- Some of CreativePython's libraries need to compile C++ code during installation.
105
+ Some of CreativePython's libraries may need to compile C++ code during installation.
116
106
 
117
107
  - On Windows, download and install [Visual Studio Build Tools 2022](https://visualstudio.microsoft.com/downloads/). In the Visual Studio installer, make sure "Desktop Development with C++" is checked.
118
108
 
119
109
  - On MacOS, you can download and install [XCode from the App Store](https://apps.apple.com/us/app/xcode/id497799835?mt=12).
120
110
 
121
- Restart your computer, then try installing CreativePython again.
111
+ Restart your computer, then try installing CreativePython again.
112
+
113
+ # PENCIL Editor
114
+
115
+ CreativePython is also available as PENCIL, a customized Python IDE based on IDLE (Python's Integrated Development and Learning Environment).
116
+
117
+ ## Attribution
118
+
119
+ 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.
120
+
121
+ **Original IDLE Credits:**
122
+ - Copyright © 2001-2023 Python Software Foundation. All Rights Reserved.
123
+ - See `resources/pencillib/CREDITS.txt` for complete IDLE contributor list.
124
+
125
+ **PENCIL Modifications:**
126
+ - Copyright © 2025 Dr. Bill Manaris
127
+ - Modified for use with CreativePython
128
+ - Includes custom "JEM" theme and keymap defaults
129
+ - User configuration stored in `~/.pencilrc/`
130
+
131
+ ## Licenses
132
+
133
+ - **CreativePython**: MIT License (see `LICENSE`)
134
+ - **IDLE/PENCIL**: Python Software Foundation License Version 2 (see `LICENSE-PSF.txt`)
135
+
136
+ For complete licensing information, see the `LICENSE` and `LICENSE-PSF.txt` files in this distribution.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "CreativePython"
7
- version = "0.1.8"
7
+ version = "0.2.0"
8
8
  description = "A Python-based software environment for developing algorithmic art projects."
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
@@ -34,6 +34,15 @@ dependencies = [
34
34
  "pypianoroll>=1.0"
35
35
  ]
36
36
 
37
+ [tool.setuptools]
38
+ package-dir = {"" = "src"}
39
+
40
+ [tool.setuptools.packages.find]
41
+ where = ["src"]
42
+
43
+ [tool.setuptools.package-data]
44
+ "CreativePython" = ["bin/libportaudio.2.dylib"]
45
+
37
46
  [project.urls]
38
47
  Homepage = "https://jythonmusic.me"
39
48
 
@@ -0,0 +1,10 @@
1
+ import platform, ctypes, importlib.resources
2
+
3
+
4
+ # import portaudio binary on MacOS
5
+ if platform.system() == "Darwin":
6
+ try:
7
+ with importlib.resources.path("CreativePython.bin", "libportaudio.2.dylib") as libpath:
8
+ ctypes.CDLL(str(libpath))
9
+ except Exception:
10
+ pass
@@ -9,6 +9,7 @@
9
9
  from gui import *
10
10
  from math import *
11
11
  from random import *
12
+ from timer import *
12
13
 
13
14
  # universe parameters
14
15
  universeWidth = 1000 # how wide the display
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CreativePython
3
- Version: 0.1.8
3
+ Version: 0.2.0
4
4
  Summary: A Python-based software environment for developing algorithmic art projects.
5
5
  Author-email: "Dr. Bill Manaris" <manaris@cofc.edu>, Taj Ballinger <ballingertj@g.cofc.edu>, Trevor Ritchie <ritchiets@g.cofc.edu>
6
6
  License: MIT License
@@ -25,6 +25,24 @@ License: MIT License
25
25
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
26
  SOFTWARE.
27
27
 
28
+ ================================================================================
29
+ THIRD PARTY COMPONENTS
30
+ ================================================================================
31
+
32
+ This software includes PENCIL, a derivative work based on IDLE (Integrated
33
+ Development and Learning Environment), which is part of Python and distributed
34
+ under the Python Software Foundation License Version 2.
35
+
36
+ IDLE Components:
37
+ - Location: resources/pencillib/
38
+ - Copyright: © 2001-2023 Python Software Foundation. All Rights Reserved.
39
+ - License: Python Software Foundation License Version 2 (see LICENSE-PSF.txt)
40
+ - Original Authors: Guido van Rossum and Python development team
41
+ - PENCIL Modifications: Copyright © 2025 Dr. Bill Manaris
42
+
43
+ For complete IDLE/PENCIL licensing information and contributor credits, see:
44
+ - LICENSE-PSF.txt (Python Software Foundation License)
45
+ - resources/pencillib/CREDITS.txt (Complete contributor list)
28
46
  Project-URL: Homepage, https://jythonmusic.me
29
47
  Keywords: music,audio,midi,learning,algorithmic art,algoart
30
48
  Classifier: Programming Language :: Python :: 3
@@ -33,6 +51,7 @@ Classifier: License :: OSI Approved :: MIT License
33
51
  Requires-Python: >=3.9
34
52
  Description-Content-Type: text/markdown
35
53
  License-File: LICENSE
54
+ License-File: LICENSE-PSF
36
55
  Requires-Dist: setuptools>=69.0
37
56
  Requires-Dist: tinysoundfont>=0.3.6
38
57
  Requires-Dist: osc4py3>=1.0.8
@@ -69,17 +88,7 @@ Before installing CreativePython, you will need:
69
88
 
70
89
  # Beginner Installation (Windows/MacOS)
71
90
 
72
- 1. Download the [CreativePython Setup Script](https://www.dropbox.com/scl/fi/253bvfqsf0ij3rmza88q5/_creativepythonSetup.py?rlkey=iu4y4u8pujltgfx6kbjmodu9m&dl=1).
73
-
74
- 2. Open `creativePythonSetup.py` with IDLE, Python's Integrated Development Learning Environment.
75
-
76
- 3. From the IDLE toolbar, select `Run`, then `Run Module`.
77
-
78
- 4. CreativePython will check for its requirements on your system, download any missing requirements, and install its libraries.
79
-
80
- 5. If you see `[CreativePython Setup]: CreativePython installed successfully.`, you're all done! You're ready to start using CreativePython in your Python code.
81
-
82
- - To test the installation, try out the **playNote** example below!
91
+ COMING SOON
83
92
 
84
93
  # Custom Installation
85
94
 
@@ -163,10 +172,35 @@ After you do, you should hear a single C4 half-note.
163
172
 
164
173
  ### CMake configuration failed
165
174
 
166
- Some of CreativePython's libraries need to compile C++ code during installation.
175
+ Some of CreativePython's libraries may need to compile C++ code during installation.
167
176
 
168
177
  - On Windows, download and install [Visual Studio Build Tools 2022](https://visualstudio.microsoft.com/downloads/). In the Visual Studio installer, make sure "Desktop Development with C++" is checked.
169
178
 
170
179
  - On MacOS, you can download and install [XCode from the App Store](https://apps.apple.com/us/app/xcode/id497799835?mt=12).
171
180
 
172
181
  Restart your computer, then try installing CreativePython again.
182
+
183
+ # PENCIL Editor
184
+
185
+ CreativePython is also available as PENCIL, a customized Python IDE based on IDLE (Python's Integrated Development and Learning Environment).
186
+
187
+ ## Attribution
188
+
189
+ 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.
190
+
191
+ **Original IDLE Credits:**
192
+ - Copyright © 2001-2023 Python Software Foundation. All Rights Reserved.
193
+ - See `resources/pencillib/CREDITS.txt` for complete IDLE contributor list.
194
+
195
+ **PENCIL Modifications:**
196
+ - Copyright © 2025 Dr. Bill Manaris
197
+ - Modified for use with CreativePython
198
+ - Includes custom "JEM" theme and keymap defaults
199
+ - User configuration stored in `~/.pencilrc/`
200
+
201
+ ## Licenses
202
+
203
+ - **CreativePython**: MIT License (see `LICENSE`)
204
+ - **IDLE/PENCIL**: Python Software Foundation License Version 2 (see `LICENSE-PSF.txt`)
205
+
206
+ For complete licensing information, see the `LICENSE` and `LICENSE-PSF.txt` files in this distribution.
@@ -1,4 +1,5 @@
1
1
  LICENSE
2
+ LICENSE-PSF
2
3
  MANIFEST.in
3
4
  README.md
4
5
  pyproject.toml
@@ -13,8 +14,6 @@ src/osc.py
13
14
  src/timer.py
14
15
  src/zipf.py
15
16
  src/CreativePython/__init__.py
16
- src/CreativePython/_creativepythonSetup.py
17
- src/CreativePython/_soundfont.py
18
17
  src/CreativePython.egg-info/PKG-INFO
19
18
  src/CreativePython.egg-info/SOURCES.txt
20
19
  src/CreativePython.egg-info/dependency_links.txt
@@ -105,4 +104,5 @@ src/CreativePython/examples/zipfMetrics.py
105
104
  src/CreativePython/resources/.DS_Store
106
105
  src/CreativePython/resources/550973__luizguilherme_a__clean-guitarr-riff.mp3
107
106
  src/CreativePython/resources/chopper.jpg
108
- src/CreativePython/resources/de-brazzas-monkey.jpg
107
+ src/CreativePython/resources/de-brazzas-monkey.jpg
108
+ src/bin/libportaudio.2.dylib
@@ -0,0 +1,2 @@
1
+ CreativePython
2
+ bin