hoom


Namehoom JSON
Version 0.1.6 PyPI version JSON
download
home_pagehttps://berrysauce.me/hoom
SummaryBuild your own HomeKit Bridge & Accessories with Hoom
upload_time2023-08-21 12:14:36
maintainer
docs_urlNone
authorPaul Haedrich
requires_python>=3.8,<4.0
licenseGPL-3.0-only
keywords
VCS
bugtrack_url
requirements HAP-python fastapi uvicorn jinja2 pyqrcode base36 colorama
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <img src="https://bcdn.berrysauce.me/shared/hoom-banner-modified.png">

<br>

<h1 align="center">Hoom</h1>
<p align="center">Build your own HomeKit Bridge & Accessories with Hoom</p>
<p align="center">
    <img alt="CodeQL Status" src="https://github.com/berrysauce/hoom/actions/workflows/github-code-scanning/codeql/badge.svg"/>
    <img alt="PyPi Publishing Status" src="https://github.com/berrysauce/hoom/actions/workflows/python-publish.yml/badge.svg"/>
    <img alt="Documentation Status" src="https://github.com/berrysauce/hoom/actions/workflows/docs.yml/badge.svg"/>
    <img alt="PyPi Python Versions" src="https://img.shields.io/pypi/pyversions/hoom"/>
    <img alt="PyPi Package Downloads" src="https://img.shields.io/pypi/dm/hoom?color=blue"/>
</p>

<br>

> 🚧 **Please note**: Hoom is still under development. It is not recommended at this point, to use Hoom in a production environment.

<br>

## ✨ Features
- [x] HomeKit Bridge
- [x] Minimalist Web UI
- [x] Create custom HomeKit Accessories with function decorators
- [x] Customizable
- [x] Easy to use

<br>

## 📦 Installation
Hoom is available on [PyPi](https://pypi.org/project/hoom/). You can easily install it using pip:

```bash
pip install hoom
```

> **Note**: Hoom requires Python 3.8 or higher

<br>

## 🚀 Getting started
Here's a demo script which shows how easy Hoom is to use:

```python
from hoom import Hoom
from hoom.accessory_types import Switch

hoom = Hoom()

@hoom.switch("Switch ")
def switch(response: Switch.Response):
    if response.on:
        print("Switch is now on")
    else:
        print("Switch is now off")
        
    return

hoom.run()
```

As you can see, Hoom is very similar to frameworks like FastAPI. No need for complicated classes with lots of methods. Just use the `@hoom.<<accessory>>` decorator and you're good to go.

If you want to know how to create other accessories, [take a look at the documentation](https://berrysauce.me/hoom/).

<br>

## 📣 Credits
A special thanks goes out to these Python packages/frameworks and their authors:

- [HAP-python](https://github.com/ikalchev/HAP-python) - Hoom wouldn't be possible without this HomeKit Accessory Protocol implementation by [Ivan Kalchev](https://github.com/ikalchev)
- [FastAPI](https://github.com/tiangolo/fastapi) - Hoom uses FastAPI by [Sebastián Ramírez](https://github.com/tiangolo) for its web server & UI and is heavily inspired by it

A special thanks also goes out to:

- [Tabler Icons](https://tabler-icons.io/) - The icon for Hoom is from Tabler Icons


            

Raw data

            {
    "_id": null,
    "home_page": "https://berrysauce.me/hoom",
    "name": "hoom",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "Paul Haedrich",
    "author_email": "hey@foerstal.com",
    "download_url": "https://files.pythonhosted.org/packages/ac/b0/283e714eeae328b94861d00225ead998565191a610255ea846f58f12b197/hoom-0.1.6.tar.gz",
    "platform": null,
    "description": "<img src=\"https://bcdn.berrysauce.me/shared/hoom-banner-modified.png\">\n\n<br>\n\n<h1 align=\"center\">Hoom</h1>\n<p align=\"center\">Build your own HomeKit Bridge & Accessories with Hoom</p>\n<p align=\"center\">\n    <img alt=\"CodeQL Status\" src=\"https://github.com/berrysauce/hoom/actions/workflows/github-code-scanning/codeql/badge.svg\"/>\n    <img alt=\"PyPi Publishing Status\" src=\"https://github.com/berrysauce/hoom/actions/workflows/python-publish.yml/badge.svg\"/>\n    <img alt=\"Documentation Status\" src=\"https://github.com/berrysauce/hoom/actions/workflows/docs.yml/badge.svg\"/>\n    <img alt=\"PyPi Python Versions\" src=\"https://img.shields.io/pypi/pyversions/hoom\"/>\n    <img alt=\"PyPi Package Downloads\" src=\"https://img.shields.io/pypi/dm/hoom?color=blue\"/>\n</p>\n\n<br>\n\n> \ud83d\udea7 **Please note**: Hoom is still under development. It is not recommended at this point, to use Hoom in a production environment.\n\n<br>\n\n## \u2728 Features\n- [x] HomeKit Bridge\n- [x] Minimalist Web UI\n- [x] Create custom HomeKit Accessories with function decorators\n- [x] Customizable\n- [x] Easy to use\n\n<br>\n\n## \ud83d\udce6 Installation\nHoom is available on [PyPi](https://pypi.org/project/hoom/). You can easily install it using pip:\n\n```bash\npip install hoom\n```\n\n> **Note**: Hoom requires Python 3.8 or higher\n\n<br>\n\n## \ud83d\ude80 Getting started\nHere's a demo script which shows how easy Hoom is to use:\n\n```python\nfrom hoom import Hoom\nfrom hoom.accessory_types import Switch\n\nhoom = Hoom()\n\n@hoom.switch(\"Switch \")\ndef switch(response: Switch.Response):\n    if response.on:\n        print(\"Switch is now on\")\n    else:\n        print(\"Switch is now off\")\n        \n    return\n\nhoom.run()\n```\n\nAs you can see, Hoom is very similar to frameworks like FastAPI. No need for complicated classes with lots of methods. Just use the `@hoom.<<accessory>>` decorator and you're good to go.\n\nIf you want to know how to create other accessories, [take a look at the documentation](https://berrysauce.me/hoom/).\n\n<br>\n\n## \ud83d\udce3 Credits\nA special thanks goes out to these Python packages/frameworks and their authors:\n\n- [HAP-python](https://github.com/ikalchev/HAP-python) - Hoom wouldn't be possible without this HomeKit Accessory Protocol implementation by [Ivan Kalchev](https://github.com/ikalchev)\n- [FastAPI](https://github.com/tiangolo/fastapi) - Hoom uses FastAPI by [Sebasti\u00e1n Ram\u00edrez](https://github.com/tiangolo) for its web server & UI and is heavily inspired by it\n\nA special thanks also goes out to:\n\n- [Tabler Icons](https://tabler-icons.io/) - The icon for Hoom is from Tabler Icons\n\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-only",
    "summary": "Build your own HomeKit Bridge & Accessories with Hoom",
    "version": "0.1.6",
    "project_urls": {
        "Documentation": "https://berrysauce.me/hoom",
        "Homepage": "https://berrysauce.me/hoom",
        "Repository": "https://github.com/berrysauce/hoom"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "459427454e485d492e8336511280043dc725c8a6fb3a45dbf2e20c50811dbcef",
                "md5": "e8d4a08596e6f93cc9e6d530354e77bd",
                "sha256": "33aed2a018ff005f66c147c345033ca5ccced06594d4d2d75d5505f1e01a9c24"
            },
            "downloads": -1,
            "filename": "hoom-0.1.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e8d4a08596e6f93cc9e6d530354e77bd",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<4.0",
            "size": 115038,
            "upload_time": "2023-08-21T12:14:35",
            "upload_time_iso_8601": "2023-08-21T12:14:35.150867Z",
            "url": "https://files.pythonhosted.org/packages/45/94/27454e485d492e8336511280043dc725c8a6fb3a45dbf2e20c50811dbcef/hoom-0.1.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "acb0283e714eeae328b94861d00225ead998565191a610255ea846f58f12b197",
                "md5": "e3badc125d9539f7c956728f17ce5dbc",
                "sha256": "f284309d333d78d9bc995c6e2474c4cf7883b35922c33c0765c556ddc71ca08c"
            },
            "downloads": -1,
            "filename": "hoom-0.1.6.tar.gz",
            "has_sig": false,
            "md5_digest": "e3badc125d9539f7c956728f17ce5dbc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<4.0",
            "size": 113356,
            "upload_time": "2023-08-21T12:14:36",
            "upload_time_iso_8601": "2023-08-21T12:14:36.802584Z",
            "url": "https://files.pythonhosted.org/packages/ac/b0/283e714eeae328b94861d00225ead998565191a610255ea846f58f12b197/hoom-0.1.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-21 12:14:36",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "berrysauce",
    "github_project": "hoom",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "HAP-python",
            "specs": []
        },
        {
            "name": "fastapi",
            "specs": []
        },
        {
            "name": "uvicorn",
            "specs": []
        },
        {
            "name": "jinja2",
            "specs": []
        },
        {
            "name": "pyqrcode",
            "specs": []
        },
        {
            "name": "base36",
            "specs": []
        },
        {
            "name": "colorama",
            "specs": []
        }
    ],
    "lcname": "hoom"
}
        
Elapsed time: 0.18870s