{ "info": { "author": "Tom Spalding", "author_email": "tom@blackforestbotanics.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Framework :: Pelican :: Plugins", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3" ], "description": "==========================================\n\ud83d\udef9 The Drop In - a Pelican Plugin Template\n==========================================\n\n.. image:: https://travis-ci.com/nebulousdog/thedropin.svg?branch=master\n :target: https://travis-ci.com/nebulousdog/thedropin\n :alt: travis-link\n.. image:: https://codecov.io/gh/nebulousdog/thedropin/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/nebulousdog/thedropin\n :alt: codecov-link\n.. image:: https://img.shields.io/pypi/v/thedropin.svg\n :target: https://pypi.org/project/thedropin/\n :alt: pypi-link\n\nThese are the bare minimum yet possibly over-explained steps for creating a Pelican plugin.\n\n*****\nSteps\n*****\n\nPlease let us know in an `issue `_ if we forgot anything!\n\nCopy Plugin Base\n================\n\n1. Fork `thedropin `_.\n2. Change all dir names and references to this project's name[1]_.\n\n.. [1] Python project names are typically short and lower-cased. If you make a single-word project, congrats, you never have to worry about inconsistent casing between projects. If you absolutely must use spacing, use underscores for project names, directories, and filenames.\n\nDependencies\n============\n\nSee instructions for installing `Pipenv `_. Then run ``pipenv install --dev``.\n\nDeveloping Your Plugin\n======================\n\nThis is now where you get to get \ud83c\udfa8 creative! Good luck, have fun.\n\nETC\n^^^\n\nThis is wading into dangerous territory to start recommending text-editor practices, but if you open your editor from inside the Pipenv shell, that may help your editor loading the proper environment-specific dependencies.\n\nTests\n=====\n\n1. ``pipenv run tests``\n\nLinting\n=======\n\n1. ``pipenv run lints``\n\nSharing\n=======\n\nTwo great ways to share your code with the community.\n\nPelican Plugins Community Repo\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nSee `Contributing a plugin `_ and `Using Git and Github `_ about adding a plugin to the ``pelican-plugins`` `repo `_.\n\nPublishing to PyPI\n^^^^^^^^^^^^^^^^^^\n\nThis is probably the hardest part, and is why I'd wager there are so few Pelican projects registered on PyPI[2]_. Begin with the manual steps. Afterwards, add support for the automated steps as soon as possible while everything is fresh in your head.\n\n.. [2] This is based on the following three `classifier `_ searches. At the time of writing these are the tallies, with possible overlap between them; `Framework :: Pelican `_ (20 projects) + `Framework :: Pelican :: Plugins `_ (12 projects) + `Framework :: Pelican :: Themes `_ (5 projects) = 37.\n\nFirst Time\n\"\"\"\"\"\"\"\"\"\"\n\nYour first time uploading a project to PyPI requires using `Twine `_. All of the below commands can be found in the `Pipfile `_ ``[scripts]`` section for your convenience.\n\n1. ``pipenv shell`` Enter your dev environment where ``twine`` will be accessible.\n2. ``python setup.py sdist bdist_wheel`` Create a normal distribution.\n3. `Register `_ on PyPI.\n4. Think hard on your project name once more before uploading. Short lowercase 1 word names are best.\n\nOptionally, you can do some checks on your distribution before attempting an official upload.\n\n5. Also `register `_ on TestPyPI if you intend to test your distribution before making it official.\n6. ``twine check dist/*`` Check the distribution you made in the second step.\n7. ``twine upload --repository testpypi dist/*`` Run a test of the upload. Preview at https://test.pypi.org/project/thedropin.\n\nBack to the official upload steps..\n\n8. ``twine upload dist/*`` Upload your project to PyPI.\n\nContinue below before you're tired!\n\nAutomated Release to PyPI\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\n1. Visit https://pypi.org/manage/account/token/ to get your API token.\n2. Create a project-scoped token.\n3. ``gem install travis`` Install the Travis CLI.\n4. ``travis login`` Log into the CLI app. Use ``--com`` if you've opted into the https://travis-ci.com/ beta.\n5. ``travis encrypt \"your-api-token\" --com`` Override the token in this repo. Travis is migrating to Travis travis-ci.com.\n6. ``python ./release.py`` Save your changes and bump the version.\n\nTry bumping the version and tags again using the release script. After you've found your groove with this, give yourself a pat on the back. Job well done!\n\n************\nInstallation\n************\n\nThe installation instructions for your new plugin will now be the following.\n\n1. ``pipenv install --dev thedropin``\n2. update your ``pelicanconf.py``'s plugins settings to include the following.\n\n .. code-block:: python\n\n import thedropin\n PLUGINS = [thedropin]\n\nYou can now include ``{{ article.emoji }}`` or ``{{ page.emoji }}`` in your templates. This can be overridden in the article, or page's, metadata. For example, ``:emoji: \ud83e\uddd9``.\n\n**********\nReferences\n**********\n\n* `Contributing and feedback guidelines `_\n* `How to create plugins `_\n* `Contributing a plugin `_\n\n*******\nLicense\n*******\n\nMIT", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/nebulousdog/thedropin", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "thedropin", "package_url": "https://pypi.org/project/thedropin/", "platform": "", "project_url": "https://pypi.org/project/thedropin/", "project_urls": { "Homepage": "https://github.com/nebulousdog/thedropin" }, "release_url": "https://pypi.org/project/thedropin/1.0.1/", "requires_dist": null, "requires_python": "", "summary": "a base Pelican Plugin template.", "version": "1.0.1" }, "last_serial": 5969495, "releases": { "0.0.17": [ { "comment_text": "", "digests": { "md5": "24ebe66b77f6d45ff6c67cba0143dd10", "sha256": "e5e69d1956b3cfd6d853822d27f066567722e4510dfd3676bb9a46f992a734e3" }, "downloads": -1, "filename": "thedropin-0.0.17.tar.gz", "has_sig": false, "md5_digest": "24ebe66b77f6d45ff6c67cba0143dd10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4795, "upload_time": "2019-10-07T17:26:42", "url": "https://files.pythonhosted.org/packages/81/bb/175b0eba68443383e3dd9d0bd0c056d934daa9ac5c50d27bf0b4102c63fa/thedropin-0.0.17.tar.gz" } ], "0.0.18": [ { "comment_text": "", "digests": { "md5": "46c438f37a5f88aa7224152e3978a75d", "sha256": "d4cd5bb90d8fcf92e644573eb1775f5965ebe374048149a4ac24d3766a91c4e2" }, "downloads": -1, "filename": "thedropin-0.0.18.tar.gz", "has_sig": false, "md5_digest": "46c438f37a5f88aa7224152e3978a75d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4788, "upload_time": "2019-10-07T17:54:53", "url": "https://files.pythonhosted.org/packages/ac/c9/0aa161253549452bc1ffc509c26f6fbf6fb418595fb5044f2dcdc7f92746/thedropin-0.0.18.tar.gz" } ], "0.0.19": [ { "comment_text": "", "digests": { "md5": "246781ceab3be5a086d4e0aad9f9db45", "sha256": "bbf153349849949b5cf3e21ead65d5b2dfc759269d3df7217c5aeab5303571dd" }, "downloads": -1, "filename": "thedropin-0.0.19.tar.gz", "has_sig": false, "md5_digest": "246781ceab3be5a086d4e0aad9f9db45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4791, "upload_time": "2019-10-07T18:01:46", "url": "https://files.pythonhosted.org/packages/2d/af/370c9eea713cf0c47e50b1e5c969a9534c2e376d01e7f3a045159f70f765/thedropin-0.0.19.tar.gz" } ], "0.0.20": [ { "comment_text": "", "digests": { "md5": "6eccecc284336a24061749dbad58ee7b", "sha256": "f676f943541c3b7f39b4773c07bd5fd3a3d9b6d0342592b6fa93223db5709c2e" }, "downloads": -1, "filename": "thedropin-0.0.20.tar.gz", "has_sig": false, "md5_digest": "6eccecc284336a24061749dbad58ee7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4903, "upload_time": "2019-10-13T19:07:07", "url": "https://files.pythonhosted.org/packages/de/4f/0638adb05e5447cae356523ac1c6aa0b80b80e63028d678b0bbcc7a9509f/thedropin-0.0.20.tar.gz" } ], "0.0.21": [ { "comment_text": "", "digests": { "md5": "0f74df5bd3df683823baf932fb0e80e9", "sha256": "f05410430f65af35ca17af9d38848e0b0efc495bc349ce626a5c44f2e5c4d44b" }, "downloads": -1, "filename": "thedropin-0.0.21.tar.gz", "has_sig": false, "md5_digest": "0f74df5bd3df683823baf932fb0e80e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5031, "upload_time": "2019-10-13T19:30:59", "url": "https://files.pythonhosted.org/packages/e5/2d/4547d54a02dc8d42ceef0f7668c52e30c7455ef4ee84456cfcba43ca545d/thedropin-0.0.21.tar.gz" } ], "0.0.22": [ { "comment_text": "", "digests": { "md5": "5e67c23b2ad98aaae91975da187fafab", "sha256": "85b5dc7cff42f34ec6f08b5233f8d050cecc9a5a773b242f49c69d1b0e741d54" }, "downloads": -1, "filename": "thedropin-0.0.22.tar.gz", "has_sig": false, "md5_digest": "5e67c23b2ad98aaae91975da187fafab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5032, "upload_time": "2019-10-13T19:32:59", "url": "https://files.pythonhosted.org/packages/2a/0c/ee2aa7776d85751598d043496ee16d9eef652aafb78ba86be9b89fa0eab9/thedropin-0.0.22.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "eb50d5159d99eb7ae4c0812995a3e777", "sha256": "e155ab6629bf7f76f3a49d8b5619efc1e0fc03fc2b7f4521b8378e1ab3ea5d62" }, "downloads": -1, "filename": "thedropin-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "eb50d5159d99eb7ae4c0812995a3e777", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5230, "upload_time": "2019-10-07T13:51:48", "url": "https://files.pythonhosted.org/packages/81/35/26796cb14344483620b83d46b097ef6e1dbf597174053fc0a0d1866620a0/thedropin-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b04622e942a2575584a3c790e0a9c1be", "sha256": "41d2e795f45a29c20442c74619e3c4f57350410434c3769caebeb2c5fe875f47" }, "downloads": -1, "filename": "thedropin-0.0.4.tar.gz", "has_sig": false, "md5_digest": "b04622e942a2575584a3c790e0a9c1be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4502, "upload_time": "2019-10-07T13:51:51", "url": "https://files.pythonhosted.org/packages/6a/ad/435494d25102625551ddd7b371712e8b6c17b44645421d8c5eeea807065a/thedropin-0.0.4.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "237e214f90375f0a3993744155b3242f", "sha256": "bc69598b9c394e1673dc30816a27090693dd648fee210f38c6d51e7f0644e010" }, "downloads": -1, "filename": "thedropin-1.0.0.tar.gz", "has_sig": false, "md5_digest": "237e214f90375f0a3993744155b3242f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5031, "upload_time": "2019-10-13T19:49:27", "url": "https://files.pythonhosted.org/packages/c7/37/f577e6b22bc97b7e19b7897e6ec6cf1b999ba5aad52f53a9b9eb0c63bd52/thedropin-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "e7c3fc4236b976381ecb3663dd86043c", "sha256": "ca8efd552025156c59307bbe2e975d0a0aa6c3c08e7c14e2c9274c381d03e96c" }, "downloads": -1, "filename": "thedropin-1.0.1.tar.gz", "has_sig": false, "md5_digest": "e7c3fc4236b976381ecb3663dd86043c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5048, "upload_time": "2019-10-14T02:28:46", "url": "https://files.pythonhosted.org/packages/85/1c/97626384d56650d27da71dccd2a126c4a753b578021cc685c6edd9f81f16/thedropin-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e7c3fc4236b976381ecb3663dd86043c", "sha256": "ca8efd552025156c59307bbe2e975d0a0aa6c3c08e7c14e2c9274c381d03e96c" }, "downloads": -1, "filename": "thedropin-1.0.1.tar.gz", "has_sig": false, "md5_digest": "e7c3fc4236b976381ecb3663dd86043c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5048, "upload_time": "2019-10-14T02:28:46", "url": "https://files.pythonhosted.org/packages/85/1c/97626384d56650d27da71dccd2a126c4a753b578021cc685c6edd9f81f16/thedropin-1.0.1.tar.gz" } ] }