{ "info": { "author": "Valentin Moriceau", "author_email": "valentin.moriceau@free.com", "bugtrack_url": null, "classifiers": [], "description": " \r\r\n Generate markdown from reST based Python docstrings\r\r\n \r\r\n ## Installation\r\r\n \r\r\n `pip install frangidoc`\r\r\n \r\r\n ## Usage\r\r\n \r\r\n FrangiDoc is a command line tool\r\r\n \r\r\n ### With Git\r\r\n \r\r\n It is possible to generate markdown from a distant repository.\r\r\n \r\r\n This repo must have a `.frangidoc.yml` file at its root, describing the modules/packages to be parsed :\r\r\n \r\r\n It is possible to alter the environment before generation.\r\r\n \r\r\n ```yml\r\r\n title: The Title\r\r\n environment:\r\r\n PYTHONPATH: some/path;some/other/path\r\r\n SOME_ENV_VAR: some_value\r\r\n modules:\r\r\n - path/to/module.py\r\r\n - path/to/package/__init__.py\r\r\n markdown:\r\r\n - path/to/markdown.md\r\r\n ```\r\r\n \r\r\n ```bash\r\r\n python -m frangidoc git \r\r\n ```\r\r\n \r\r\n Each given module will be parsed and a respective .md file will be created in the given output folder\r\r\n \r\r\n ## Syntax Examples\r\r\n \r\r\n The following source renders as [this page](demo-output.md)\r\r\n \r\r\n ### Python source\r\r\n \r\r\n ```python\r\r\n \"\"\"\r\r\n Top module docstring\r\r\n \r\r\n You can use markdown here\r\r\n - A bullet\r\r\n - list\r\r\n - for example\r\r\n \"\"\"\r\r\n \r\r\n \r\r\n class OneClass(object):\r\r\n \"\"\"\r\r\n Class level docstring\r\r\n \r\r\n You can use markdown here\r\r\n \r\r\n | A | Table |\r\r\n | --- | --- |\r\r\n | For | Example |\r\r\n \"\"\"\r\r\n \r\r\n def __init__(self, arg_1, arg_2=\"default\"):\r\r\n \"\"\"\r\r\n Constructor docstring\r\r\n \r\r\n You can use markdown here too\r\r\n \r\r\n :param arg_1: What is argument 1\r\r\n :param arg_2: What is argument 2\r\r\n \"\"\"\r\r\n pass\r\r\n \r\r\n def a_method(self, argument):\r\r\n \"\"\"\r\r\n Some text to describe the purpose of the method\r\r\n \r\r\n You can use markdown here too\r\r\n \r\r\n :param argument: What is this argument \r\r\n :return: What the method returns\r\r\n \"\"\"\r\r\n pass\r\r\n \r\r\n def some_function(one_param):\r\r\n \"\"\"\r\r\n Explain what happens here \r\r\n :param one_param: Argument one **must be** something in bold\r\r\n :return: None\r\r\n \"\"\"\r\r\n pass\r\r\n ```\r\r\n \r\r\n ### Markdown Output\r\r\n \r\r\n ````markdown\r\r\n # Demo\r\r\n \r\r\n Top module docstring\r\r\n \r\r\n You can use markdown here\r\r\n - A bullet\r\r\n - list\r\r\n - for example\r\r\n \r\r\n ## Class **OneClass**\r\r\n \r\r\n Class level docstring\r\r\n \r\r\n You can use markdown here\r\r\n \r\r\n | A | Table |\r\r\n | --- | --- |\r\r\n | For | Example |\r\r\n \r\r\n ### Constructor\r\r\n \r\r\n ```python\r\r\n OneClass(arg_1, arg_2='default')\r\r\n ```\r\r\n \r\r\n Constructor docstring\r\r\n \r\r\n You can use markdown here too\r\r\n \r\r\n \r\r\n | Argument | Role |\r\r\n | --- | --- |\r\r\n | `arg_1` | What is argument 1 |\r\r\n | `arg_2` | What is argument 2 |\r\r\n \r\r\n ### **a_method**\r\r\n \r\r\n ```python\r\r\n OneClass.a_method(argument)\r\r\n ```\r\r\n \r\r\n Some text to describe the purpose of the method\r\r\n \r\r\n You can use markdown here too\r\r\n \r\r\n \r\r\n | Argument | Role |\r\r\n | --- | --- |\r\r\n | `argument` | What is this argument |\r\r\n | Returns | What the method returns |\r\r\n \r\r\n ## Functions\r\r\n \r\r\n \r\r\n ### **some_function**\r\r\n \r\r\n ```python\r\r\n demo_doc.some_function(one_param)\r\r\n ```\r\r\n \r\r\n Explain what happens here\r\r\n \r\r\n | Argument | Role |\r\r\n | --- | --- |\r\r\n | `one_param` | Argument one **must be** something in bold |\r\r\n | Returns | None |\r\r\n ````\r\r\n \r\r\n ## References\r\r\n \r\r\n Largely inspired from\r\r\n \r\r\n - https://medium.com/python-pandemonium/python-introspection-with-the-inspect-module-2c85d5aa5a48\r\r\n - https://gist.github.com/dvirsky/30ffbd3c7d8f37d4831b30671b681c24\r\r\n - https://chase-seibert.github.io/blog/2014/03/21/python-multilevel-argparse.html\r\r\n \r\r\n Many thanks to their respective authors\r\r\n \r\nKeywords: documentation markdown docstring reST\r\nPlatform: UNKNOWN\r\nClassifier: Development Status :: 3 - Alpha\r\nClassifier: Programming Language :: Python :: 2.7\r\nClassifier: Programming Language :: Python :: 3\r\nClassifier: Intended Audience :: Developers\r\nClassifier: Intended Audience :: System Administrators\r\nClassifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)\r\nClassifier: Topic :: Software Development :: Documentation\r\nClassifier: Operating System :: Microsoft\r\nClassifier: Operating System :: POSIX\r\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/MrFrangipane/frangidoc", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "frangidoc", "package_url": "https://pypi.org/project/frangidoc/", "platform": "", "project_url": "https://pypi.org/project/frangidoc/", "project_urls": { "Homepage": "https://github.com/MrFrangipane/frangidoc" }, "release_url": "https://pypi.org/project/frangidoc/2.1.3/", "requires_dist": null, "requires_python": "", "summary": "Generate markdown from Python sources (reST based)", "version": "2.1.3" }, "last_serial": 4916222, "releases": { "1.1.2": [ { "comment_text": "", "digests": { "md5": "931726729b8f6f4e2c0c85385f02d03d", "sha256": "d14de9feac5e75fc288fd7a35bb487cadad3b7a89c6958fa5fadbda92a52925f" }, "downloads": -1, "filename": "frangidoc-1.1.2.tar.gz", "has_sig": false, "md5_digest": "931726729b8f6f4e2c0c85385f02d03d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4193, "upload_time": "2018-04-05T13:34:08", "url": "https://files.pythonhosted.org/packages/40/0e/45b44e5e2fec35a0409d31d9531cc7256140180f15a40132c63d5e1667cb/frangidoc-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "72e4839e4bd6394fb6724501681707d6", "sha256": "1694714873e8925b53f8c8a6a02220dcba7474300eb0d70d8fceb310798931b8" }, "downloads": -1, "filename": "frangidoc-1.1.3.tar.gz", "has_sig": false, "md5_digest": "72e4839e4bd6394fb6724501681707d6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4262, "upload_time": "2018-04-05T13:34:09", "url": "https://files.pythonhosted.org/packages/d4/cb/694aee02e3074444d7e0454f98463b4c223f59e410b5eefa0bfcee134142/frangidoc-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "5ac636c6e3dfaeab831f2974ca15a884", "sha256": "e2d7a7d3e5463484418c3bc8e420f66a81b9255a48997166daaa9f5afee0354a" }, "downloads": -1, "filename": "frangidoc-1.1.4.tar.gz", "has_sig": false, "md5_digest": "5ac636c6e3dfaeab831f2974ca15a884", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4272, "upload_time": "2018-04-05T13:40:07", "url": "https://files.pythonhosted.org/packages/c0/7e/f69f6796f8ff55d0c4818059542050566a04cb387b878abfd0040132fc2e/frangidoc-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "aa9bdf0390f7eff15ef4a39d93484435", "sha256": "ebd18016a37f1fc9ef6df59df58d490b4ec710ff2402bb9c41656652a2baf51f" }, "downloads": -1, "filename": "frangidoc-1.1.5.tar.gz", "has_sig": false, "md5_digest": "aa9bdf0390f7eff15ef4a39d93484435", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4294, "upload_time": "2018-04-05T13:49:23", "url": "https://files.pythonhosted.org/packages/28/d0/35aa126eaf1f0479aad9dcb7a9a858583a26cf1b62e3bfec9ce0dd3adba1/frangidoc-1.1.5.tar.gz" } ], "1.1.6": [ { "comment_text": "", "digests": { "md5": "980c16a545209260d4bac3ae0173b612", "sha256": "2c8128870d564fd3d4df3ed59d1dffc6e18ccc741fc8bd41f4a52b4620ffcad2" }, "downloads": -1, "filename": "frangidoc-1.1.6.tar.gz", "has_sig": false, "md5_digest": "980c16a545209260d4bac3ae0173b612", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18186, "upload_time": "2018-04-05T13:56:45", "url": "https://files.pythonhosted.org/packages/72/29/a51e1d55982a7fb97e5d8a345c366b5fcc34cd3a2c323b3c15561e703b05/frangidoc-1.1.6.tar.gz" } ], "1.1.7": [ { "comment_text": "", "digests": { "md5": "bcabbf9049b445026ee255b1aa7ffe31", "sha256": "4483c926da011a09aef07c010eb9a7d15a9cdb240467ad25f0d61380c1287cab" }, "downloads": -1, "filename": "frangidoc-1.1.7.tar.gz", "has_sig": false, "md5_digest": "bcabbf9049b445026ee255b1aa7ffe31", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18219, "upload_time": "2018-04-05T14:02:50", "url": "https://files.pythonhosted.org/packages/39/fa/c54fd0932dd3ac10886cafc52b05a0f8d6825e52727ac98832d3e808c61a/frangidoc-1.1.7.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "46ae1cb85595cf6dd1c576ef7ae26e8c", "sha256": "40d30b278a9d6eacb6c7f1bd1833fe28b9dd611b1d60f72317d665bff9b9b298" }, "downloads": -1, "filename": "frangidoc-1.2.0.tar.gz", "has_sig": false, "md5_digest": "46ae1cb85595cf6dd1c576ef7ae26e8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20650, "upload_time": "2018-04-06T10:41:33", "url": "https://files.pythonhosted.org/packages/b0/38/b263c5d0abf2d640828857d2003da0fdb909036276e110a3a0d77ab7ca50/frangidoc-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "7ba57ff7d9ec1b136ad509fa75052d63", "sha256": "f4b694a043917da715a623d975c7a975b1f8ba8f13e94c3990e3ac0878e812c2" }, "downloads": -1, "filename": "frangidoc-1.2.1.tar.gz", "has_sig": false, "md5_digest": "7ba57ff7d9ec1b136ad509fa75052d63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20721, "upload_time": "2018-04-06T10:46:31", "url": "https://files.pythonhosted.org/packages/91/69/39d6b73251fe7a3bcff09fde23714dddc61e294f7eb3161a65ba9c727ea4/frangidoc-1.2.1.tar.gz" } ], "1.2.3": [ { "comment_text": "", "digests": { "md5": "7d50397c0d62011661716119ce03a923", "sha256": "a6d1957ca1ba28314efb97fd0fb8d833b6a3f0c949c8af1d3821b50194c0f99d" }, "downloads": -1, "filename": "frangidoc-1.2.3.tar.gz", "has_sig": false, "md5_digest": "7d50397c0d62011661716119ce03a923", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20779, "upload_time": "2018-04-06T12:13:24", "url": "https://files.pythonhosted.org/packages/15/fc/7b95a6d29fa5a82e0de6446637dabe61b52fb96c04aaace18887bce73399/frangidoc-1.2.3.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "4a378a123d7047d3a5ef0ddbc2cd9c68", "sha256": "5ed487448c88def882db606bb49f0f614bba30ea8042ee6b54bfa0867c62285f" }, "downloads": -1, "filename": "frangidoc-1.3.0.tar.gz", "has_sig": false, "md5_digest": "4a378a123d7047d3a5ef0ddbc2cd9c68", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20918, "upload_time": "2018-04-06T13:09:13", "url": "https://files.pythonhosted.org/packages/43/4f/1be95b431afdfff8bed5d501e70e9ea156966775b12b6fa07067bb69a8b6/frangidoc-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "b2709721c6ede1035f708a4588c3dd61", "sha256": "5b602c580abe849d3a726d1b6d938b2be90524024b8e5cc8acbe20d2a6f1b6e4" }, "downloads": -1, "filename": "frangidoc-1.3.1.tar.gz", "has_sig": false, "md5_digest": "b2709721c6ede1035f708a4588c3dd61", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20933, "upload_time": "2018-04-06T14:24:09", "url": "https://files.pythonhosted.org/packages/ce/40/b45b3001355eb2b009159849de71291becb27a19fe89739492a9eea4d103/frangidoc-1.3.1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "164d76767984e63f5487acb944ccdfc4", "sha256": "7afeecdc6b8aa97a77211103a178513479199d5a7292150fa704a8c585066d00" }, "downloads": -1, "filename": "frangidoc-1.3.2.tar.gz", "has_sig": false, "md5_digest": "164d76767984e63f5487acb944ccdfc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21065, "upload_time": "2018-04-09T11:44:52", "url": "https://files.pythonhosted.org/packages/0e/58/4f2eeb8fea6b8f941e5549520cd890d38a908c3cbd665279ca53f67ca890/frangidoc-1.3.2.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "254935399b23e74cba65575f48bdda20", "sha256": "18c81564499e812fa96abdb3d23c0fd73d49a74df0bbb3bd38c4a9546a63fb77" }, "downloads": -1, "filename": "frangidoc-1.4.0.tar.gz", "has_sig": false, "md5_digest": "254935399b23e74cba65575f48bdda20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21087, "upload_time": "2018-05-08T12:00:28", "url": "https://files.pythonhosted.org/packages/b3/91/3314b4e117917d7d791fdba294e925d32f118d7512ead3a9791ab1bc86df/frangidoc-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "197a0f59f8c321a1058cadfe2a78bf32", "sha256": "e8e504dda944e1d6e4124ca1e386857208c0cd16966e46c04b673bb332686b7f" }, "downloads": -1, "filename": "frangidoc-1.5.0.tar.gz", "has_sig": false, "md5_digest": "197a0f59f8c321a1058cadfe2a78bf32", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19518, "upload_time": "2018-12-11T11:07:20", "url": "https://files.pythonhosted.org/packages/ac/ba/1a11bd7502e86ba9918b10fc035364b7ac2b36a105d926255b4f9e439285/frangidoc-1.5.0.tar.gz" } ], "2.1.3": [ { "comment_text": "", "digests": { "md5": "d7391b1e1e3450fc7208709d77bc8624", "sha256": "018f1d886e7caad2901384c456ab016649d9f19f169520ebbbf9949ccfa4450e" }, "downloads": -1, "filename": "frangidoc-2.1.3.tar.gz", "has_sig": false, "md5_digest": "d7391b1e1e3450fc7208709d77bc8624", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20953, "upload_time": "2019-03-08T16:28:25", "url": "https://files.pythonhosted.org/packages/bf/0b/22b01a3d66b4550e00febbda4c12eb7770c993b12af03d3e2537b61904ba/frangidoc-2.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d7391b1e1e3450fc7208709d77bc8624", "sha256": "018f1d886e7caad2901384c456ab016649d9f19f169520ebbbf9949ccfa4450e" }, "downloads": -1, "filename": "frangidoc-2.1.3.tar.gz", "has_sig": false, "md5_digest": "d7391b1e1e3450fc7208709d77bc8624", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20953, "upload_time": "2019-03-08T16:28:25", "url": "https://files.pythonhosted.org/packages/bf/0b/22b01a3d66b4550e00febbda4c12eb7770c993b12af03d3e2537b61904ba/frangidoc-2.1.3.tar.gz" } ] }