scooze


Namescooze JSON
Version 2.0.1 PyPI version JSON
download
home_pageNone
SummaryA flexible data layer for applications working with Magic: the Gathering cards and decks.
upload_time2025-02-11 16:56:50
maintainerNone
docs_urlNone
authorAlexander Gimmi
requires_python<4,>=3.11
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # scooze

[![CI](https://img.shields.io/github/actions/workflow/status/arcavios/scooze/ci.yml?branch=dev&logo=github&label=CI)](https://github.com/arcavios/scooze/actions?query=event%3Apush+branch%3Adev+workflow%3A%22Continuous+Integration%22)
[![pypi](https://img.shields.io/pypi/v/scooze.svg)](https://pypi.python.org/pypi/scooze)
[![versions](https://img.shields.io/pypi/pyversions/scooze.svg)](https://github.com/arcavios/scooze)
[![license](https://img.shields.io/badge/license-MIT-green)](https://github.com/arcavios/scooze/blob/dev/LICENSE)
[![Pydantic v2](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json)](https://pydantic.dev)

A flexible data layer for applications working with Magic: the Gathering cards and decks.

## Features

📊 Robust data models for representing Magic: the Gathering cards and decks

- Cards - follows the Scryfall standard
- Decks - main deck/sideboard/command zone, format legality, average words, and more

🎛️ CLI to manage a local database of [Scryfall](https://scryfall.com/docs/api/bulk-data) data

🐍 Python and REST APIs for interacting with the scooze database

## Help

The source code can be found [here](https://github.com/arcavios/scooze).

See our [documentation](https://scooze.readthedocs.io/en/stable/) for more information.

## Installation

Install using `pip install scooze`. For more installation options, see the [Install](https://scooze.readthedocs.io/en/stable/installation) section in the documentation.

## A Simple Example

``` python
from scooze import Card, Deck, Format, InThe

deck = Deck()
card1 = Card("Python")
card2 = Card("Anaconda")
swamp = Card("Swamp")

deck.add_card(card1, 25)
deck.add_card(swamp, 15)
deck.add_card(card2, 100, InThe.SIDE)

legal_limited = deck.is_legal(Format.LIMITED)   # True
legal_pauper = deck.is_legal(Format.PAUPER)     # False

export = deck.export()
"""
Deck:
25 Python
15 Swamp

Sideboard:
100 Anaconda
"""
```

See [Setup](https://scooze.readthedocs.io/en/stable/setup/) and our [API Documentation](https://scooze.readthedocs.io/en/stable/dataclasses/card/) for more details.

## Contributing

For guidance on setting up a development environment and how to make a contribution to scooze, see [Contributing to scooze](https://scooze.readthedocs.io/en/stable/contributing).

## Report a Bug

If you find a bug 🐛 please open a [bug report](https://github.com/arcavios/scooze/issues/new?assignees=&labels=bug&template=bug_report.md&title=). If you have an idea for an improvement or new feature 🚀 please open a [feature request](https://github.com/arcavios/scooze/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=).

If you find a security vulnerability, please follow the instructions [here](https://github.com/arcavios/scooze/security/policy).

---

![Scavenging Ooze](https://cards.scryfall.io/large/front/4/8/487116ab-b885-406b-aa54-56cb67eb3ca5.jpg?1594737205)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "scooze",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4,>=3.11",
    "maintainer_email": null,
    "keywords": null,
    "author": "Alexander Gimmi",
    "author_email": "iambroadband@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/a6/36/a07b95c166a1dd7cf59ac11463aa98e0a407dad891b21bfc24af929ab930/scooze-2.0.1.tar.gz",
    "platform": null,
    "description": "# scooze\n\n[![CI](https://img.shields.io/github/actions/workflow/status/arcavios/scooze/ci.yml?branch=dev&logo=github&label=CI)](https://github.com/arcavios/scooze/actions?query=event%3Apush+branch%3Adev+workflow%3A%22Continuous+Integration%22)\n[![pypi](https://img.shields.io/pypi/v/scooze.svg)](https://pypi.python.org/pypi/scooze)\n[![versions](https://img.shields.io/pypi/pyversions/scooze.svg)](https://github.com/arcavios/scooze)\n[![license](https://img.shields.io/badge/license-MIT-green)](https://github.com/arcavios/scooze/blob/dev/LICENSE)\n[![Pydantic v2](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json)](https://pydantic.dev)\n\nA flexible data layer for applications working with Magic: the Gathering cards and decks.\n\n## Features\n\n\ud83d\udcca Robust data models for representing Magic: the Gathering cards and decks\n\n- Cards - follows the Scryfall standard\n- Decks - main deck/sideboard/command zone, format legality, average words, and more\n\n\ud83c\udf9b\ufe0f CLI to manage a local database of [Scryfall](https://scryfall.com/docs/api/bulk-data) data\n\n\ud83d\udc0d Python and REST APIs for interacting with the scooze database\n\n## Help\n\nThe source code can be found [here](https://github.com/arcavios/scooze).\n\nSee our [documentation](https://scooze.readthedocs.io/en/stable/) for more information.\n\n## Installation\n\nInstall using `pip install scooze`. For more installation options, see the [Install](https://scooze.readthedocs.io/en/stable/installation) section in the documentation.\n\n## A Simple Example\n\n``` python\nfrom scooze import Card, Deck, Format, InThe\n\ndeck = Deck()\ncard1 = Card(\"Python\")\ncard2 = Card(\"Anaconda\")\nswamp = Card(\"Swamp\")\n\ndeck.add_card(card1, 25)\ndeck.add_card(swamp, 15)\ndeck.add_card(card2, 100, InThe.SIDE)\n\nlegal_limited = deck.is_legal(Format.LIMITED)   # True\nlegal_pauper = deck.is_legal(Format.PAUPER)     # False\n\nexport = deck.export()\n\"\"\"\nDeck:\n25 Python\n15 Swamp\n\nSideboard:\n100 Anaconda\n\"\"\"\n```\n\nSee [Setup](https://scooze.readthedocs.io/en/stable/setup/) and our [API Documentation](https://scooze.readthedocs.io/en/stable/dataclasses/card/) for more details.\n\n## Contributing\n\nFor guidance on setting up a development environment and how to make a contribution to scooze, see [Contributing to scooze](https://scooze.readthedocs.io/en/stable/contributing).\n\n## Report a Bug\n\nIf you find a bug \ud83d\udc1b please open a [bug report](https://github.com/arcavios/scooze/issues/new?assignees=&labels=bug&template=bug_report.md&title=). If you have an idea for an improvement or new feature \ud83d\ude80 please open a [feature request](https://github.com/arcavios/scooze/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=).\n\nIf you find a security vulnerability, please follow the instructions [here](https://github.com/arcavios/scooze/security/policy).\n\n---\n\n![Scavenging Ooze](https://cards.scryfall.io/large/front/4/8/487116ab-b885-406b-aa54-56cb67eb3ca5.jpg?1594737205)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A flexible data layer for applications working with Magic: the Gathering cards and decks.",
    "version": "2.0.1",
    "project_urls": {
        "documentation": "https://scooze.readthedocs.io",
        "homepage": "https://github.com/arcavios/scooze",
        "repository": "https://github.com/arcavios/scooze"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "82616605228e36e5860c44524b98e775b9835c2f0ff193c42ad639a61cc2e3f3",
                "md5": "c55fb127e25d2e51221d692b2d2b79ce",
                "sha256": "3059ce00f49619240332fc080381688300755f771fbf31a616bac1ce9e86b71d"
            },
            "downloads": -1,
            "filename": "scooze-2.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c55fb127e25d2e51221d692b2d2b79ce",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4,>=3.11",
            "size": 60124,
            "upload_time": "2025-02-11T16:56:48",
            "upload_time_iso_8601": "2025-02-11T16:56:48.273350Z",
            "url": "https://files.pythonhosted.org/packages/82/61/6605228e36e5860c44524b98e775b9835c2f0ff193c42ad639a61cc2e3f3/scooze-2.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a636a07b95c166a1dd7cf59ac11463aa98e0a407dad891b21bfc24af929ab930",
                "md5": "27ea23072f19ae5e861614d6edbd4c5b",
                "sha256": "624a16c0357639b159796f2e3c274a796a74660f5676c1d53852939784d0d51b"
            },
            "downloads": -1,
            "filename": "scooze-2.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "27ea23072f19ae5e861614d6edbd4c5b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4,>=3.11",
            "size": 45602,
            "upload_time": "2025-02-11T16:56:50",
            "upload_time_iso_8601": "2025-02-11T16:56:50.385620Z",
            "url": "https://files.pythonhosted.org/packages/a6/36/a07b95c166a1dd7cf59ac11463aa98e0a407dad891b21bfc24af929ab930/scooze-2.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-11 16:56:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "arcavios",
    "github_project": "scooze",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "scooze"
}
        
Elapsed time: 0.41231s