# ahk-server
A server to allow remote execution of AutoHotkey using the Python [ahk](https://github.com/spyoungtech/ahk) wrapper.
Uses fastapi.
## Installation
```bash
pip install ahk-server
```
Requires you have AutoHotkey installed. See [ahk readme](https://github.com/spyoungtech/ahk) for non-python dependencies.
## Usage
To start the server:
```bash
python -m ahk_server
```
This accepts two optional command line parameters: `--host` and `--port`. Alternatively, you can also configure the host
and port by setting the environment variables `AHK_SERVER_HOST` and `AHK_SERVER_PORT`.
Alternatively still, you can also invoke the server using `uvicorn`
```bash
uvicorn ahk_server.app:app
```
## Standalone release
`ahk-server` is also available in a standalone exe release which can be found in the [releases page](https://github.com/spyoungtech/ahk-server/releases)
For connecting to the server, see the client project: [ahk-client](https://github.com/spyoungtech/ahk-client).
## Status
This project (and its client counterpart) is usable, but in **very** early stages of development.
Notably, it does not currently include any authentication mechanisms for securing server connections, so use with caution.
TODO:
A noninclusive list of things that might come in the future:
- [ ] support some kind of basic authentication
- [ ] implement `run_script` functionality
- [ ] implement non-blocking functionality
- [ ] implement extension negotiation with clients
Raw data
{
"_id": null,
"home_page": "https://github.com/spyoungtech/ahk-server",
"name": "ahk-server",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8.0",
"maintainer_email": null,
"keywords": "ahk, autohotkey, windows, mouse, keyboard, automation, pyautogui, server, remote",
"author": "Spencer Young",
"author_email": "spencer.young@spyoung.com",
"download_url": "https://files.pythonhosted.org/packages/a4/fc/cc0e42bf8913610d034527cf13224c16ddbc84677bf7afe73dbbce683226/ahk_server-0.1.0.tar.gz",
"platform": null,
"description": "# ahk-server\n\nA server to allow remote execution of AutoHotkey using the Python [ahk](https://github.com/spyoungtech/ahk) wrapper. \nUses fastapi.\n\n\n## Installation\n\n```bash\npip install ahk-server\n```\n\nRequires you have AutoHotkey installed. See [ahk readme](https://github.com/spyoungtech/ahk) for non-python dependencies.\n\n## Usage\n\nTo start the server:\n\n```bash\npython -m ahk_server\n```\nThis accepts two optional command line parameters: `--host` and `--port`. Alternatively, you can also configure the host \nand port by setting the environment variables `AHK_SERVER_HOST` and `AHK_SERVER_PORT`.\n\nAlternatively still, you can also invoke the server using `uvicorn`\n```bash\nuvicorn ahk_server.app:app\n```\n\n## Standalone release\n\n`ahk-server` is also available in a standalone exe release which can be found in the [releases page](https://github.com/spyoungtech/ahk-server/releases)\n\nFor connecting to the server, see the client project: [ahk-client](https://github.com/spyoungtech/ahk-client).\n\n\n## Status\n\nThis project (and its client counterpart) is usable, but in **very** early stages of development. \nNotably, it does not currently include any authentication mechanisms for securing server connections, so use with caution.\n\n\nTODO:\n\nA noninclusive list of things that might come in the future:\n\n- [ ] support some kind of basic authentication\n- [ ] implement `run_script` functionality\n- [ ] implement non-blocking functionality\n- [ ] implement extension negotiation with clients\n",
"bugtrack_url": null,
"license": null,
"summary": "An AutoHotkey server allowing remote clients to execute ahk functionality",
"version": "0.1.0",
"project_urls": {
"Documentation": "https://github.com/spyoungtech/ahk-server",
"Funding": "https://github.com/sponsors/spyoungtech/",
"Homepage": "https://github.com/spyoungtech/ahk-server",
"Source": "https://github.com/spyoungtech/ahk-server",
"Tracker": "https://github.com/spyoungtech/ahk-server/issues"
},
"split_keywords": [
"ahk",
" autohotkey",
" windows",
" mouse",
" keyboard",
" automation",
" pyautogui",
" server",
" remote"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b73c4e33077740617286ab0a92c2b4a00e7fcef3afb0643eb298a29cef4b69cb",
"md5": "7eeca95189e9997648d84f55b7727e6a",
"sha256": "d9e5d1f132e2d4a53995203aafb260258b0794f92b93ced9769dcef516aab3ab"
},
"downloads": -1,
"filename": "ahk_server-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7eeca95189e9997648d84f55b7727e6a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8.0",
"size": 4489,
"upload_time": "2024-05-23T06:06:07",
"upload_time_iso_8601": "2024-05-23T06:06:07.317553Z",
"url": "https://files.pythonhosted.org/packages/b7/3c/4e33077740617286ab0a92c2b4a00e7fcef3afb0643eb298a29cef4b69cb/ahk_server-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a4fccc0e42bf8913610d034527cf13224c16ddbc84677bf7afe73dbbce683226",
"md5": "4c2acc7b1ed23425be503d836ffb78b6",
"sha256": "7d44e676c60bcd04a9617290eeb5daf6cc5c011724718fc316482ce4a974ed1d"
},
"downloads": -1,
"filename": "ahk_server-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "4c2acc7b1ed23425be503d836ffb78b6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8.0",
"size": 4154,
"upload_time": "2024-05-23T06:06:08",
"upload_time_iso_8601": "2024-05-23T06:06:08.939490Z",
"url": "https://files.pythonhosted.org/packages/a4/fc/cc0e42bf8913610d034527cf13224c16ddbc84677bf7afe73dbbce683226/ahk_server-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-23 06:06:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "spyoungtech",
"github_project": "ahk-server",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "ahk-server"
}