{"id":13961383,"url":"https://github.com/martinmcbride/generativepy","last_synced_at":"2025-12-30T08:05:33.837Z","repository":{"id":47178051,"uuid":"84751316","full_name":"martinmcbride/generativepy","owner":"martinmcbride","description":"Library for creating generative art and maths animations","archived":false,"fork":false,"pushed_at":"2024-03-02T20:45:01.000Z","size":7058,"stargazers_count":91,"open_issues_count":1,"forks_count":9,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-04-04T10:00:45.158Z","etag":null,"topics":["animation-library","generative-art","mathematics","python","python3","video-processing"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/martinmcbride.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-03-12T19:29:12.000Z","updated_at":"2024-04-23T12:09:56.373Z","dependencies_parsed_at":"2023-02-13T02:01:54.812Z","dependency_job_id":"eff8d896-eb64-4bfb-ab01-0f3088562877","html_url":"https://github.com/martinmcbride/generativepy","commit_stats":{"total_commits":264,"total_committers":4,"mean_commits":66.0,"dds":"0.030303030303030276","last_synced_commit":"a71eafff71dad3729f8e6fa376ca09aaf578b144"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/martinmcbride%2Fgenerativepy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/martinmcbride%2Fgenerativepy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/martinmcbride%2Fgenerativepy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/martinmcbride%2Fgenerativepy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/martinmcbride","download_url":"https://codeload.github.com/martinmcbride/generativepy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226878797,"owners_count":17696720,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["animation-library","generative-art","mathematics","python","python3","video-processing"],"created_at":"2024-08-08T17:01:05.875Z","updated_at":"2025-12-13T20:02:41.068Z","avatar_url":"https://github.com/martinmcbride.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# generativepy\n\nGenerative art and graphing library for creating images and animations.\n\n## Version 24.11 notes\n \n* Fix bug is extents for `of_xy_function`.\n* Axes.transform_from_graph can accept a point or a sequence of points.\n* Allow axes labels to be positioned around edges of graph if required. \n\n## Version 24.04 notes\n\n3D drawing is likely to change in a future release. The rest of the library is reasonably stable. \n\n* Most shapes can now optionally accept `FillParameters` and `StrokeParameters` to control fill and stroke styles. This makes it easier to share styles amongst different objects.\n* Add scatter plots, including stalk and connected styles.\n* Add a basic `Vector3` implementation to `math` module. \n* New `Markers` class to rationalise line markers (ticks, paraticks, parallel markers), adding new markers and allowing position to be controlled.\n* New `overlay_nparrays` function in `nparray` module allows two images to be overlaid, treating pure white as transparent.\n* Add 3D charts (z against xy) using `povray`. Also added `complex` module to `genpygoodies` to help with plotting complex graphs\n* Add `povray` module with capability of drawing 3D shapes using vapory module.\n* `Plot` now has a `close` parameter that creates a polygon area based on a section of the curve that can then be filled. This can be the area under the curve, or above the curve, or any area created be extending the curve with additional points.\n* Update docstrings of all modules to support autogenerated documentation on generativepy.com\n\n## Usage\n\ngenerativepy is a library rather an application. It provides useful functions and example code that allow you to\ncreate images and videos by writing simple Python scripts.\n\nThe library requires:\n\n* [pycairo](https://pycairo.readthedocs.io/en/latest/index.html).\n* NumPy.\n* Pillow.\n* easy_vector.\n* moderngl (only required for 3D imaging).\n* MoviePy\n* Command line application gifsicle (only needed for GIF creation).\n* Commandline applications latex and divpng\n\nMain functionality:\n\n* A simple framework for creating images, image sequences, and gifs, using pycairo.\n* Support for bitmap processing using PIL and NumPy.\n* Colour module that supports RGB, HSL and CSS colours, transparency, lerping, colormaps.\n* A simple tweening module to help with animation.\n* Geometry module for drawing shapes.\n* A graphing library for plotting 2D functions.\n* MovieBuilder supports creating video files from separate scenes.\n* Latex formula rendering\n* 3D geometry module using moderngl.\n* Math modules for vectors, matrices and abstract shapes. \n\n## Website\n\nVisit [pythoninformer.com](http://www.pythoninformer.com/generative-art/) for details:\n\n* [generativepy reference](http://www.pythoninformer.com/generative-art/generativepy/).\n* [generativepy tutorials](http://www.pythoninformer.com/generative-art/generativepy-tutorial/).\n\nThere are also some art examples in the Generative Art section of [my blog](https://martinmcbride.org/).\n\nFor detailed information of pycairo see the [Computer graphics in Python](https://leanpub.com/computergraphicsinpython) ebook.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmartinmcbride%2Fgenerativepy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmartinmcbride%2Fgenerativepy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmartinmcbride%2Fgenerativepy/lists"}