{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: POSIX", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3 :: Only" ], "description": ".. role:: bash(code)\n :language: bash\n\n.. role:: python(code)\n :language: python\n\n=============\npycontextfree\n=============\n\n.. image:: https://api.travis-ci.org/undertherain/pycontextfree.svg?branch=master\n :target: https://travis-ci.org/undertherain/pycontextfree\n :alt: build status from Travis CI\n\n.. image:: https://coveralls.io/repos/github/undertherain/pycontextfree/badge.svg?branch=master\n :target: https://coveralls.io/github/undertherain/pycontextfree?branch=master\n\n.. image:: https://badge.fury.io/py/contextfree.svg\n :target: https://badge.fury.io/py/contextfree\n :alt: pypi version\n\n`CFDG\n`_-inspired cairo-based pythonic generative art tool\n\nHere is an example of simple code producing stochastic fractal tree:\n\n.. code:: python\n\n from contextfree.contextfree import *\n\n @check_limits\n def branch():\n line(0,1)\n with translate(0,0.9):\n with scale(0.7 + rnd(0.15)):\n with color(alpha=0.95):\n with rotate(-0.3 + rnd(0.3)):\n branch()\n with rotate(0.3 + rnd(0.3)):\n branch()\n\n init(canvas_size=(300,300), background_color=\"#FFFFFF\")\n with scale(3):\n branch()\n\n display_ipython()\n\nHere is the output:\n\n.. image:: https://user-images.githubusercontent.com/1635907/30413703-9e585f54-995a-11e7-8566-bdded386be8d.png\n :alt: [tree_example]\n :align: center\n\nCheck examples folder for more fun stuff. \n\nHow do I get set up?\n--------------------\n\n* ``pip3 install contextfree`` for latest stable release\n* ``pip3 install git+https://github.com/undertherain/pycontextfree.git`` for recent development version\n* Python 3.6 or later is required\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/undertherain/pycontextfree", "keywords": "generative,art,graphics", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "contextfree", "package_url": "https://pypi.org/project/contextfree/", "platform": "", "project_url": "https://pypi.org/project/contextfree/", "project_urls": { "Homepage": "https://github.com/undertherain/pycontextfree" }, "release_url": "https://pypi.org/project/contextfree/0.2.3/", "requires_dist": [ "cairocffi", "numpy" ], "requires_python": ">=3.5", "summary": "cfdg-inspired cairo-based pythonic generative art framework", "version": "0.2.3" }, "last_serial": 4308501, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "c599b3513a230e67ff359f189d3e4f69", "sha256": "e14b5561f2f5b1ca9d3e0492aba4412fe539899534b71e010304a42c1b142182" }, "downloads": -1, "filename": "contextfree-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c599b3513a230e67ff359f189d3e4f69", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4367, "upload_time": "2017-09-10T05:22:53", "url": "https://files.pythonhosted.org/packages/1a/f7/531f2eda8be9dffcd1a1e69b25133140de1f64cfd6c3277000ad0933e1e8/contextfree-0.1.1-py3-none-any.whl" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "bfe3194ac848d9a9d98d5f98f18ed6db", "sha256": "51e553ffe5c4c8406c91f0433bb0d0275afdb3911f26c9808b95d4896f26dd64" }, "downloads": -1, "filename": "contextfree-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "bfe3194ac848d9a9d98d5f98f18ed6db", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5130, "upload_time": "2017-09-10T15:29:38", "url": "https://files.pythonhosted.org/packages/55/27/cde92e5ae806a14ce8381a92084c714551cc23d36bcbb49040a0db5e819c/contextfree-0.1.2-py3-none-any.whl" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "a3f9872d4ae70ae5b2604c8cdd1a811a", "sha256": "f3253a04e05fb620f0352c68627ca82628c0ac18b7ea9a2e40ab90fc98408988" }, "downloads": -1, "filename": "contextfree-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "a3f9872d4ae70ae5b2604c8cdd1a811a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5230, "upload_time": "2017-09-12T05:17:03", "url": "https://files.pythonhosted.org/packages/04/81/01b473cae2469f66ad40e071841b9d33b173cb7839e2f3f2d562afe28fd4/contextfree-0.1.3-py3-none-any.whl" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "5f331ef89896cd3f18499cb26af114df", "sha256": "3249d1be015e51a9a38a5f229c1fd5672e2a1fa81c5cb7c071e7afac991d7b94" }, "downloads": -1, "filename": "contextfree-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "5f331ef89896cd3f18499cb26af114df", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6392, "upload_time": "2017-09-21T08:00:20", "url": "https://files.pythonhosted.org/packages/9b/42/757110c8026b92e8553ea8073817d0dac82f79822e39fb9cd4a9f760e9d1/contextfree-0.1.4-py3-none-any.whl" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "b133caad7c24e91abcdd288e4da59f2a", "sha256": "499f7f51e49fbb9f1b4e1b9658e4c12225498b44fa9ca7e149fed108d3daf11a" }, "downloads": -1, "filename": "contextfree-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "b133caad7c24e91abcdd288e4da59f2a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5890, "upload_time": "2017-10-19T13:59:43", "url": "https://files.pythonhosted.org/packages/0c/6d/9a5d5e738fc2030f01308c1f922d84f3e442419f4c288d9e2dc4aacd974d/contextfree-0.1.5-py3-none-any.whl" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "0724afbab26303485855882ae7aa14d3", "sha256": "dbfd26815648636fb14a2568fe7680103fabb1f60d1d7be43d7efad825e24755" }, "downloads": -1, "filename": "contextfree-0.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "0724afbab26303485855882ae7aa14d3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5909, "upload_time": "2018-01-13T14:32:19", "url": "https://files.pythonhosted.org/packages/17/b2/02e5f87f37125b4203fc60d19eab8ff4faa9c7bb7898fc67b5573fb74e3a/contextfree-0.1.6-py3-none-any.whl" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "764587efa7a47d4f26379d087bb603b0", "sha256": "27a664ebc22a30d88ca6e90bbb4cfed79cde848b573d40f01df53fb325cda427" }, "downloads": -1, "filename": "contextfree-0.1.7-py3-none-any.whl", "has_sig": false, "md5_digest": "764587efa7a47d4f26379d087bb603b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5922, "upload_time": "2018-01-31T01:07:32", "url": "https://files.pythonhosted.org/packages/77/ef/67e18aad0c91ff47b84420508144771f9dac17de862657ccb2b9b95ef9fc/contextfree-0.1.7-py3-none-any.whl" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "a6ae7b9f2d7785c561cc639c70c92708", "sha256": "86b4f4126b60be21b5fb43cf86a06b3e8e42969758d56640d195f6bd13b894f8" }, "downloads": -1, "filename": "contextfree-0.1.9-py3-none-any.whl", "has_sig": false, "md5_digest": "a6ae7b9f2d7785c561cc639c70c92708", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 6725, "upload_time": "2018-09-02T22:08:17", "url": "https://files.pythonhosted.org/packages/e9/8a/69b8bb4cb6efc70c75692e7cae5ab1e059369a3a8ed01814f5eda1667b43/contextfree-0.1.9-py3-none-any.whl" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "46e0f44cfb7a4f86a35493b3939d6ac2", "sha256": "a72aa528669e4a52db7a9611c178e5dd9b36ab9b851aeade40afd8d300365227" }, "downloads": -1, "filename": "contextfree-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "46e0f44cfb7a4f86a35493b3939d6ac2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 7221, "upload_time": "2018-09-09T14:01:35", "url": "https://files.pythonhosted.org/packages/3a/06/8b90a44f5c2207aca2329f4bfbcf851c2b6f7d3c59914120d99b7482b952/contextfree-0.2.0-py3-none-any.whl" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "ccef2bbacab9ebb96e83eb338844844a", "sha256": "f6cbf4b71a37f7f6ce76046021b6095e4f7423e303b69e86e2231411fe948943" }, "downloads": -1, "filename": "contextfree-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "ccef2bbacab9ebb96e83eb338844844a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 7538, "upload_time": "2018-09-10T01:27:41", "url": "https://files.pythonhosted.org/packages/12/5f/8f8b1cab49d7d1875e5687d2b9b99e27ea98505c4b2061a77124a1ebd84e/contextfree-0.2.1-py3-none-any.whl" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "92149c568f2a88481b9d622c060ebcb5", "sha256": "41b0e9d73d1df2589411ec9cfdf4e3b080b5b7460c5758587bfb5167e39c4aa8" }, "downloads": -1, "filename": "contextfree-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "92149c568f2a88481b9d622c060ebcb5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 7612, "upload_time": "2018-09-14T07:21:12", "url": "https://files.pythonhosted.org/packages/6b/81/a6e82ec4cd4f3dd6ba343bbf2898d08d39e4ae5c89caadde6aecfe5cb205/contextfree-0.2.2-py3-none-any.whl" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "5545b31425e7a6fbb27234de617edddd", "sha256": "517516247d803c6647e6a767135723fbe6912db45f5d711c831bef90af5a76f7" }, "downloads": -1, "filename": "contextfree-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "5545b31425e7a6fbb27234de617edddd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 8407, "upload_time": "2018-09-25T13:45:50", "url": "https://files.pythonhosted.org/packages/c3/95/eee670254cddb549fcdfb0ed0dbbabbaaa149d57ac1bf57cc4b9e176e898/contextfree-0.2.3-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5545b31425e7a6fbb27234de617edddd", "sha256": "517516247d803c6647e6a767135723fbe6912db45f5d711c831bef90af5a76f7" }, "downloads": -1, "filename": "contextfree-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "5545b31425e7a6fbb27234de617edddd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 8407, "upload_time": "2018-09-25T13:45:50", "url": "https://files.pythonhosted.org/packages/c3/95/eee670254cddb549fcdfb0ed0dbbabbaaa149d57ac1bf57cc4b9e176e898/contextfree-0.2.3-py3-none-any.whl" } ] }