# Docu-lite-kit
Standalone cli/importable components inspired by [docu-lite](https://pypi.org/project/docu-lite/)
The first component here is the ultra-light Python parser:
- Rewritten to be more robust around docstrings
- Packaged to be useable from the command line or imported as a module into other code
- Soon to replace the parser used within docu-lite
Current plans / ideas:
- Add the 'pattern'/'include' options in the demo file as cli arguments
- Add standalone / importable docu-lite-like html rendering components
- Add standalone / importable API delta checkers
## Screenshot
<img width="1296" height="589" alt="Capture" src="https://github.com/user-attachments/assets/d446b89a-4313-4599-9e97-a015ffe505e6" />
## ๐ Installation
Install using pip: open a command window and type
```
pip install docu-lite-kit
```
## ๐ก Usage
### Command line:
```
dlk.cli [-h] [--out] [--noprint] input.py
```
- -h = show help
- --out specifies the output file (JSON format)
- --noprint = don't print the basic printout to the console
### Imported as a module:
```
import dlk
```
Provides the following three interfaces (see demo_minimal.py):
```
input_file = r"./demo_minimal.py"
# parse the doc looking for objects matching a,b,c,d:
# parser = dlk.dlkIO(input_file, [ pattern_list = [a,b,c,d] ])
# For the pattern list, docstring and body are implied & don't need to be mentioned.
# The pattern list itself is optional and defaults to ['class', 'def']
parser = dlk.dlkIO(input_file)
# print out the result including the elements a,b,c,d:
# parser.dlkPrint([a,b,c,d])
# This time 'docstring' and 'body' do need to be explicitly mentioned if wanted in the printout
# However pattern list is optional and defaults to ['class', 'def', 'docstring']
# parser.dlkPrint( pattern_list = ['def', 'class', 'docstring', 'body'])
parser.dlkPrint(['def', 'class', 'docstring', 'body'])
# Similar to dlkPrint, this dumps the output to a JSON file:
# parser.dlkDumpJSON(self, JSON_file = 'dlk.json', pattern_list = ['def', 'class', 'docstring'])
parser.dlkDumpJSON()
```
[PyPI link](https://pypi.org/project/docu-lite-kit/)
Raw data
{
"_id": null,
"home_page": null,
"name": "docu-lite-kit",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "documentation, docstring, python, html, code-outline, doc-generator, lightweight, static, cli, developer-tools",
"author": null,
"author_email": "G1OJS <g1ojs@yahoo.com>",
"download_url": "https://files.pythonhosted.org/packages/9e/f1/d3883d3f31c6912bc50e7d11f685ca8b628ca624a745fa9f2d27bbc72344/docu_lite_kit-0.3.0.tar.gz",
"platform": null,
"description": "# Docu-lite-kit\r\nStandalone cli/importable components inspired by [docu-lite](https://pypi.org/project/docu-lite/)\r\n\r\nThe first component here is the ultra-light Python parser:\r\n- Rewritten to be more robust around docstrings\r\n- Packaged to be useable from the command line or imported as a module into other code\r\n- Soon to replace the parser used within docu-lite\r\n\r\nCurrent plans / ideas:\r\n- Add the 'pattern'/'include' options in the demo file as cli arguments\r\n- Add standalone / importable docu-lite-like html rendering components\r\n- Add standalone / importable API delta checkers\r\n \r\n## Screenshot\r\n<img width=\"1296\" height=\"589\" alt=\"Capture\" src=\"https://github.com/user-attachments/assets/d446b89a-4313-4599-9e97-a015ffe505e6\" />\r\n\r\n\r\n## \ud83d\udee0 Installation\r\n\r\nInstall using pip: open a command window and type\r\n\r\n```\r\npip install docu-lite-kit\r\n```\r\n## \ud83d\udca1 Usage\r\n### Command line:\r\n```\r\ndlk.cli [-h] [--out] [--noprint] input.py\r\n```\r\n- -h = show help\r\n- --out specifies the output file (JSON format)\r\n- --noprint = don't print the basic printout to the console \r\n\r\n### Imported as a module:\r\n```\r\nimport dlk\r\n```\r\n\r\nProvides the following three interfaces (see demo_minimal.py):\r\n```\r\n input_file = r\"./demo_minimal.py\"\r\n # parse the doc looking for objects matching a,b,c,d:\r\n # parser = dlk.dlkIO(input_file, [ pattern_list = [a,b,c,d] ])\r\n # For the pattern list, docstring and body are implied & don't need to be mentioned.\r\n # The pattern list itself is optional and defaults to ['class', 'def']\r\n parser = dlk.dlkIO(input_file)\r\n\r\n # print out the result including the elements a,b,c,d:\r\n # parser.dlkPrint([a,b,c,d])\r\n # This time 'docstring' and 'body' do need to be explicitly mentioned if wanted in the printout\r\n # However pattern list is optional and defaults to ['class', 'def', 'docstring']\r\n # parser.dlkPrint( pattern_list = ['def', 'class', 'docstring', 'body'])\r\n parser.dlkPrint(['def', 'class', 'docstring', 'body'])\r\n\r\n # Similar to dlkPrint, this dumps the output to a JSON file:\r\n # parser.dlkDumpJSON(self, JSON_file = 'dlk.json', pattern_list = ['def', 'class', 'docstring'])\r\n parser.dlkDumpJSON()\r\n\r\n```\r\n\r\n[PyPI link](https://pypi.org/project/docu-lite-kit/)\r\n",
"bugtrack_url": null,
"license": null,
"summary": "\ud83e\uddfe docu-lite-kit: Ultra-light cli/importable Python code parser tools",
"version": "0.3.0",
"project_urls": {
"Homepage": "https://github.com/G1OJS/docu-lite-kit",
"Issues": "https://github.com/G1OJS/docu-lite-kit/issues"
},
"split_keywords": [
"documentation",
" docstring",
" python",
" html",
" code-outline",
" doc-generator",
" lightweight",
" static",
" cli",
" developer-tools"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "60fe01cf9d921cf548a1e92e8a11f139a1d782b92684528d9497a34ca805f03e",
"md5": "31ca8ebaf877c633539007aeec3e1c29",
"sha256": "25cffe8fbe53665262610462ef9016af2e8185e5f81e3e5509c3c50e83bea927"
},
"downloads": -1,
"filename": "docu_lite_kit-0.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "31ca8ebaf877c633539007aeec3e1c29",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 5929,
"upload_time": "2025-08-01T23:02:28",
"upload_time_iso_8601": "2025-08-01T23:02:28.498601Z",
"url": "https://files.pythonhosted.org/packages/60/fe/01cf9d921cf548a1e92e8a11f139a1d782b92684528d9497a34ca805f03e/docu_lite_kit-0.3.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9ef1d3883d3f31c6912bc50e7d11f685ca8b628ca624a745fa9f2d27bbc72344",
"md5": "02f785bcfcd609679a20fabd5d696aa7",
"sha256": "3f90209c4cc4a4d100d7e9df18472c52f88ee143a16bc6249371c46b0389eaf7"
},
"downloads": -1,
"filename": "docu_lite_kit-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "02f785bcfcd609679a20fabd5d696aa7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 5181,
"upload_time": "2025-08-01T23:02:29",
"upload_time_iso_8601": "2025-08-01T23:02:29.581534Z",
"url": "https://files.pythonhosted.org/packages/9e/f1/d3883d3f31c6912bc50e7d11f685ca8b628ca624a745fa9f2d27bbc72344/docu_lite_kit-0.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-01 23:02:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "G1OJS",
"github_project": "docu-lite-kit",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "docu-lite-kit"
}