hcli-hc


Namehcli-hc JSON
Version 0.4.0 PyPI version JSON
download
home_pageNone
SummaryHCLI hc is a pypi wrapper that contains an HCLI sample application (hc); hc can can act both as a gcode streamer (e.g. for OpenBuilds Blackbox controller v1.1g) and CNC interface. In other words, this HCLI acts in the same capacity as the OpenBuilds CONTROL software or OpenBuilds Interface CNC Touch hardware to help control a GRBL v1.1g controlled CNC.
upload_time2024-12-14 16:46:40
maintainerNone
docs_urlNone
authorNone
requires_pythonNone
licenseMIT
keywords cli client server connector hypermedia rest generic development
VCS
bugtrack_url
requirements apscheduler pyserial
Travis-CI No Travis.
coveralls test coverage No coveralls.
            |pypi| |build status| |pyver|

HCLI hc
=======

HCLI hc is a python package wrapper that contains an HCLI sample application (hc); hc can can act both as a gcode streamer (e.g. for OpenBuilds Blackbox controller v1.1g) and CNC interface. In other words, this HCLI acts in the same capacity as the OpenBuilds CONTROL software or OpenBuilds Interface CNC Touch hardware to help control a GRBL v1.1g controlled CNC.

----

HCLI hc wraps hc (an HCLI) and is intended to be used with an HCLI Client [1] as presented via an HCLI Connector [2].

You can find out more about HCLI on hcli.io [3]

[1] https://github.com/cometaj2/huckle

[2] https://github.com/cometaj2/hcli_core

[3] http://hcli.io

Installation
------------

HCLI hc requires a supported version of Python and pip.

You'll need an HCLI Connector to run hc. For example, you can use HCLI Core (https://github.com/cometaj2/hcli_core), a WSGI server such as Green Unicorn (https://gunicorn.org/), and an HCLI Client like Huckle (https://github.com/cometaj2/huckle).


.. code-block:: console

    pip install hcli-hc
    pip install hcli-core
    pip install huckle
    pip install gunicorn
    gunicorn --workers=1 --threads=1 -b 127.0.0.1:8000 "hcli_core:connector(\"`hcli_hc path`\")"

Usage
-----

Open a different shell window.

Setup the huckle env eval in your .bash_profile (or other bash configuration) to avoid having to execute eval everytime you want to invoke HCLIs by name (e.g. hc).

Note that no CLI is actually installed by Huckle. Huckle reads the HCLI semantics exposed by the API via HCLI Connector and ends up behaving *like* the CLI it targets.


.. code-block:: console

    huckle cli install http://127.0.0.1:8000
    eval $(huckle env)
    hc help

Versioning
----------
    
This project makes use of semantic versioning (http://semver.org) and may make use of the "devx",
"prealphax", "alphax" "betax", and "rcx" extensions where x is a number (e.g. 0.3.0-prealpha1)
on github.

Supports
--------

- Gcode streaming
- Immediate/realtime GRBL command execution (including during gcode streaming)
- Gcode job sequences
- CNC jogging (continuous, incremental, imperial, and metric)
- Automated serial port scanning and connectivity (hc connect)

To Do
-----

- Update GRBL controller to include support for additional commands and/or echo of hexadecimal values.
- Update hc to include job removal, insertion and resequencing.
- Update hc to function in a multi-process environment (e.g. multiple workers in gunicorn).
- Implement GRBL emulation tests for hc.

Bugs
----

.. |build status| image:: https://circleci.com/gh/cometaj2/hcli_hc.svg?style=shield
   :target: https://circleci.com/gh/cometaj2/hcli_hc
.. |pypi| image:: https://img.shields.io/pypi/v/hcli-hc?label=hcli-hc
   :target: https://pypi.org/project/hcli-hc
.. |pyver| image:: https://img.shields.io/pypi/pyversions/hcli-hc.svg
   :target: https://pypi.org/project/hcli-hc

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "hcli-hc",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "cli, client, server, connector, hypermedia, rest, generic, development",
    "author": null,
    "author_email": "Jeff Michaud <cometaj2@comcast.net>",
    "download_url": "https://files.pythonhosted.org/packages/30/d2/75d41c5a81252c698d6b9979f4a24920f5f262201e428ad508a4316f47b1/hcli_hc-0.4.0.tar.gz",
    "platform": null,
    "description": "|pypi| |build status| |pyver|\n\nHCLI hc\n=======\n\nHCLI hc is a python package wrapper that contains an HCLI sample application (hc); hc can can act both as a gcode streamer (e.g. for OpenBuilds Blackbox controller v1.1g) and CNC interface. In other words, this HCLI acts in the same capacity as the OpenBuilds CONTROL software or OpenBuilds Interface CNC Touch hardware to help control a GRBL v1.1g controlled CNC.\n\n----\n\nHCLI hc wraps hc (an HCLI) and is intended to be used with an HCLI Client [1] as presented via an HCLI Connector [2].\n\nYou can find out more about HCLI on hcli.io [3]\n\n[1] https://github.com/cometaj2/huckle\n\n[2] https://github.com/cometaj2/hcli_core\n\n[3] http://hcli.io\n\nInstallation\n------------\n\nHCLI hc requires a supported version of Python and pip.\n\nYou'll need an HCLI Connector to run hc. For example, you can use HCLI Core (https://github.com/cometaj2/hcli_core), a WSGI server such as Green Unicorn (https://gunicorn.org/), and an HCLI Client like Huckle (https://github.com/cometaj2/huckle).\n\n\n.. code-block:: console\n\n    pip install hcli-hc\n    pip install hcli-core\n    pip install huckle\n    pip install gunicorn\n    gunicorn --workers=1 --threads=1 -b 127.0.0.1:8000 \"hcli_core:connector(\\\"`hcli_hc path`\\\")\"\n\nUsage\n-----\n\nOpen a different shell window.\n\nSetup the huckle env eval in your .bash_profile (or other bash configuration) to avoid having to execute eval everytime you want to invoke HCLIs by name (e.g. hc).\n\nNote that no CLI is actually installed by Huckle. Huckle reads the HCLI semantics exposed by the API via HCLI Connector and ends up behaving *like* the CLI it targets.\n\n\n.. code-block:: console\n\n    huckle cli install http://127.0.0.1:8000\n    eval $(huckle env)\n    hc help\n\nVersioning\n----------\n    \nThis project makes use of semantic versioning (http://semver.org) and may make use of the \"devx\",\n\"prealphax\", \"alphax\" \"betax\", and \"rcx\" extensions where x is a number (e.g. 0.3.0-prealpha1)\non github.\n\nSupports\n--------\n\n- Gcode streaming\n- Immediate/realtime GRBL command execution (including during gcode streaming)\n- Gcode job sequences\n- CNC jogging (continuous, incremental, imperial, and metric)\n- Automated serial port scanning and connectivity (hc connect)\n\nTo Do\n-----\n\n- Update GRBL controller to include support for additional commands and/or echo of hexadecimal values.\n- Update hc to include job removal, insertion and resequencing.\n- Update hc to function in a multi-process environment (e.g. multiple workers in gunicorn).\n- Implement GRBL emulation tests for hc.\n\nBugs\n----\n\n.. |build status| image:: https://circleci.com/gh/cometaj2/hcli_hc.svg?style=shield\n   :target: https://circleci.com/gh/cometaj2/hcli_hc\n.. |pypi| image:: https://img.shields.io/pypi/v/hcli-hc?label=hcli-hc\n   :target: https://pypi.org/project/hcli-hc\n.. |pyver| image:: https://img.shields.io/pypi/pyversions/hcli-hc.svg\n   :target: https://pypi.org/project/hcli-hc\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "HCLI hc is a pypi wrapper that contains an HCLI sample application (hc); hc can can act both as a gcode streamer (e.g. for OpenBuilds Blackbox controller v1.1g) and CNC interface. In other words, this HCLI acts in the same capacity as the OpenBuilds CONTROL software or OpenBuilds Interface CNC Touch hardware to help control a GRBL v1.1g controlled CNC.",
    "version": "0.4.0",
    "project_urls": {
        "Homepage": "https://github.com/cometaj2/hcli_hc"
    },
    "split_keywords": [
        "cli",
        " client",
        " server",
        " connector",
        " hypermedia",
        " rest",
        " generic",
        " development"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d02aa39682dbc335f56ff8e9f61c82070c7f3a9f48ff2dfe16db473863020311",
                "md5": "8673c4ca15d7afd395a468d2ad3b3274",
                "sha256": "c26b64308248938131f99bc8c1eba829047b8f4a15c858913a08875604b0b6d5"
            },
            "downloads": -1,
            "filename": "hcli_hc-0.4.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8673c4ca15d7afd395a468d2ad3b3274",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 24022,
            "upload_time": "2024-12-14T16:46:36",
            "upload_time_iso_8601": "2024-12-14T16:46:36.419749Z",
            "url": "https://files.pythonhosted.org/packages/d0/2a/a39682dbc335f56ff8e9f61c82070c7f3a9f48ff2dfe16db473863020311/hcli_hc-0.4.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "30d275d41c5a81252c698d6b9979f4a24920f5f262201e428ad508a4316f47b1",
                "md5": "61870b367baca75567058e4ce2b91068",
                "sha256": "a7e99aa4820b2b88a3c76f31c38e40634b090b92bdbac2707009d514005da0a5"
            },
            "downloads": -1,
            "filename": "hcli_hc-0.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "61870b367baca75567058e4ce2b91068",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 21176,
            "upload_time": "2024-12-14T16:46:40",
            "upload_time_iso_8601": "2024-12-14T16:46:40.506988Z",
            "url": "https://files.pythonhosted.org/packages/30/d2/75d41c5a81252c698d6b9979f4a24920f5f262201e428ad508a4316f47b1/hcli_hc-0.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-14 16:46:40",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "cometaj2",
    "github_project": "hcli_hc",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "circle": true,
    "requirements": [
        {
            "name": "apscheduler",
            "specs": [
                [
                    "==",
                    "3.10.4"
                ]
            ]
        },
        {
            "name": "pyserial",
            "specs": [
                [
                    "==",
                    "3.5"
                ]
            ]
        }
    ],
    "lcname": "hcli-hc"
}
        
Elapsed time: 0.93798s