# htty - A fork of [ht](https://github.com/andyk/ht)
`htty` controls processes that are attached to a headless terminal.
It has both a command line interface, and a Python API.
For a better idea of what it does, see [the toplevel README](https://github.com/MatrixManAtYrService/htty) or [the docs](https://matrixmanatyrservice.github.io/htty/htty.html) instead.
## Components
This repo includes two packages. It was necesssary to split them up because [Maturin refuses](https://github.com/PyO3/maturin/discussions/2683) to building packages with both rust binaries and python console scripts. `htty-core` got the rust binary, `htty` got the pyton API and the console script.
- **[htty](../README.md)** - Contains both the `htty` command, and the `htty` python library. It is packaged as a pure python source distribution.
- **[htty-core](../htty-core/README.md)** You're viewing the README for this one. It contains the `ht` binary (built by [maturin](https://github.com/PyO3/maturin)) and a minimal python interface for running it. It's packaged as an architecture-specific wheel.
`htty` depends on `htty-core`.
It was necesssary to split them up because [Maturin objects](https://github.com/PyO3/maturin/blob/a50defe91c2c779d7f9aedb2ac0a788286f45ae8/src/build_context.rs#L1066) to building packages with both rust binaries and python console scripts.
`htty-core` got the rust binary, `htty` got the pyton API and the console script.
Raw data
{
"_id": null,
"home_page": "https://github.com/MatrixManAtYrService/ht",
"name": "htty-core",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "terminal, automation, pty, headless, subprocess",
"author": null,
"author_email": "Matt Rixman <MatrixManAtYrService@users.noreply.github.com>",
"download_url": null,
"platform": null,
"description": "# htty - A fork of [ht](https://github.com/andyk/ht)\n\n`htty` controls processes that are attached to a headless terminal.\nIt has both a command line interface, and a Python API.\n\nFor a better idea of what it does, see [the toplevel README](https://github.com/MatrixManAtYrService/htty) or [the docs](https://matrixmanatyrservice.github.io/htty/htty.html) instead.\n\n## Components\n\nThis repo includes two packages. It was necesssary to split them up because [Maturin refuses](https://github.com/PyO3/maturin/discussions/2683) to building packages with both rust binaries and python console scripts. `htty-core` got the rust binary, `htty` got the pyton API and the console script.\n\n- **[htty](../README.md)** - Contains both the `htty` command, and the `htty` python library. It is packaged as a pure python source distribution.\n- **[htty-core](../htty-core/README.md)** You're viewing the README for this one. It contains the `ht` binary (built by [maturin](https://github.com/PyO3/maturin)) and a minimal python interface for running it. It's packaged as an architecture-specific wheel.\n\n`htty` depends on `htty-core`.\nIt was necesssary to split them up because [Maturin objects](https://github.com/PyO3/maturin/blob/a50defe91c2c779d7f9aedb2ac0a788286f45ae8/src/build_context.rs#L1066) to building packages with both rust binaries and python console scripts.\n`htty-core` got the rust binary, `htty` got the pyton API and the console script.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Headless Terminal - Rust binary for terminal automation",
"version": "0.2.30",
"project_urls": {
"Documentation": "https://github.com/MatrixManAtYrService/ht",
"Homepage": "https://github.com/MatrixManAtYrService/ht",
"Issues": "https://github.com/MatrixManAtYrService/ht/issues",
"Repository": "https://github.com/MatrixManAtYrService/ht"
},
"split_keywords": [
"terminal",
" automation",
" pty",
" headless",
" subprocess"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "b99629997692ef0818822263ca72614e3f835f270d2f51d4ca4a3f8074660b36",
"md5": "bb90c39a4fc7bb7f7013af22b4650ba1",
"sha256": "e70baee02472022ecfc51848b116d0e2d015bec05f804f1672df014e6bd6b13d"
},
"downloads": -1,
"filename": "htty_core-0.2.30-py3-none-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "bb90c39a4fc7bb7f7013af22b4650ba1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 1032458,
"upload_time": "2025-07-27T00:49:31",
"upload_time_iso_8601": "2025-07-27T00:49:31.027032Z",
"url": "https://files.pythonhosted.org/packages/b9/96/29997692ef0818822263ca72614e3f835f270d2f51d4ca4a3f8074660b36/htty_core-0.2.30-py3-none-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e117bce6865e27eef91835dbbd8a7796037febaeb7e6d1223a58ada2028f982f",
"md5": "51d2b70461e486d5f6985ed326b98d17",
"sha256": "b29a506d0f26c7bf55b7b317d1c2b6dcc60e6aa2fc0308ad9e24c4f117cea814"
},
"downloads": -1,
"filename": "htty_core-0.2.30-py3-none-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "51d2b70461e486d5f6985ed326b98d17",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 1010074,
"upload_time": "2025-07-27T00:49:32",
"upload_time_iso_8601": "2025-07-27T00:49:32.365499Z",
"url": "https://files.pythonhosted.org/packages/e1/17/bce6865e27eef91835dbbd8a7796037febaeb7e6d1223a58ada2028f982f/htty_core-0.2.30-py3-none-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "660067a9774f2326a0c5d8e37d5834688fe7e495b759861b39b0b9bdcd67bccf",
"md5": "996aa625781592e5a6ea492adf572b6b",
"sha256": "8dbc006a78d14c822591c47ba5d09364c2b479f8f717b84bcb55c62da0579c6b"
},
"downloads": -1,
"filename": "htty_core-0.2.30-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "996aa625781592e5a6ea492adf572b6b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 1037332,
"upload_time": "2025-07-27T00:49:33",
"upload_time_iso_8601": "2025-07-27T00:49:33.554813Z",
"url": "https://files.pythonhosted.org/packages/66/00/67a9774f2326a0c5d8e37d5834688fe7e495b759861b39b0b9bdcd67bccf/htty_core-0.2.30-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ca4fa9ff9ff29a181d481c0837c249eec6c3cc6f0a0d706fbfe356c656577cb5",
"md5": "cc9dfd6a314c1f9a35bd0b4d323d9726",
"sha256": "afc215a365dff032778222aea28c3e2de88d2b4792ab7e2dd94275c33f9fcf55"
},
"downloads": -1,
"filename": "htty_core-0.2.30-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "cc9dfd6a314c1f9a35bd0b4d323d9726",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 1081307,
"upload_time": "2025-07-27T00:49:34",
"upload_time_iso_8601": "2025-07-27T00:49:34.953853Z",
"url": "https://files.pythonhosted.org/packages/ca/4f/a9ff9ff29a181d481c0837c249eec6c3cc6f0a0d706fbfe356c656577cb5/htty_core-0.2.30-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-27 00:49:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "MatrixManAtYrService",
"github_project": "ht",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "htty-core"
}