lunchable


Namelunchable JSON
Version 1.3.2 PyPI version JSON
download
home_page
SummaryA simple Python SDK around the Lunch Money Developer API
upload_time2024-02-08 00:21:53
maintainer
docs_urlNone
author
requires_python<4,>=3.8
license
keywords api-client lunchmoney pydantic python
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <h1 align="center">lunchable</h1>

<div align="center">
  <a href="https://github.com/juftin/lunchable">
  <img src=https://i.imgur.com/FyKDsG3.png
    width="400" alt="lunchable">  </a>
</div>

<p align="center">
  <a href="https://github.com/juftin/lunchable"><img src="https://img.shields.io/pypi/v/lunchable?color=blue&label=lunchable" alt="PyPI"></a>
  <a href="https://pypi.python.org/pypi/lunchable/"><img src="https://img.shields.io/pypi/pyversions/lunchable" alt="PyPI - Python Version"></a>
  <a href="https://hub.docker.com/r/juftin/lunchable"><img src="https://img.shields.io/docker/v/juftin/lunchable?color=blue&label=docker&logo=docker" alt="Docker Image Version"></a>
  <a href="https://github.com/juftin/lunchable/blob/main/LICENSE"><img src="https://img.shields.io/github/license/juftin/lunchable?color=blue&label=License" alt="GitHub License"></a>
  <a href="https://github.com/juftin/lunchable/actions/workflows/tests.yaml?query=branch%3Amain"><img src="https://github.com/juftin/lunchable/actions/workflows/tests.yaml/badge.svg?branch=main" alt="Testing Status"></a>
  <a href="https://codecov.io/gh/juftin/lunchable"><img src="https://codecov.io/gh/juftin/lunchable/graph/badge.svg?token=2IGD9E5L8K"/></a>
  <a href="https://github.com/pypa/hatch"><img src="https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg" alt="Hatch project"></a>
  <a href="https://github.com/astral-sh/ruff"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json" alt="Ruff"></a>
  <a href="https://github.com/pre-commit/pre-commit"><img src="https://img.shields.io/badge/pre--commit-enabled-lightgreen?logo=pre-commit" alt="pre-commit"></a>
  <a href="https://github.com/semantic-release/semantic-release"><img src="https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg" alt="semantic-release"></a>
  <a href="https://gitmoji.dev"><img src="https://img.shields.io/badge/gitmoji-%20😜%20😍-FFDD67.svg" alt="Gitmoji"></a>
</p>

**lunchable** is a Python Client for the [Lunch Money Developer API](https://lunchmoney.dev). It's
built on top of [pydantic](https://github.com/pydantic/pydantic) and [httpx](https://github.com/encode/httpx/),
it offers an _intuitive_ API, a _simple_ CLI, complete coverage of all endpoints,
and a _plugin_ framework for extending the functionality of the library.

### Installation

```shell
pip install lunchable
```

### Usage

```python
from typing import Any, Dict, List

from lunchable import LunchMoney
from lunchable.models import TransactionObject

lunch = LunchMoney(access_token="xxxxxxxxxxx")
transactions: List[TransactionObject] = lunch.get_transactions()

first_transaction: TransactionObject = transactions[0]
transaction_as_dict: Dict[str, Any] = first_transaction.model_dump()
```

### CLI

To use the CLI, you'll need to set the `LUNCHMONEY_ACCESS_TOKEN` environment variable.
It's recommended to use [pipx](https://github.com/pypa/pipx) to install the CLI -
use the `lunchable[plugins]` extra to include all the known plugins:

```shell
pipx install "lunchable[plugins]"
```

```shell
export LUNCHMONEY_ACCESS_TOKEN="xxxxxxxxxxx"
lunchable transactions get --limit 5
lunchable http -X GET v1/assets
```

<!--skip-->

### Check out the [**Docs**](https://juftin.com/lunchable/)

### Looking to contribute? See the [Contributing Guide](docs/contributing.md)

### See the [Changelog](https://github.com/juftin/lunchable/releases)

---

---

<br/>

[<p align="center" ><img src="https://raw.githubusercontent.com/juftin/juftin/main/static/juftin.png" width="60" height="60"  alt="juftin logo"> </p>](https://github.com/juftin)

<!--skip-->

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "lunchable",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "<4,>=3.8",
    "maintainer_email": "",
    "keywords": "api-client,lunchmoney,pydantic,python",
    "author": "",
    "author_email": "Justin Flannery <juftin@juftin.com>",
    "download_url": "https://files.pythonhosted.org/packages/b3/56/3bc938edd6702a319356bb7043c48c386cda175460a5b25e97050df686a3/lunchable-1.3.2.tar.gz",
    "platform": null,
    "description": "<h1 align=\"center\">lunchable</h1>\n\n<div align=\"center\">\n  <a href=\"https://github.com/juftin/lunchable\">\n  <img src=https://i.imgur.com/FyKDsG3.png\n    width=\"400\" alt=\"lunchable\">  </a>\n</div>\n\n<p align=\"center\">\n  <a href=\"https://github.com/juftin/lunchable\"><img src=\"https://img.shields.io/pypi/v/lunchable?color=blue&label=lunchable\" alt=\"PyPI\"></a>\n  <a href=\"https://pypi.python.org/pypi/lunchable/\"><img src=\"https://img.shields.io/pypi/pyversions/lunchable\" alt=\"PyPI - Python Version\"></a>\n  <a href=\"https://hub.docker.com/r/juftin/lunchable\"><img src=\"https://img.shields.io/docker/v/juftin/lunchable?color=blue&label=docker&logo=docker\" alt=\"Docker Image Version\"></a>\n  <a href=\"https://github.com/juftin/lunchable/blob/main/LICENSE\"><img src=\"https://img.shields.io/github/license/juftin/lunchable?color=blue&label=License\" alt=\"GitHub License\"></a>\n  <a href=\"https://github.com/juftin/lunchable/actions/workflows/tests.yaml?query=branch%3Amain\"><img src=\"https://github.com/juftin/lunchable/actions/workflows/tests.yaml/badge.svg?branch=main\" alt=\"Testing Status\"></a>\n  <a href=\"https://codecov.io/gh/juftin/lunchable\"><img src=\"https://codecov.io/gh/juftin/lunchable/graph/badge.svg?token=2IGD9E5L8K\"/></a>\n  <a href=\"https://github.com/pypa/hatch\"><img src=\"https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg\" alt=\"Hatch project\"></a>\n  <a href=\"https://github.com/astral-sh/ruff\"><img src=\"https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json\" alt=\"Ruff\"></a>\n  <a href=\"https://github.com/pre-commit/pre-commit\"><img src=\"https://img.shields.io/badge/pre--commit-enabled-lightgreen?logo=pre-commit\" alt=\"pre-commit\"></a>\n  <a href=\"https://github.com/semantic-release/semantic-release\"><img src=\"https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg\" alt=\"semantic-release\"></a>\n  <a href=\"https://gitmoji.dev\"><img src=\"https://img.shields.io/badge/gitmoji-%20\ud83d\ude1c%20\ud83d\ude0d-FFDD67.svg\" alt=\"Gitmoji\"></a>\n</p>\n\n**lunchable** is a Python Client for the [Lunch Money Developer API](https://lunchmoney.dev). It's\nbuilt on top of [pydantic](https://github.com/pydantic/pydantic) and [httpx](https://github.com/encode/httpx/),\nit offers an _intuitive_ API, a _simple_ CLI, complete coverage of all endpoints,\nand a _plugin_ framework for extending the functionality of the library.\n\n### Installation\n\n```shell\npip install lunchable\n```\n\n### Usage\n\n```python\nfrom typing import Any, Dict, List\n\nfrom lunchable import LunchMoney\nfrom lunchable.models import TransactionObject\n\nlunch = LunchMoney(access_token=\"xxxxxxxxxxx\")\ntransactions: List[TransactionObject] = lunch.get_transactions()\n\nfirst_transaction: TransactionObject = transactions[0]\ntransaction_as_dict: Dict[str, Any] = first_transaction.model_dump()\n```\n\n### CLI\n\nTo use the CLI, you'll need to set the `LUNCHMONEY_ACCESS_TOKEN` environment variable.\nIt's recommended to use [pipx](https://github.com/pypa/pipx) to install the CLI -\nuse the `lunchable[plugins]` extra to include all the known plugins:\n\n```shell\npipx install \"lunchable[plugins]\"\n```\n\n```shell\nexport LUNCHMONEY_ACCESS_TOKEN=\"xxxxxxxxxxx\"\nlunchable transactions get --limit 5\nlunchable http -X GET v1/assets\n```\n\n<!--skip-->\n\n### Check out the [**Docs**](https://juftin.com/lunchable/)\n\n### Looking to contribute? See the [Contributing Guide](docs/contributing.md)\n\n### See the [Changelog](https://github.com/juftin/lunchable/releases)\n\n---\n\n---\n\n<br/>\n\n[<p align=\"center\" ><img src=\"https://raw.githubusercontent.com/juftin/juftin/main/static/juftin.png\" width=\"60\" height=\"60\"  alt=\"juftin logo\"> </p>](https://github.com/juftin)\n\n<!--skip-->\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A simple Python SDK around the Lunch Money Developer API",
    "version": "1.3.2",
    "project_urls": {
        "Changelog": "https://github.com/juftin/lunchable/releases",
        "Discussions": "https://github.com/juftin/lunchable/discussions",
        "Docker": "https://hub.docker.com/r/juftin/lunchable",
        "Documentation": "https://github.com/juftin/lunchable#readme",
        "Issues": "https://github.com/juftin/lunchable/issues",
        "Source": "https://github.com/juftin/lunchable"
    },
    "split_keywords": [
        "api-client",
        "lunchmoney",
        "pydantic",
        "python"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "63972e1af2ca5e5d6e6de7e39311262ecd43cfcf8b20140d3b6ac8ebcb623c07",
                "md5": "6b4ab52284eca20b9233f754949c39be",
                "sha256": "822a3b86b3d0f9233a1fee0700926a5231136f8144866bbf883e0cb6bf884865"
            },
            "downloads": -1,
            "filename": "lunchable-1.3.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6b4ab52284eca20b9233f754949c39be",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4,>=3.8",
            "size": 42125,
            "upload_time": "2024-02-08T00:21:44",
            "upload_time_iso_8601": "2024-02-08T00:21:44.453705Z",
            "url": "https://files.pythonhosted.org/packages/63/97/2e1af2ca5e5d6e6de7e39311262ecd43cfcf8b20140d3b6ac8ebcb623c07/lunchable-1.3.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b3563bc938edd6702a319356bb7043c48c386cda175460a5b25e97050df686a3",
                "md5": "d2211f850abb9fde87a1193d387f2022",
                "sha256": "4fb97425dfc7e15c76789cd1219826412798c11dd0d07ee3583548873f9755d9"
            },
            "downloads": -1,
            "filename": "lunchable-1.3.2.tar.gz",
            "has_sig": false,
            "md5_digest": "d2211f850abb9fde87a1193d387f2022",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4,>=3.8",
            "size": 282174,
            "upload_time": "2024-02-08T00:21:53",
            "upload_time_iso_8601": "2024-02-08T00:21:53.228905Z",
            "url": "https://files.pythonhosted.org/packages/b3/56/3bc938edd6702a319356bb7043c48c386cda175460a5b25e97050df686a3/lunchable-1.3.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-08 00:21:53",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "juftin",
    "github_project": "lunchable",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "lunchable"
}
        
Elapsed time: 0.17995s