{ "info": { "author": "David Omar Flores Ch\u00e1vez", "author_email": "david@davidomar.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Ginpar\n\n[](https://pypi.org/project/ginpar/)\n[](https://github.com/davidomarf/ginpar/actions?workflow=build)\n[](https://ginpar.readthedocs.io/en/stable/?badge=stable)\n\nGinpar is a **static content generator** for interactive P5.js sketches,\nawkwardly named after **Generative Interactive Parametrisable Canvases**.\n\nBy separating the primary development and the parametric experimentation,\nit allows you to stop thinking about code once your pieces have reached an\nacceptable level of complexity, freeing you to experiment in a GUI for the\nbrowser.\n\nFeatures:\n\n- Simple API to define the controllable variables in your sketch.\n- Easy to adapt existing sketches.\n- Easy replicability of each final result.\n- Index page to list all your sketches.\n\nCheck [ginpar-quickstar.netlify.com](https://ginpar-quickstart.netlify.com/) to\nsee how a site generated with Ginpar looks like.\n\nThe following Introduction is part of the [Ginpar Documentation][ginpar-docs] and\nmay be read at [Introduction][docs-intro]\n\n## Table of contents\n\n- [Introduction](#introduction)\n - [Prerequisites](#prerequisites)\n - [Installation](#installation)\n - [Quickstart](#quickstart)\n - [Initialization](#initialization)\n - [Creating new sketches](#creating-new-sketches)\n - [Adapting existing sketches](#adapting-existing-sketches)\n - [Specifying the parameters](#specifying-the-parameters)\n - [Serving & Building](#serving-&-building)\n- [Build with](#built-with)\n- [Versioning](#versioning)\n- [Contributors](#contributors)\n- [License](#license)\n\n## Introduction\n\nThis is a quick introductory documentation for the Ginpar static content\ngenerator.\n\nGinpar works similarly to other engines such as Jekyll, Hugo, or Pelican, but\nwith a narrower and deeper set of functionalities, since it's very specific in\nits task.\n\nThe two main objectives of Ginpar are:\n\n- Allowing artists to stop thinking about code when experimenting with the\n parameters that control the results of the artwork, achieving a **quicker\n feedback loop.**\n\n- Making interactive websites to share the artist's work, letting users play\n with the same GUI.\n\n\nThe basic structure of a Ginpar project consists of a ``config.yaml`` file,\nand a ``sketches`` directory.\n\nIt's easy to adapt your existing sketches to work with Ginpar. In fact, the\nonly **necessary** step is to add ``.parent(\"artwork-container\")`` to the\n``createCanvas()`` call.\n\nBut to fully take advantage of Ginpar ---that is, the interactive sketch with\ncustom parameters---, you need to create a ``data.yaml`` file. Check \n[Adapting existing sketches](#adapting-existing-sketches) and \n[Specifying the parameters](#specifying-the-parameters).\n\n**To be fully sure of how easy is to use Ginpar, check this\n[example][ginpar-quickstart] together with its \n[source code][quickstart-repo].** \nYou can ignore ``requirements.txt``, ``runtime.txt``, ``netlify.toml``,\n``README.md``, and ``.gitignore``.\n\n### Prerequisites\n\nFor now Ginpar only runs using Python >= 3.6.\nFuture versions will add compatibility with Python 2.\n\n### Installation\n\nThe easiest way to install the latest version of Ginpar is using pip:\n\n pip install ginpar\n\nTo make sure it's installed and working, run:\n\n ginpar --version\n\n### Quickstart\n\nGinpar has an example project ready for installation, it contains the default\nproject structure and a sketch example.\n\nIf you're new to static content generators, this may be the best way to start.\n\n ginpar quickstart\n\nThis will create the following directory structure::\n\n .\n \u251c\u2500\u2500 config.yaml\n \u2514\u2500\u2500 sketches/\n \u251c\u2500\u2500 circles/\n \u2502 \u251c\u2500\u2500 sketch.js\n \u2502 \u2514\u2500\u2500 data.yaml\n \u2514\u2500\u2500 ...\n\nTo build the project and start a server, run:\n\n cd quickstart\n ginpar serve\n\nAnd the project will be live in [localhost:8080](localhost:8080)\n\nNow, you can start to modify the contents of ``config.yaml`` and \n``sketches/``.\n\nNext, you should read [Creating new sketches](#creating-new-sketches),\nor [Serving & Building](#serving-building).\n\n### Initialization\n\nAlternatively, if you want to start a new project without importing anything\nextra, run:\n\n ginpar init\n\nThis will prompt you for the values to build your configuration file and then\ncreate the project using those values.\n\nWith this command, you may configure things like the destination and source\ndirectories (``public`` and ``sketches`` by default).\n\nCheck [ginpar init][ginpar-init] or run ``ginpar init --help`` for more\ninformation.\n\n### Creating new sketches\n\nGinpar has a handy command to start new projects with some configuration\nalready set:\n\n ginpar new [SKETCH]\n\nThis will create a new sketch inside your predefined source directory.\nYou can set the name when running the command, but it's optional.\n\nCheck [cli:ginpar new][ginpar-new] or run ``ginpar new --help`` for more\ninformation.\n\nNow, you must be [specifying the parameters](#specifying-the-parameters).\n\n### Adapting existing sketches\n\nFor Ginpar to build the interactive page, you'll need to add some modifications\nto your sketch code.\n\n#### Adding it to the list of sketches\n\nFirst, make your sketch detectable for Ginpar:\n\n1. Create a directory ``my-sketch/`` inside ``sketches/``.\n1. Copy your existent sketch script inside ``my-sketch`` and rename it to\n ``sketch.js``.\n1. Create a ``data.yaml`` file.\n\nYou should end with a structure like this::\n\n .\n \u2514\u2500\u2500 sketches/\n \u2514\u2500\u2500 my-sketch/\n \u251c\u2500\u2500 sketch.js\n \u2514\u2500\u2500 data.yaml\n\n#### Making your sketch compatible with Ginpar\n\nIn your ``createCanvas`` instruction, add ``.parent(\"artwork-container\")``.\n\nNow, you must be [specifying the parameters](#specifying-the-parameters).\n\n### Specifying the parameters\n\nEach sketch is a directory that contains two files: ``sketch.js`` and\n``data.yaml``. The ``data.yaml`` file is where the parameters specification\ntakes place.\n\nTo create a parameters list, add this to your data file:\n\n ```yaml\n---\ndate: 2019-11-04\n# ... other data\n# ...\n\n# Key that contains a list of parameters\nparams:\n\n # The name of the parameter must be the key of the element\n # It must match a variable in your sketch.js file\n - MY_VARIABLE:\n\n # Ginpar parameters definition keys. All optional.\n # For a full list check the API\n randomizable: True\n name: My displayed variable name\n\n # HTML valid attributes\n attrs:\n type: number\n value: 30\n step: 1\n min: 0\n max: 100\n```\n\nOnce parsed, Ginpar will produce:\n\n- A form containing each of the items in the ``parameters`` list:\n ```html\n
\n ```\n\n- A JS code fragment to update each of the parameters using the form values:\n ```JS\n\n function updateVars() {\n MY_VARIABLE = document.getElementByID(\"my-variable\").value;\n // More variable updates. One for each params element.\n }\n ```\n\nIf the type of the input is a ``number``, Ginpar will parse it before\nassigning it to the variable.\n\n---\n\nTo use this parameters inside your sketch, just use the same name you used as\nkey:\n\n```js\nconsole.log(MY_VARIABLE)\n// ==> 30\n```\n\n### Serving & Building\n\nGinpar has two different commands to build your site:\n\n ginpar build\n\nWill build your site into the ``build_directory`` path, which by default is\n``public``.\n\n ginpar serve\n\nWill start a new server on ``localhost:8000`` and open your default web\nbrowser. You can specify the port with ``--port``.\n\nCheck [ginpar serve][ginpar-serve] and [ginpar build][ginpar-build], or run\n``ginpar serve --help``, ``ginpar build --help`` to see the full list of\noptions and arguments available.\n\n---\n\n## Built With\n\n- [Jinja2][jinja] - Templating language.\n- [Click][click] - CLI Tool composer.\n- [PyYAML][pyyaml] - YAML framework.\n- [Livereload][livereload] - Hot reloading server.\n\n## Versioning\n\nWe use [SemVer][semver] for versioning. For the versions\navailable, see the\n[tags on this repository](https://github.com/davidomarf/ginpar/tags).\n\n## Contributors\n\n- **David Omar** - _Initial work_ -\n [davidomarf](https://github.com/davidomarf)\n\nSee also the list of\n[contributors](https://github.com/davidomarf/ginpar/contributors)\nwho participated in this project.\n\n## License\n\nThis project is licensed under the MIT License - see the\n[LICENSE.md](LICENSE) file for details\n\n[semver]: semver.org\n[jinja]: https://jinja.palletsprojects.com/\n[click]: https://click.palletsprojects.com/\n[pelican]: https://getpelican.com\n[algo]: https://github.com/davidomarf/gen.algorithms\n[ginpar-docs]: https://ginpar.readthedocs.io\n[docs-intro]: https://ginpar.readthedocs.io/en/latest/intro.html\n[ginpar-serve]: https://ginpar.readthedocs.io/en/latest/cli.html#ginpar-serve\n[ginpar-build]: https://ginpar.readthedocs.io/en/latest/cli.html#ginpar-build\n[ginpar-init]: https://ginpar.readthedocs.io/en/latest/cli.html#ginpar-init\n[ginpar-new]: https://ginpar.readthedocs.io/en/latest/cli.html#ginpar-new\n[pyyaml]:https://pyyaml.org\n[livereload]: https://github.com/lepture/python-livereload\n[ginpar-quickstart]: https://ginpar-quickstart.netlify.com/\n[quickstart-repo]:https://github.com/davidomarf/ginpar-quickstart\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/davidomarf/ginpar", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "ginpar", "package_url": "https://pypi.org/project/ginpar/", "platform": "", "project_url": "https://pypi.org/project/ginpar/", "project_urls": { "Homepage": "https://github.com/davidomarf/ginpar" }, "release_url": "https://pypi.org/project/ginpar/1.0.1/", "requires_dist": [ "jinja2 (>=2.7)", "pyyaml", "click", "livereload" ], "requires_python": "", "summary": "A static content generator for interactive and parametrisable p5.js canvases.", "version": "1.0.1", "yanked": false, "yanked_reason": null }, "last_serial": 6096594, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "8c723ee4389bb025d7d48efbd6420e9a", "sha256": "a5b25d9d152929424818e4db6a8c75b3a9e0214c622b86b500cc659641f6ee86" }, "downloads": -1, "filename": "ginpar-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8c723ee4389bb025d7d48efbd6420e9a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4107, "upload_time": "2019-10-04T08:44:40", "upload_time_iso_8601": "2019-10-04T08:44:40.536918Z", "url": "https://files.pythonhosted.org/packages/34/5d/5d3f9f3ba34156846d8eec8f4b30ba3f7df8cf7459a750114f1cc1c9beb6/ginpar-0.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4cbaafbb4f6f452b35f28b24782b5551", "sha256": "e8529b9464f23508045094cf31670b5dbbb66fbdaf21794538dd582df8df11e9" }, "downloads": -1, "filename": "Ginpar-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "4cbaafbb4f6f452b35f28b24782b5551", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3972, "upload_time": "2019-10-04T08:26:52", "upload_time_iso_8601": "2019-10-04T08:26:52.451735Z", "url": "https://files.pythonhosted.org/packages/53/7a/89827dfa79751a216d70a1096fbf46eb7579545258962bbe9e86b5a05683/Ginpar-0.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "e501206cd280544d81409ce01e277d05", "sha256": "4f7163abb3507b3871800e505509d1849738166ebeba53f85d01928193949b98" }, "downloads": -1, "filename": "ginpar-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e501206cd280544d81409ce01e277d05", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4106, "upload_time": "2019-10-04T08:47:38", "upload_time_iso_8601": "2019-10-04T08:47:38.158992Z", "url": "https://files.pythonhosted.org/packages/09/e6/d9980d92eccf9321f01619422dc26b7ad67231fb072c3e7cdca7f312ca26/ginpar-0.1.1-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "b6762b094d2e29e78615a98180c4f71e", "sha256": "873ee1fd284331b23315ade7298aa654f21d4be1c8516e9842c4d14a5e2b7bd4" }, "downloads": -1, "filename": "ginpar-0.1.2-py3.7.egg", "has_sig": false, "md5_digest": "b6762b094d2e29e78615a98180c4f71e", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 14949, "upload_time": "2019-10-06T03:10:40", "upload_time_iso_8601": "2019-10-06T03:10:40.419580Z", "url": "https://files.pythonhosted.org/packages/44/ae/8ffd6baffe62e6675f8f4ab03602d7cfd804615132821bf02fb117f63e32/ginpar-0.1.2-py3.7.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a959bfcb3b92d56f1b24da5bfe65722a", "sha256": "b7c37d011bb5a264e9527524b1b11999ce808fdd05eb7d2d92505335fec9496b" }, "downloads": -1, "filename": "ginpar-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "a959bfcb3b92d56f1b24da5bfe65722a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9703, "upload_time": "2019-10-06T03:10:38", "upload_time_iso_8601": "2019-10-06T03:10:38.826808Z", "url": "https://files.pythonhosted.org/packages/6f/3f/cc5df5990ba8176cf820208183ac2db00fd63943c5907a528d4847f87411/ginpar-0.1.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "62c9af3f5939e7b917e1895e7563581b", "sha256": "b545d52b1571b1cf4be9e1410d36290060f654dbfc05410e466859041c521845" }, "downloads": -1, "filename": "ginpar-0.1.2.tar.gz", "has_sig": false, "md5_digest": "62c9af3f5939e7b917e1895e7563581b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4664, "upload_time": "2019-10-06T03:10:41", "upload_time_iso_8601": "2019-10-06T03:10:41.662468Z", "url": "https://files.pythonhosted.org/packages/73/92/20a7c95b293c9d7e4e74aef75efd82bfdd4607461df136aa7839a06d88e0/ginpar-0.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "9f7af90f446ca2e5ac7753d6a27c67fd", "sha256": "b0159e7977249e701dc1c114224fefbc1001dadbf188feb5d64fffc84d8b6c60" }, "downloads": -1, "filename": "ginpar-0.2.0-py3.7.egg", "has_sig": false, "md5_digest": "9f7af90f446ca2e5ac7753d6a27c67fd", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 23409, "upload_time": "2019-10-14T23:25:45", "upload_time_iso_8601": "2019-10-14T23:25:45.033507Z", "url": "https://files.pythonhosted.org/packages/ca/49/ac55000007a8086d5cdcfaa918501b5cee72eea7fd597b608a69cb842233/ginpar-0.2.0-py3.7.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "16ee7df788e069d50b37e6569abae588", "sha256": "e73201d9d846b547fee4377a3f8fde579f576f6101be049a1cc2239333b9bcbb" }, "downloads": -1, "filename": "ginpar-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "16ee7df788e069d50b37e6569abae588", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10372, "upload_time": "2019-10-07T23:42:40", "upload_time_iso_8601": "2019-10-07T23:42:40.952869Z", "url": "https://files.pythonhosted.org/packages/cf/cc/f512fa05b72cc1aa18e7d3e101ff9ab40d467877d30107f98846fae18b85/ginpar-0.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "331b3006e07ad3183b64d033dd978a15", "sha256": "b56dc1e7c43ff95c503b55aa56fd62c565076453125fb7c39853353661cffa87" }, "downloads": -1, "filename": "ginpar-0.2.0.tar.gz", "has_sig": false, "md5_digest": "331b3006e07ad3183b64d033dd978a15", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8516, "upload_time": "2019-10-07T23:42:42", "upload_time_iso_8601": "2019-10-07T23:42:42.583490Z", "url": "https://files.pythonhosted.org/packages/7b/f8/b3346a8db843b62887b1e7bedd89dda577093ae5c8111da53f7e19001e58/ginpar-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "b2a635e61d02a37ad5754eb6c1bb7e5a", "sha256": "e07551f8d25205ec8f170a65f1b2f104881e38ea3a9c954fdbdad7e50f41199f" }, "downloads": -1, "filename": "ginpar-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b2a635e61d02a37ad5754eb6c1bb7e5a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18881, "upload_time": "2019-10-14T23:25:43", "upload_time_iso_8601": "2019-10-14T23:25:43.014789Z", "url": "https://files.pythonhosted.org/packages/57/e8/e9d36e94ec2bcbeb6af714fc65d0868b2b52c49400b7e94868b4cee71424/ginpar-0.3.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c5d0e7d23eea5c02af5de9e660ed4aea", "sha256": "aa949964258b49cf38ddded62643a5491de26499a009669a120814040e997a23" }, "downloads": -1, "filename": "ginpar-0.3.0.tar.gz", "has_sig": false, "md5_digest": "c5d0e7d23eea5c02af5de9e660ed4aea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15781, "upload_time": "2019-10-14T23:25:46", "upload_time_iso_8601": "2019-10-14T23:25:46.962785Z", "url": "https://files.pythonhosted.org/packages/c6/64/5a51b07ef9f6865a09855630fdc4f5ea70176ecd230edd41d74220201957/ginpar-0.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "e1dc1025e30327a89a7e5f56fd178a16", "sha256": "df3544c86bf080dab65db1204a49b8f69f5d96b2c07af67b2244f1e88b79bb77" }, "downloads": -1, "filename": "ginpar-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e1dc1025e30327a89a7e5f56fd178a16", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22858, "upload_time": "2019-10-17T05:29:30", "upload_time_iso_8601": "2019-10-17T05:29:30.931742Z", "url": "https://files.pythonhosted.org/packages/2a/3d/80d3bbd0d91d366da9d79a6e93af68d73e2a0d9fca6dacbcc9a49a388c66/ginpar-0.4.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e586f1b9dd6b6a11329442c109ccd761", "sha256": "9dd9e71105d071bac25fdf614c8058d85e980883c7ce2f901aea2612d61d55e4" }, "downloads": -1, "filename": "ginpar-0.4.0.tar.gz", "has_sig": false, "md5_digest": "e586f1b9dd6b6a11329442c109ccd761", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16123, "upload_time": "2019-10-17T05:29:33", "upload_time_iso_8601": "2019-10-17T05:29:33.075700Z", "url": "https://files.pythonhosted.org/packages/9d/23/8c43b601a539bbcbba3b03dfcf83bc2f5787a873a52e3824f7e4f9920ecf/ginpar-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "b3e619c88b406a5490acb0907c582dde", "sha256": "c3ac597359b30515893d09acb0fb1b1742989b7139b201d54bcffb4899960ed0" }, "downloads": -1, "filename": "ginpar-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b3e619c88b406a5490acb0907c582dde", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22856, "upload_time": "2019-10-17T05:32:26", "upload_time_iso_8601": "2019-10-17T05:32:26.215869Z", "url": "https://files.pythonhosted.org/packages/8c/e7/c9a27d8443bb5df3657c9265631eb4329d97f49058714b220d56fb0a63b4/ginpar-0.4.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "065f5f34ce0353d37d8b4a14fecadb29", "sha256": "e0c051b077da7943932cef294520de090da614a951b8d09b9c49eb872ff317f9" }, "downloads": -1, "filename": "ginpar-0.4.1.tar.gz", "has_sig": false, "md5_digest": "065f5f34ce0353d37d8b4a14fecadb29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16121, "upload_time": "2019-10-17T05:32:27", "upload_time_iso_8601": "2019-10-17T05:32:27.832927Z", "url": "https://files.pythonhosted.org/packages/0a/84/55ed23a8a14e2f2e28d76b048e42dd4ecd787ea9c04e6dd2ba038ca389d0/ginpar-0.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "39a9049d48f3c9e8e8f3b660f8ea087f", "sha256": "cabb385e723232b66eb955f7a9661715bee110bf859ac2593c244a459142ebc7" }, "downloads": -1, "filename": "ginpar-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "39a9049d48f3c9e8e8f3b660f8ea087f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 30748, "upload_time": "2019-10-19T01:29:07", "upload_time_iso_8601": "2019-10-19T01:29:07.329846Z", "url": "https://files.pythonhosted.org/packages/1a/bc/d012ca42fca48173d4925b47dd1a02944447e651aa6a62452ba8ac261bde/ginpar-0.5.0-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "0b716a60f9d4277041c6e770ce1ec330", "sha256": "9d0615bc0885a181309036824e1dc26356f13b973d3b4452cb2f8e2b8a19403f" }, "downloads": -1, "filename": "ginpar-0.6.0.tar.gz", "has_sig": false, "md5_digest": "0b716a60f9d4277041c6e770ce1ec330", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21354, "upload_time": "2019-10-24T06:02:50", "upload_time_iso_8601": "2019-10-24T06:02:50.410321Z", "url": "https://files.pythonhosted.org/packages/77/c4/a361bb2d401d152b6ee9de031480c1daf9f7c014b4ee238cd4dcce782081/ginpar-0.6.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "a82de9100b24941e1b0fdffa274fbd56", "sha256": "5293783e0a9ee63c63b6233d5492790e757ce09a6cbe3b557b4f133d08ec3d7e" }, "downloads": -1, "filename": "ginpar-0.6.2.tar.gz", "has_sig": false, "md5_digest": "a82de9100b24941e1b0fdffa274fbd56", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18463, "upload_time": "2019-10-24T22:05:52", "upload_time_iso_8601": "2019-10-24T22:05:52.635607Z", "url": "https://files.pythonhosted.org/packages/bb/73/25ae2a5f9583c383d4cb1670f9d26eeab6cbb8d452b5770de749f0a358f3/ginpar-0.6.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "4e451f72a028a9572ccdef8913792c5d", "sha256": "9121e3ac7b637963dca7cc7d20b860a57dac18ec3c38778c8bd2867cadbef5d1" }, "downloads": -1, "filename": "ginpar-0.7.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4e451f72a028a9572ccdef8913792c5d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22813, "upload_time": "2019-10-30T00:03:32", "upload_time_iso_8601": "2019-10-30T00:03:32.513303Z", "url": "https://files.pythonhosted.org/packages/f1/74/b4b8ddeba19c60b84715b5aae82549b2694f0c3b1f4aeb571e19f5abdcfe/ginpar-0.7.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a55ada4ad4f990bccb92782487b4df89", "sha256": "d4bc6d165e9f8b5746dbdc10a39006db5a8a227d71ea40d4ffb40472c45d7437" }, "downloads": -1, "filename": "ginpar-0.7.1.tar.gz", "has_sig": false, "md5_digest": "a55ada4ad4f990bccb92782487b4df89", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19339, "upload_time": "2019-10-30T00:03:34", "upload_time_iso_8601": "2019-10-30T00:03:34.028538Z", "url": "https://files.pythonhosted.org/packages/b1/16/446c8f79bb6a96b9878b3f25df12fc24172f57e7ad89acee59ddd8c42388/ginpar-0.7.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "15662e18a8f75d2eef066557d9b3af86", "sha256": "30c11b34f3b5e08a5c3be65a2fbd911fcdf4c6526bacb4329061e02cf71e105a" }, "downloads": -1, "filename": "ginpar-0.7.2-py3-none-any.whl", "has_sig": false, "md5_digest": "15662e18a8f75d2eef066557d9b3af86", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22816, "upload_time": "2019-10-30T00:23:13", "upload_time_iso_8601": "2019-10-30T00:23:13.018790Z", "url": "https://files.pythonhosted.org/packages/1b/9f/cde06a8a29d57875faf1f8a3461329ca711e9598fa2e0db5a25883b6b404/ginpar-0.7.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "61c78ce99e19ca1407c548cd34147cc4", "sha256": "4646351b5c82c6df7e5914ce284b93757ce1e6487d441810eba0f5ea166c0961" }, "downloads": -1, "filename": "ginpar-0.7.2.tar.gz", "has_sig": false, "md5_digest": "61c78ce99e19ca1407c548cd34147cc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19353, "upload_time": "2019-10-30T00:23:15", "upload_time_iso_8601": "2019-10-30T00:23:15.718590Z", "url": "https://files.pythonhosted.org/packages/25/1e/479a7a2833ec87afdd9db9ab6ff3c765c8ebd96e651aecc2b94bc6855d7f/ginpar-0.7.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.3": [ { "comment_text": "", "digests": { "md5": "c7ae267da7930c3cd616d182f3b9aabb", "sha256": "70b2818a6eb0f736ad0033dcef82a0233805115e9d46fac18d576b8ddcc7e35e" }, "downloads": -1, "filename": "ginpar-0.7.3-py3-none-any.whl", "has_sig": false, "md5_digest": "c7ae267da7930c3cd616d182f3b9aabb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22804, "upload_time": "2019-10-30T01:06:36", "upload_time_iso_8601": "2019-10-30T01:06:36.826800Z", "url": "https://files.pythonhosted.org/packages/a6/ba/970b256aa02db0525f1417d4cf02c64408654a31a4a8ce70d0dd34fcf4c3/ginpar-0.7.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e22c3f7ab894956bc7758b5b4160287a", "sha256": "13fcb4489921b10647581f07ee09734b4e3a14ce448201089020adfc2d3caa50" }, "downloads": -1, "filename": "ginpar-0.7.3.tar.gz", "has_sig": false, "md5_digest": "e22c3f7ab894956bc7758b5b4160287a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19353, "upload_time": "2019-10-30T01:06:40", "upload_time_iso_8601": "2019-10-30T01:06:40.456482Z", "url": "https://files.pythonhosted.org/packages/67/91/216ef5c708d32ce2e3a9bbc88b06eba1704e8ed50fa6345863a8d18ddb34/ginpar-0.7.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.4": [ { "comment_text": "", "digests": { "md5": "8915f3c4159fbafec6a7f1c1f06c33b4", "sha256": "8b07605036f69844c22bd3cc7df1468c9123218076a2bba47f8cb0f9e6460abc" }, "downloads": -1, "filename": "ginpar-0.7.4-py3-none-any.whl", "has_sig": false, "md5_digest": "8915f3c4159fbafec6a7f1c1f06c33b4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22896, "upload_time": "2019-10-30T05:52:34", "upload_time_iso_8601": "2019-10-30T05:52:34.205977Z", "url": "https://files.pythonhosted.org/packages/d4/0d/79a67861c3f4cec1bec40deab05a0670974439007691ca5aa7a533fb0fc0/ginpar-0.7.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "42745be3b9285279fa25d77cf795077a", "sha256": "cabbab7fb1fa3c0ec9b464e818d75633fd1f9411c15856f6028af82595d9fd19" }, "downloads": -1, "filename": "ginpar-0.7.4.tar.gz", "has_sig": false, "md5_digest": "42745be3b9285279fa25d77cf795077a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19442, "upload_time": "2019-10-30T05:52:39", "upload_time_iso_8601": "2019-10-30T05:52:39.174735Z", "url": "https://files.pythonhosted.org/packages/88/ca/2aa4e771f82c1f655a20fa2d8e17317e48b4649d0aa77cb66a74561e2242/ginpar-0.7.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "5d1adff3d8ed72ca591184329ce1c9cc", "sha256": "33a2805ad7aefcc871d12a8032f7835217d731b3488f430dd2447b64aa8ad1cd" }, "downloads": -1, "filename": "ginpar-0.8.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5d1adff3d8ed72ca591184329ce1c9cc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23053, "upload_time": "2019-11-03T09:28:21", "upload_time_iso_8601": "2019-11-03T09:28:21.578810Z", "url": "https://files.pythonhosted.org/packages/01/a9/03529c781819731cb7f2e6b4e6b02144c2748f43ead28c044bc1502638e3/ginpar-0.8.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "494e4bc1225bc5883679bcfbdc2deb46", "sha256": "a3c915aecb03896800b71ad43030c018ee85ecf8b4b29d1ef1a3381348252852" }, "downloads": -1, "filename": "ginpar-0.8.0.tar.gz", "has_sig": false, "md5_digest": "494e4bc1225bc5883679bcfbdc2deb46", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19579, "upload_time": "2019-11-03T09:28:23", "upload_time_iso_8601": "2019-11-03T09:28:23.368804Z", "url": "https://files.pythonhosted.org/packages/26/27/246674af926a9f6df8f5a641ecd893b8d24d015984bdb19f2dea5eb44a6b/ginpar-0.8.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "56e57c972bbc9cea9e27afaefd60a7a1", "sha256": "2c79964e3097f128f54e641a61a80ffc09642d084e0a342ececb206d6fe225ce" }, "downloads": -1, "filename": "ginpar-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "56e57c972bbc9cea9e27afaefd60a7a1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23037, "upload_time": "2019-11-04T03:06:14", "upload_time_iso_8601": "2019-11-04T03:06:14.630188Z", "url": "https://files.pythonhosted.org/packages/5d/b9/b361ed65e4044e81d4ab4a64b59bdcc539bd68bdf5a7f1a5d15e2ed607dd/ginpar-0.8.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c28581d377d59163bb92318e9a8846a7", "sha256": "f5125a0fd046a70eccd6464e3163f932d3f45ceadbfc558f5316b6f28182e0a3" }, "downloads": -1, "filename": "ginpar-0.8.1.tar.gz", "has_sig": false, "md5_digest": "c28581d377d59163bb92318e9a8846a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19580, "upload_time": "2019-11-04T03:06:20", "upload_time_iso_8601": "2019-11-04T03:06:20.501015Z", "url": "https://files.pythonhosted.org/packages/c4/bd/21fa492913166003e8ccc9e843ec19481cd6975486e316b4c8719ad7f25b/ginpar-0.8.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "7b91033fdf9dc9f203d6ce124555d6de", "sha256": "c5a9df2a7a85cbf350679e26fe7dabb9f9f64983e95bf737624a8f51b68acd25" }, "downloads": -1, "filename": "ginpar-0.8.2-py3-none-any.whl", "has_sig": false, "md5_digest": "7b91033fdf9dc9f203d6ce124555d6de", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23245, "upload_time": "2019-11-04T23:43:46", "upload_time_iso_8601": "2019-11-04T23:43:46.627606Z", "url": "https://files.pythonhosted.org/packages/c9/94/2dffcaab2e6d41d8f19f7cf79d9270cb4f38cc70ab231eae21fa3c14f7d4/ginpar-0.8.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "cfa6b3ea37ebbe093f3f9ab6ffd87476", "sha256": "b1f3762ee9c2d2e380bc1b84b41ee138ed28692e127f2bc1fb4f8bbb74b41f82" }, "downloads": -1, "filename": "ginpar-0.8.2.tar.gz", "has_sig": false, "md5_digest": "cfa6b3ea37ebbe093f3f9ab6ffd87476", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19883, "upload_time": "2019-11-04T23:43:48", "upload_time_iso_8601": "2019-11-04T23:43:48.725521Z", "url": "https://files.pythonhosted.org/packages/49/90/8b15f5fd5d99a32e0c167f5e151835570dab2d0a9d73fb7ae212911dc8a6/ginpar-0.8.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.3": [ { "comment_text": "", "digests": { "md5": "719bbf949c2add14e1212c019efd9d3d", "sha256": "9840ada538bc0854cb238ff81765031a6f07b8735003eb912b671721dde5d575" }, "downloads": -1, "filename": "ginpar-0.8.3-py3-none-any.whl", "has_sig": false, "md5_digest": "719bbf949c2add14e1212c019efd9d3d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23252, "upload_time": "2019-11-05T00:37:30", "upload_time_iso_8601": "2019-11-05T00:37:30.560773Z", "url": "https://files.pythonhosted.org/packages/8e/6f/a3f662e08b6d570b9baccb3791cc54102ce5b7048359673745f6ec5713a0/ginpar-0.8.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1aae722faa0af3a0ac88a11fdba02e47", "sha256": "d740714417086d10f4b5b3f33d48608bd2d85e4a44a8ad8bcfa4f5e8fc05aef8" }, "downloads": -1, "filename": "ginpar-0.8.3.tar.gz", "has_sig": false, "md5_digest": "1aae722faa0af3a0ac88a11fdba02e47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19886, "upload_time": "2019-11-05T00:37:34", "upload_time_iso_8601": "2019-11-05T00:37:34.339162Z", "url": "https://files.pythonhosted.org/packages/0c/9c/bc76e29f134acd03e0840c46668ca7d2fdb0d2e084ff763d0ae53cfe934a/ginpar-0.8.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "125ea451df619d6bd535339ec6a65b43", "sha256": "0ccf23e2f524c9c0f6464b5b429843cdcfc8cd3a1062dd8573b507b48e379651" }, "downloads": -1, "filename": "ginpar-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "125ea451df619d6bd535339ec6a65b43", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23661, "upload_time": "2019-11-08T00:41:29", "upload_time_iso_8601": "2019-11-08T00:41:29.819831Z", "url": "https://files.pythonhosted.org/packages/04/75/ec3b17b3752e2ab971f24cc7e0a807f89e1c9e9342d3ce960f7ddf9688ab/ginpar-1.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b8d145c7e6a86c48d8dd15ba99e49b53", "sha256": "1827a14e260c22cfc24ef3184a5c48255eb88a71f14979f86b5fc46406dc35e1" }, "downloads": -1, "filename": "ginpar-1.0.0.tar.gz", "has_sig": false, "md5_digest": "b8d145c7e6a86c48d8dd15ba99e49b53", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19999, "upload_time": "2019-11-08T00:41:35", "upload_time_iso_8601": "2019-11-08T00:41:35.684030Z", "url": "https://files.pythonhosted.org/packages/2a/06/09691bff067e70251089aab8aa59330640da1e7eda08a4b922fb0a6f49d7/ginpar-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "2982e705a4d8680075e689c8a9c8b208", "sha256": "632a6caee289ac78e5d501e3186b06f47769278d11adafaeaa96cc4377fbed52" }, "downloads": -1, "filename": "ginpar-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2982e705a4d8680075e689c8a9c8b208", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23623, "upload_time": "2019-11-08T00:45:02", "upload_time_iso_8601": "2019-11-08T00:45:02.559456Z", "url": "https://files.pythonhosted.org/packages/37/12/350b823eeb4e2e50a256f11428a9ee81f005661c53b7d946bd8d737f10dc/ginpar-1.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "36bfc54d7c16548497d4dbe822557610", "sha256": "b396a5b98f2719addef394253a4a4571674413ff359a47de42c5e65e2b486a88" }, "downloads": -1, "filename": "ginpar-1.0.1.tar.gz", "has_sig": false, "md5_digest": "36bfc54d7c16548497d4dbe822557610", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19937, "upload_time": "2019-11-08T00:45:04", "upload_time_iso_8601": "2019-11-08T00:45:04.348353Z", "url": "https://files.pythonhosted.org/packages/a5/0c/c0e2ef17738fbdeb4c0cf67db528c545b1aa1dffb2f71d07f14d92d5199e/ginpar-1.0.1.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2982e705a4d8680075e689c8a9c8b208", "sha256": "632a6caee289ac78e5d501e3186b06f47769278d11adafaeaa96cc4377fbed52" }, "downloads": -1, "filename": "ginpar-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2982e705a4d8680075e689c8a9c8b208", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23623, "upload_time": "2019-11-08T00:45:02", "upload_time_iso_8601": "2019-11-08T00:45:02.559456Z", "url": "https://files.pythonhosted.org/packages/37/12/350b823eeb4e2e50a256f11428a9ee81f005661c53b7d946bd8d737f10dc/ginpar-1.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "36bfc54d7c16548497d4dbe822557610", "sha256": "b396a5b98f2719addef394253a4a4571674413ff359a47de42c5e65e2b486a88" }, "downloads": -1, "filename": "ginpar-1.0.1.tar.gz", "has_sig": false, "md5_digest": "36bfc54d7c16548497d4dbe822557610", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19937, "upload_time": "2019-11-08T00:45:04", "upload_time_iso_8601": "2019-11-08T00:45:04.348353Z", "url": "https://files.pythonhosted.org/packages/a5/0c/c0e2ef17738fbdeb4c0cf67db528c545b1aa1dffb2f71d07f14d92d5199e/ginpar-1.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }