# PICLE - Python Interactive Command Line Shells
PICLE is a module to construct interactive command line shell
applications using Pydantic models.
Built on top of Python's standard library
[CMD module](https://docs.python.org/3/library/cmd.html) and
uses [Pydantic](https://docs.pydantic.dev/) models to construct
shell environments.
Welcome to [documentation](https://dmulyalin.github.io/picle/) to
explore it further.
# Comparison With Other Projects
[python-nubia](https://github.com/facebookarchive/python-nubia) by
Facebook - unfortunately this project no longer maintained, it also
provides no integration with Pydantic.
Why not [python-fire](https://github.com/google/python-fire),
[click](https://github.com/pallets/click) or
[argparse](https://docs.python.org/3/library/argparse.html) -
all these libraries are great for building command line tools,
but they provide no support for interactive shell or input
comprehensive validation supported by Pydantic.
Why not
[prompt-toolkit](https://github.com/prompt-toolkit/python-prompt-toolkit)
or [textual](https://github.com/Textualize/textual) - those are extremely
good libraries for building Terminal User Interface (TUI) applications but
they provide no support for interactive shell and Pydantic validation of
input.
Raw data
{
"_id": null,
"home_page": "https://github.com/dmulyalin/picle",
"name": "picle",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Denis Mulyalin",
"author_email": "d.mulyalin@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/e2/e1/b606049a964daba844c5faffcb5595ccb16de801ba71c88368a191b7a9e3/picle-0.8.4.tar.gz",
"platform": null,
"description": "# PICLE - Python Interactive Command Line Shells\n\nPICLE is a module to construct interactive command line shell\napplications using Pydantic models.\n\nBuilt on top of Python's standard library\n[CMD module](https://docs.python.org/3/library/cmd.html) and\nuses [Pydantic](https://docs.pydantic.dev/) models to construct\nshell environments.\n\nWelcome to [documentation](https://dmulyalin.github.io/picle/) to\nexplore it further.\n\n# Comparison With Other Projects\n\n[python-nubia](https://github.com/facebookarchive/python-nubia) by\nFacebook - unfortunately this project no longer maintained, it also\nprovides no integration with Pydantic.\n\nWhy not [python-fire](https://github.com/google/python-fire),\n[click](https://github.com/pallets/click) or\n[argparse](https://docs.python.org/3/library/argparse.html) -\nall these libraries are great for building command line tools,\nbut they provide no support for interactive shell or input\ncomprehensive validation supported by Pydantic.\n\nWhy not\n[prompt-toolkit](https://github.com/prompt-toolkit/python-prompt-toolkit)\nor [textual](https://github.com/Textualize/textual) - those are extremely\ngood libraries for building Terminal User Interface (TUI) applications but\nthey provide no support for interactive shell and Pydantic validation of\ninput.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Python Interactive Command Line Shells",
"version": "0.8.4",
"project_urls": {
"Documentation": "https://dmulyalin.github.io/picle/",
"Homepage": "https://github.com/dmulyalin/picle",
"Repository": "https://github.com/dmulyalin/picle"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "62df9c421e869ddadda5fb7f6d309cd32fb86b87a35ffea8bdc1eee641806e10",
"md5": "35c0c301ed6eba15cdf2fedb7568be1a",
"sha256": "b937d17e18cc86959568d97831d08f269338cee2f492a748e86174258c0c88e8"
},
"downloads": -1,
"filename": "picle-0.8.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "35c0c301ed6eba15cdf2fedb7568be1a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 16021,
"upload_time": "2025-01-19T08:34:37",
"upload_time_iso_8601": "2025-01-19T08:34:37.052160Z",
"url": "https://files.pythonhosted.org/packages/62/df/9c421e869ddadda5fb7f6d309cd32fb86b87a35ffea8bdc1eee641806e10/picle-0.8.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e2e1b606049a964daba844c5faffcb5595ccb16de801ba71c88368a191b7a9e3",
"md5": "c629ed4d5b9d32ec58aad7c024df037b",
"sha256": "7554cbcd97efb473a9d93fae0eb15db095e09c966d085052b61114aef2b1ec2e"
},
"downloads": -1,
"filename": "picle-0.8.4.tar.gz",
"has_sig": false,
"md5_digest": "c629ed4d5b9d32ec58aad7c024df037b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 15010,
"upload_time": "2025-01-19T08:34:39",
"upload_time_iso_8601": "2025-01-19T08:34:39.341866Z",
"url": "https://files.pythonhosted.org/packages/e2/e1/b606049a964daba844c5faffcb5595ccb16de801ba71c88368a191b7a9e3/picle-0.8.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-19 08:34:39",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "dmulyalin",
"github_project": "picle",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "picle"
}