validataclass


Namevalidataclass JSON
Version 0.10.1 PyPI version JSON
download
home_pagehttps://github.com/binary-butterfly/validataclass
SummaryLibrary for input validation designed for (but not restricted to) JSON-based APIs, neatly integrating with dataclasses.
upload_time2024-08-08 12:25:22
maintainerNone
docs_urlNone
authorbinary butterfly GmbH
requires_python>=3.8
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # validataclass

[![Unit tests](https://github.com/binary-butterfly/validataclass/actions/workflows/tests.yml/badge.svg)
](https://github.com/binary-butterfly/validataclass/actions/workflows/tests.yml)

Python library for input validation designed for (but not restricted to) JSON-based APIs, neatly integrating with
dataclasses.

**Status:** Beta.


## Installation

validataclass is available on [PyPI](https://pypi.org/project/validataclass/).

To install it using [pip](https://pip.pypa.io/en/stable/getting-started/), just run:

```shell
pip install validataclass
```

If you add the package to your dependencies, it is recommended to use
[compatible release](https://www.python.org/dev/peps/pep-0440/#compatible-release) version specifiers to make sure you
always get the latest version of the library but without running into breaking changes:

```shell
pip install validataclass~=0.10
```

However, keep in mind that the library still is in its beta phase (as indicated by the major version of 0). There can
and will be smaller breaking changes between 0.x minor versions, but we will try to keep them at a minimum and save the
big breaking changes for the release of version 1.0.0.


## Usage

See [`docs/`](https://github.com/binary-butterfly/validataclass/blob/main/docs/index.md) for documentation on how to use
this library and for examples.

(**Note:** The documentation is mostly done now, but still a work in progress.)


## Development

### Virtual environment

To setup a virtualenv for development of the library, run `make venv`.

Alternatively you can manually run the following commands (which do the same as the make target):

```
$ virtualenv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
$ pip install -e .
```


### Running unit tests

Unit tests can be run using `make tox` or by directly executing `tox`.

For this to work you need to either be inside the virtualenv (see above) or to have [tox](https://tox.wiki/en/latest/)
installed in your system locally.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/binary-butterfly/validataclass",
    "name": "validataclass",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "binary butterfly GmbH",
    "author_email": "lexi.stelter@binary-butterfly.de",
    "download_url": "https://files.pythonhosted.org/packages/79/2f/b5ad607be3595be392cef4e6a528c3d86fb9d4c248a565842ce2d9457227/validataclass-0.10.1.tar.gz",
    "platform": null,
    "description": "# validataclass\n\n[![Unit tests](https://github.com/binary-butterfly/validataclass/actions/workflows/tests.yml/badge.svg)\n](https://github.com/binary-butterfly/validataclass/actions/workflows/tests.yml)\n\nPython library for input validation designed for (but not restricted to) JSON-based APIs, neatly integrating with\ndataclasses.\n\n**Status:** Beta.\n\n\n## Installation\n\nvalidataclass is available on [PyPI](https://pypi.org/project/validataclass/).\n\nTo install it using [pip](https://pip.pypa.io/en/stable/getting-started/), just run:\n\n```shell\npip install validataclass\n```\n\nIf you add the package to your dependencies, it is recommended to use\n[compatible release](https://www.python.org/dev/peps/pep-0440/#compatible-release) version specifiers to make sure you\nalways get the latest version of the library but without running into breaking changes:\n\n```shell\npip install validataclass~=0.10\n```\n\nHowever, keep in mind that the library still is in its beta phase (as indicated by the major version of 0). There can\nand will be smaller breaking changes between 0.x minor versions, but we will try to keep them at a minimum and save the\nbig breaking changes for the release of version 1.0.0.\n\n\n## Usage\n\nSee [`docs/`](https://github.com/binary-butterfly/validataclass/blob/main/docs/index.md) for documentation on how to use\nthis library and for examples.\n\n(**Note:** The documentation is mostly done now, but still a work in progress.)\n\n\n## Development\n\n### Virtual environment\n\nTo setup a virtualenv for development of the library, run `make venv`.\n\nAlternatively you can manually run the following commands (which do the same as the make target):\n\n```\n$ virtualenv venv\n$ source venv/bin/activate\n$ pip install -r requirements.txt\n$ pip install -e .\n```\n\n\n### Running unit tests\n\nUnit tests can be run using `make tox` or by directly executing `tox`.\n\nFor this to work you need to either be inside the virtualenv (see above) or to have [tox](https://tox.wiki/en/latest/)\ninstalled in your system locally.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Library for input validation designed for (but not restricted to) JSON-based APIs, neatly integrating with dataclasses.",
    "version": "0.10.1",
    "project_urls": {
        "Changelog": "https://github.com/binary-butterfly/validataclass/blob/main/CHANGELOG.md",
        "Documentation": "https://github.com/binary-butterfly/validataclass/blob/main/docs/index.md",
        "Homepage": "https://github.com/binary-butterfly/validataclass",
        "Issue Tracker": "https://github.com/binary-butterfly/validataclass/issues"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "07437ced61a1553fbc123f41cb4bda834d5e3447a4f90060dcca4432eee44d79",
                "md5": "57c23f20eb5c559aa109383a8c7ea0e1",
                "sha256": "dc6816ad7cad7b943af3fbbc79dd8db51183ab09b8916583acc10609f7dd40dd"
            },
            "downloads": -1,
            "filename": "validataclass-0.10.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "57c23f20eb5c559aa109383a8c7ea0e1",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 89815,
            "upload_time": "2024-08-08T12:25:20",
            "upload_time_iso_8601": "2024-08-08T12:25:20.092593Z",
            "url": "https://files.pythonhosted.org/packages/07/43/7ced61a1553fbc123f41cb4bda834d5e3447a4f90060dcca4432eee44d79/validataclass-0.10.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "792fb5ad607be3595be392cef4e6a528c3d86fb9d4c248a565842ce2d9457227",
                "md5": "018c6818b6db7090a39e243b470bfa82",
                "sha256": "d56fa264eba3c3f2b33d3f04a603388f6e6ccdf7f3aeb5734f26c2604fb2c108"
            },
            "downloads": -1,
            "filename": "validataclass-0.10.1.tar.gz",
            "has_sig": false,
            "md5_digest": "018c6818b6db7090a39e243b470bfa82",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 165909,
            "upload_time": "2024-08-08T12:25:22",
            "upload_time_iso_8601": "2024-08-08T12:25:22.539486Z",
            "url": "https://files.pythonhosted.org/packages/79/2f/b5ad607be3595be392cef4e6a528c3d86fb9d4c248a565842ce2d9457227/validataclass-0.10.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-08 12:25:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "binary-butterfly",
    "github_project": "validataclass",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "tox": true,
    "lcname": "validataclass"
}
        
Elapsed time: 0.53299s