{ "info": { "author": "Brian Quinlan", "author_email": "brian@sweetapp.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "[![CircleCI](https://circleci.com/gh/google/pybadges.svg?style=svg)](https://circleci.com/gh/google/pybadges)\n![pypi](https://img.shields.io/pypi/v/pybadges.svg)\n![versions](https://img.shields.io/pypi/pyversions/pybadges.svg)\n\n# pybadges\n\npybadges is a Python library and command line tool that allows you to create\nGithub-style badges as SVG images. For example:\n\n![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/pip.svg?sanitize=true)\n![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/license.svg?sanitize=true)\n![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/build-passing.svg?sanitize=true)\n\nThe aesthetics of the generated badges matches the visual design found in this\n[specification](https://github.com/badges/shields/blob/master/spec/SPECIFICATION.md).\n\nThe implementation of the library was heavily influenced by\n[Shields.io](https://github.com/badges/shields) and the JavaScript\n[gh-badges](https://github.com/badges/shields#using-the-badge-library) library.\n\n## Getting Started\n\n### Installing\n\npybadges can be installed using [pip](https://pypi.org/project/pip/):\n\n```sh\npip install pybadges\n```\n\nTo test that installation was successful, try:\n```sh\npython -m pybadges --left-text=build --right-text=failure --right-color='#c00' --browser\n```\n\nYou will see a badge like this in your browser:\n\n![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/build-failure.svg?sanitize=true)\n\n## Usage\n\npybadges can be used both from the command line and as a Python library.\n\nThe command line interface is a great way to experiment with the API before\nwriting Python code.\n\n### Command line usage\n\nComplete documentation of pybadges command arguments can be found using the `--help`\nflag:\n\n```sh\npython -m pybadges --help\n```\n\nBut the following usage demonstrates every interesting option:\n```sh\npython -m pybadges \\\n --left-text=complete \\\n --right-text=example \\\n --left-color=green \\\n --right-color='#fb3' \\\n --left-link=http://www.complete.com/ \\\n --right-link=http://www.example.com \\\n --logo='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAAD0lEQVQI12P4zwAD/xkYAA/+Af8iHnLUAAAAAElFTkSuQmCC' \\\n --embed-logo \\\n --whole-title=\"Badge Title\" \\\n --left-title=\"Left Title\" \\\n --right-title=\"Right Title\" \\\n --browser\n```\n\n![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/complete.svg?sanitize=true)\n\n#### A note about `--logo` and `--embed-logo`\n\nNote that the `--logo` option can include a regular URL:\n\n```sh\npython -m pybadges \\\n --left-text=\"python\" \\\n --right-text=\"3.2, 3.3, 3.4, 3.5, 3.6\" \\\n --whole-link=\"https://www.python.org/\" \\\n --browser \\\n --logo='https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/python.svg'\n```\n\n![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/python.svg?sanitize=true)\n\nIf the `--logo` option is set, the `--embed-logo` option can also be set.\nThe `--embed-logo` option causes the content of the URL provided in `--logo`\nto be embedded in the badge rather than be referenced through a link.\n\nThe advantage of using this option is an extra HTTP request will not be required\nto render the badge and that some browsers will not load image references at all.\n\nYou can see the difference in your browser:\n\n![--embed-logo=yes](https://github.com/google/pybadges/raw/master/tests/golden-images/embedded-logo.svg?sanitize=true) ![--embed-logo=no](https://github.com/google/pybadges/raw/master/tests/golden-images/no-embedded-logo.svg?sanitize=true)\n\n#### A note about `--(whole|left|right)-title`\n\nThe `title` element is usually displayed as a\n[pop-up by browsers](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/title)\nbut is currently\n[filtered by Github](https://github.com/github/markup/issues/1267).\n\n\n### Library usage\n\npybadges is primarily meant to be used as a Python library.\n\n```python\nfrom pybadges import badge\ns = badge(left_text='coverage', right_text='23%', right_color='red')\n# s is a string that contains the badge data as an svg image.\nprint(s[:40]) # => `left_text=`)\n\n### Caveats\n\n - pybadges uses a pre-calculated table of text widths and\n [kerning](https://en.wikipedia.org/wiki/Kerning) distances\n (for western glyphs) to determine the size of the badge.\n So Eastern European languages may be rendered less well than\n Western European ones:\n\n ![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/saying-russian.svg?sanitize=true)\n\n and glyphs not present in Deja Vu Sans (the default font) may\n be rendered very poorly:\n\n ![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/saying-chinese.svg?sanitize=true)\n\n - pybadges does not have any explicit support for languages that\n are written right-to-left (e.g. Arabic, Hebrew) and the displayed\n text direction may be incorrect:\n\n ![pip installation](https://github.com/google/pybadges/raw/master/tests/golden-images/saying-arabic.svg?sanitize=true)\n\n## Development\n\n```sh\ngit clone https://github.com/google/pybadges.git\ncd pybadges\npython -m virtualenv venv\nsource venv/bin/activate\n# Installs in edit mode and with development dependencies.\npip install -e .[dev]\nnox\n```\n\nIf you'd like to contribute your changes back to pybadges, please read the\n[contributer guide.](CONTRIBUTING.md)\n\n## Versioning\n\nWe use [SemVer](http://semver.org/) for versioning.\n\n## License\n\nThis project is licensed under the Apache License - see the [LICENSE](LICENSE) file for details\n\nThis is not an officially supported Google product.\n\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/google/pybadges", "keywords": "github gh-badges badge shield status", "license": "Apache-2.0", "maintainer": "", "maintainer_email": "", "name": "pybadges", "package_url": "https://pypi.org/project/pybadges/", "platform": "", "project_url": "https://pypi.org/project/pybadges/", "project_urls": { "Homepage": "https://github.com/google/pybadges" }, "release_url": "https://pypi.org/project/pybadges/2.2.0/", "requires_dist": [ "Jinja2 (<3,>=2.9.0)", "requests (<3,>=2.9.0)", "fonttools (>=3.26) ; extra == 'dev'", "nox ; extra == 'dev'", "Pillow (>=5) ; extra == 'dev'", "pytest (>=3.6) ; extra == 'dev'", "Pillow (<6,>=5) ; extra == 'pil-measurement'" ], "requires_python": ">=3.4", "summary": "A library and command-line tool for generating Github-style badges", "version": "2.2.0" }, "last_serial": 5213440, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "0bdfaa491005e9884666e9bf1a4652d4", "sha256": "6d094d53639ed9259925c6ced6e375006ffe05a490effb964abebe2fc4c9b8a3" }, "downloads": -1, "filename": "pybadges-0.0.1.tar.gz", "has_sig": false, "md5_digest": "0bdfaa491005e9884666e9bf1a4652d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8664, "upload_time": "2018-06-27T20:54:15", "url": "https://files.pythonhosted.org/packages/66/de/f0370e6cec53efa882049a89e215f0ddc795805490f698001e40241aab68/pybadges-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "66386f96d7fae17c7f1b78091205c9e3", "sha256": "e1674171184cd42368b0d4c7e6bbd8b7808214bbb4a995b6ffa4daa3da7dfc95" }, "downloads": -1, "filename": "pybadges-0.0.2.tar.gz", "has_sig": false, "md5_digest": "66386f96d7fae17c7f1b78091205c9e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10360, "upload_time": "2018-06-27T20:56:20", "url": "https://files.pythonhosted.org/packages/ae/61/9f57e34fd97ddbfe0fb322f76af8637b62fa20b91a5754e17a5c1aa59885/pybadges-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "69b9261188534ba5815c6215e294592d", "sha256": "0a77c9b4dd219fce9adc49c27ba3038c318bcbf97b214cfb67fbad70a7d82d71" }, "downloads": -1, "filename": "pybadges-0.0.3.tar.gz", "has_sig": false, "md5_digest": "69b9261188534ba5815c6215e294592d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10394, "upload_time": "2018-06-27T20:59:09", "url": "https://files.pythonhosted.org/packages/92/e4/34c560501510151a31bb51cc4dbd33c589acff9ecc5e6cce7843549eb46d/pybadges-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "2e8fe6d8047cf6ee322ff5b0486d36f9", "sha256": "37a96ed0305fdd571ae608f20547ad802be7cfabe12744e8ec3601baddf03f30" }, "downloads": -1, "filename": "pybadges-0.0.4.tar.gz", "has_sig": false, "md5_digest": "2e8fe6d8047cf6ee322ff5b0486d36f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10530, "upload_time": "2018-06-27T21:49:42", "url": "https://files.pythonhosted.org/packages/ed/46/920a7961a242db27f44c3d95ef906ada0ab26bcb35b552892a7c36bb37cd/pybadges-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "99f8b6a5c4baae1dceec5b4cdcfb430d", "sha256": "da63df01bf248fa5fc9dc7076efdc1c2d5f8e1795ee1f35f897dedfa5f8f5c2c" }, "downloads": -1, "filename": "pybadges-0.0.5.tar.gz", "has_sig": false, "md5_digest": "99f8b6a5c4baae1dceec5b4cdcfb430d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14398, "upload_time": "2018-06-27T21:50:34", "url": "https://files.pythonhosted.org/packages/a5/05/26a6292b10b32466853c2d58eeb4d59afe9472a90babc141f4101bea1c81/pybadges-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "3350aadd4b4f21670fc9d140f0fdcd01", "sha256": "dda0846bd36ecd9e9655eb035037d4a34cbdc951c8717e579c0f5e1fc586804f" }, "downloads": -1, "filename": "pybadges-0.0.6.tar.gz", "has_sig": false, "md5_digest": "3350aadd4b4f21670fc9d140f0fdcd01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10586, "upload_time": "2018-06-27T21:54:21", "url": "https://files.pythonhosted.org/packages/7b/17/686df8162424eaa8b0a19d37470eb5a2d470523093747650ab24791d5412/pybadges-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "0dd2062a7d42dd9c02113af94e403c91", "sha256": "c858a24b6a820bc3ba72629d2ebe97e123fc0623cda3783a32d5d9fa2e3118c3" }, "downloads": -1, "filename": "pybadges-0.0.7.tar.gz", "has_sig": false, "md5_digest": "0dd2062a7d42dd9c02113af94e403c91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10600, "upload_time": "2018-06-27T21:58:18", "url": "https://files.pythonhosted.org/packages/b1/b7/57a9e0fcfdd0eddf80e24ce72d037a57da301aa86bfbb2908998b2ed6de5/pybadges-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "034f6df83b97c0ec7b633523a4b784a2", "sha256": "94c5810b39f5686227c31313c1c93e0e78cc39dab3419662becb864cab871b24" }, "downloads": -1, "filename": "pybadges-0.0.8.tar.gz", "has_sig": false, "md5_digest": "034f6df83b97c0ec7b633523a4b784a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26665, "upload_time": "2018-06-28T00:20:56", "url": "https://files.pythonhosted.org/packages/20/81/02fd7922aca0881caa79f2293389a3f871f058beb49d05061e44dff751b1/pybadges-0.0.8.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "594b6520b4c655ac0a588e367fd833d1", "sha256": "492ee0b18965ac5a646ee2ce874845194a6e8c2a3b0e4c42415e5f7be624f36c" }, "downloads": -1, "filename": "pybadges-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "594b6520b4c655ac0a588e367fd833d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27667, "upload_time": "2018-09-14T03:21:26", "url": "https://files.pythonhosted.org/packages/96/c9/ae3e2595a5074502f2e7ecd2a9a2b12d903ce4b73b049ac67d9807e43606/pybadges-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "54b17e248ca4ab337fb0d43ee00b7f3a", "sha256": "571c89ff5a7a9968c9f81b7541d34a16765cc96ea82eacb92dd1d85e83ac3c45" }, "downloads": -1, "filename": "pybadges-1.0.0.tar.gz", "has_sig": false, "md5_digest": "54b17e248ca4ab337fb0d43ee00b7f3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26431, "upload_time": "2018-09-14T03:21:28", "url": "https://files.pythonhosted.org/packages/2e/ec/975a009148b22067bd74ec75f0f9855e03fcb1ec8aede9262a91c158768a/pybadges-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "a17e88c162749d86309561b3206edb14", "sha256": "5815ce5ce6970c5e872fe15daeb0a9439f7ca6d7b6d2646d8a32fcf730a97384" }, "downloads": -1, "filename": "pybadges-1.0.1.tar.gz", "has_sig": false, "md5_digest": "a17e88c162749d86309561b3206edb14", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 26471, "upload_time": "2018-10-06T00:55:58", "url": "https://files.pythonhosted.org/packages/0a/33/119a08bbb98908c6d032700afb04c7c37516aee1cdb7ce12005c86b4999c/pybadges-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "578bff771197a3dbdefd38683c60f029", "sha256": "cd9326daea083864af4decbb884a3dacde1c6ad7eacd957cb0f77c19f560327d" }, "downloads": -1, "filename": "pybadges-1.0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "578bff771197a3dbdefd38683c60f029", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3", "size": 49945, "upload_time": "2018-10-25T22:18:52", "url": "https://files.pythonhosted.org/packages/3a/95/3f761245abed45cbf48cc44713caae18ddbfef60b50e52b4350327ed7783/pybadges-1.0.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "279876483345b7d32c04a8efba13acc1", "sha256": "b37169e68312e501700435bc031a458df32f14839753fe4ec5e2924d66041e4a" }, "downloads": -1, "filename": "pybadges-1.0.2.tar.gz", "has_sig": false, "md5_digest": "279876483345b7d32c04a8efba13acc1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 50256, "upload_time": "2018-10-25T22:18:54", "url": "https://files.pythonhosted.org/packages/40/23/c1be7df618d857c2a29e7c84fc34137ef07471046df870bdf523151f3420/pybadges-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "e20e3164703fb60497d29ef658ae3eee", "sha256": "52fdcce9ad4c5739349dc2366b4b2d65eab9d1e35a2c10d338702cd045953a3c" }, "downloads": -1, "filename": "pybadges-1.0.3.tar.gz", "has_sig": false, "md5_digest": "e20e3164703fb60497d29ef658ae3eee", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 49628, "upload_time": "2018-12-06T02:32:27", "url": "https://files.pythonhosted.org/packages/62/a4/a82a7330f38305e9a014ded5058408c223cbbb4301fe0404ae5da036a5bd/pybadges-1.0.3.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "8888a38516e9b36a8b4858b6b0f1436f", "sha256": "6cdb16d4333d2ca699d63c5c10926c43776a12a5ea964b90cf2acd7c6de79a5a" }, "downloads": -1, "filename": "pybadges-1.1.0.tar.gz", "has_sig": false, "md5_digest": "8888a38516e9b36a8b4858b6b0f1436f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 51336, "upload_time": "2019-03-14T17:21:33", "url": "https://files.pythonhosted.org/packages/dd/b2/edd79148ee38205b0a629a0468d8fcf4ef115ac4ee6c9d68b8b4b1c78c7c/pybadges-1.1.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "8495f7e6635ca4e2e3252157211b079b", "sha256": "372ed4b29e1057ba7394c9f2b17a6b9acaa504104fc01f64ee810f439eafd7ca" }, "downloads": -1, "filename": "pybadges-2.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "8495f7e6635ca4e2e3252157211b079b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 55196, "upload_time": "2019-04-02T13:14:45", "url": "https://files.pythonhosted.org/packages/ae/ae/4f69e01aa63750848cb6b81efc89c89f740c9fe314cda09927dc4ba9b1a1/pybadges-2.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "95898a86dac5f3664c2e5e56ac795d76", "sha256": "3464130f16c9c42fc7988847edecbefdf5395a18aa5c797039b80adde88c1f2e" }, "downloads": -1, "filename": "pybadges-2.0.1.tar.gz", "has_sig": false, "md5_digest": "95898a86dac5f3664c2e5e56ac795d76", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 51483, "upload_time": "2019-04-02T13:14:47", "url": "https://files.pythonhosted.org/packages/2f/eb/e22ff9d4dc193ef0e3de643630936cd00355300f91884423e0cdc7ff5071/pybadges-2.0.1.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "7a6c473167179ecd9fff654ece95a97a", "sha256": "5e6597eaa7a48910f8cee03f7323cde1a6b51b27683a8377f5b6540bf5cca2c8" }, "downloads": -1, "filename": "pybadges-2.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7a6c473167179ecd9fff654ece95a97a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 55667, "upload_time": "2019-05-01T17:41:39", "url": "https://files.pythonhosted.org/packages/22/23/bc0779372aa0474fa586a23bb9cef2e44b0888b45e1e948bd7abfca20de5/pybadges-2.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e65684e1a2ae825bf489a0786515401d", "sha256": "c1a15922227297b90efe26166353517f2c329a9f74839ca6e18f60cd939344d4" }, "downloads": -1, "filename": "pybadges-2.2.0.tar.gz", "has_sig": false, "md5_digest": "e65684e1a2ae825bf489a0786515401d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 52104, "upload_time": "2019-05-01T17:41:41", "url": "https://files.pythonhosted.org/packages/b2/d4/4851dbe68e8f640c59b37f7193318207d845b90b674d09eacbe1a1e92d8b/pybadges-2.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7a6c473167179ecd9fff654ece95a97a", "sha256": "5e6597eaa7a48910f8cee03f7323cde1a6b51b27683a8377f5b6540bf5cca2c8" }, "downloads": -1, "filename": "pybadges-2.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7a6c473167179ecd9fff654ece95a97a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 55667, "upload_time": "2019-05-01T17:41:39", "url": "https://files.pythonhosted.org/packages/22/23/bc0779372aa0474fa586a23bb9cef2e44b0888b45e1e948bd7abfca20de5/pybadges-2.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e65684e1a2ae825bf489a0786515401d", "sha256": "c1a15922227297b90efe26166353517f2c329a9f74839ca6e18f60cd939344d4" }, "downloads": -1, "filename": "pybadges-2.2.0.tar.gz", "has_sig": false, "md5_digest": "e65684e1a2ae825bf489a0786515401d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 52104, "upload_time": "2019-05-01T17:41:41", "url": "https://files.pythonhosted.org/packages/b2/d4/4851dbe68e8f640c59b37f7193318207d845b90b674d09eacbe1a1e92d8b/pybadges-2.2.0.tar.gz" } ] }