knuckles


Nameknuckles JSON
Version 1.2.0 PyPI version JSON
download
home_pageNone
SummaryA Subsonic/OpenSubsonic API wrapper for Python.
upload_time2024-11-24 13:55:23
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11.0
licenseNone
keywords api-wrapper api wrapper library subsonic opensubsonic
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center" markdown="1">
<h1>Knuckles</h1>

![PyPI - Version](https://img.shields.io/pypi/v/knuckles)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/knuckles)
![GitHub Actions - PyPI Publishing](https://github.com/kutu-dev/knuckles/actions/workflows/publish.yml/badge.svg)
![GitHub Actions - Docs Deploying](https://github.com/kutu-dev/knuckles/actions/workflows/docs.yml/badge.svg)

An unopinionated [OpenSubsonic](https://opensubsonic.netlify.app/) API wrapper for Python.
</div>

## Compatiblity
Knuckles **only** works with servers compatible with the REST API version 1.4.0 onwards (Subsonic 4.2+).
It follows strictly the [OpenSubsonic API Spec](https://opensubsonic.netlify.app/docs/opensubsonic-api/), being fully retro-compatible with the original [Subsonic API](https://subsonic.org/pages/api.jsp).

## Getting Started

### Make It Available
First install the package:

```sh title="Command line"
python3 -m pip install knuckles
```

Or add it to your project:

```toml title="pyproject.toml"
project = [
    "knuckles>=1.1.0"
]
```

### Using It

```python3 title="__main__.py"
import knuckles

server = knuckles.Subsonic(
    # Adding https:// is done automatically,
    # /rest should never be added to the URL
    url = "example.com",
    user = "kutu",
    password = "caisopea",
    client = "knuckles client"
)

ping = server.system.ping()

# Print the supported version of the OpenSubsonic REST API
print(ping.version)
```

### Learning More
To start making more complex interactions with the API make use of [the API reference](https://kutu-dev.github.io/knuckles/reference/Api/). Enjoy coding and good luck!

## Acknowledgements
Created with :heart: by [Jorge "Kutu" Dobón Blanco](https://dobon.dev).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "knuckles",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11.0",
    "maintainer_email": null,
    "keywords": "api-wrapper, api, wrapper, library, subsonic, opensubsonic",
    "author": null,
    "author_email": "\"Jorge \\\"Kutu\\\" Dob\u00f3n Blanco\" <code@dobon.dev>",
    "download_url": "https://files.pythonhosted.org/packages/63/70/bc05617890d981cb79931de0eea770ee7899c16e4e2e3055d28a9598e8a1/knuckles-1.2.0.tar.gz",
    "platform": null,
    "description": "<div align=\"center\" markdown=\"1\">\n<h1>Knuckles</h1>\n\n![PyPI - Version](https://img.shields.io/pypi/v/knuckles)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/knuckles)\n![GitHub Actions - PyPI Publishing](https://github.com/kutu-dev/knuckles/actions/workflows/publish.yml/badge.svg)\n![GitHub Actions - Docs Deploying](https://github.com/kutu-dev/knuckles/actions/workflows/docs.yml/badge.svg)\n\nAn unopinionated [OpenSubsonic](https://opensubsonic.netlify.app/) API wrapper for Python.\n</div>\n\n## Compatiblity\nKnuckles **only** works with servers compatible with the REST API version 1.4.0 onwards (Subsonic 4.2+).\nIt follows strictly the [OpenSubsonic API Spec](https://opensubsonic.netlify.app/docs/opensubsonic-api/), being fully retro-compatible with the original [Subsonic API](https://subsonic.org/pages/api.jsp).\n\n## Getting Started\n\n### Make It Available\nFirst install the package:\n\n```sh title=\"Command line\"\npython3 -m pip install knuckles\n```\n\nOr add it to your project:\n\n```toml title=\"pyproject.toml\"\nproject = [\n    \"knuckles>=1.1.0\"\n]\n```\n\n### Using It\n\n```python3 title=\"__main__.py\"\nimport knuckles\n\nserver = knuckles.Subsonic(\n    # Adding https:// is done automatically,\n    # /rest should never be added to the URL\n    url = \"example.com\",\n    user = \"kutu\",\n    password = \"caisopea\",\n    client = \"knuckles client\"\n)\n\nping = server.system.ping()\n\n# Print the supported version of the OpenSubsonic REST API\nprint(ping.version)\n```\n\n### Learning More\nTo start making more complex interactions with the API make use of [the API reference](https://kutu-dev.github.io/knuckles/reference/Api/). Enjoy coding and good luck!\n\n## Acknowledgements\nCreated with :heart: by [Jorge \"Kutu\" Dob\u00f3n Blanco](https://dobon.dev).\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A Subsonic/OpenSubsonic API wrapper for Python.",
    "version": "1.2.0",
    "project_urls": {
        "Changelog": "https://github.com/kutu-dev/knuckles/blob/master/CHANGELOG.md",
        "Documentation": "https://kutu-dev.github.io/knuckles/",
        "Issues": "https://github.com/kutu-dev/knuckles/issues",
        "Repository": "https://github.com/kutu-dev/knuckles"
    },
    "split_keywords": [
        "api-wrapper",
        " api",
        " wrapper",
        " library",
        " subsonic",
        " opensubsonic"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2088489ca65dccc47f8bf93d3d10aee87072d6b22eee22ea7e0aca210177ca32",
                "md5": "54d9d04ef934551d8150bbd728a54c40",
                "sha256": "644d93b03b0929c91520d814e814c4bb2136db94ad1c550a72aada33a8a6d882"
            },
            "downloads": -1,
            "filename": "knuckles-1.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "54d9d04ef934551d8150bbd728a54c40",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11.0",
            "size": 64813,
            "upload_time": "2024-11-24T13:55:21",
            "upload_time_iso_8601": "2024-11-24T13:55:21.806671Z",
            "url": "https://files.pythonhosted.org/packages/20/88/489ca65dccc47f8bf93d3d10aee87072d6b22eee22ea7e0aca210177ca32/knuckles-1.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6370bc05617890d981cb79931de0eea770ee7899c16e4e2e3055d28a9598e8a1",
                "md5": "6c273d8c5cfa62fa6db86239d6a2f7ff",
                "sha256": "b68b7d8f3e6bab9cd2e40756dac07ff607dcdec244e1bd1c9de2b63e712eedda"
            },
            "downloads": -1,
            "filename": "knuckles-1.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "6c273d8c5cfa62fa6db86239d6a2f7ff",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11.0",
            "size": 41547,
            "upload_time": "2024-11-24T13:55:23",
            "upload_time_iso_8601": "2024-11-24T13:55:23.244955Z",
            "url": "https://files.pythonhosted.org/packages/63/70/bc05617890d981cb79931de0eea770ee7899c16e4e2e3055d28a9598e8a1/knuckles-1.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-24 13:55:23",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "kutu-dev",
    "github_project": "knuckles",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "knuckles"
}
        
Elapsed time: 0.46625s