crudantic


Namecrudantic JSON
Version 0.0.23 PyPI version JSON
download
home_page
SummaryQuick and easy persistence for Pydantic models supporting basic CRUD operations
upload_time2023-12-04 17:29:23
maintainer
docs_urlNone
authorDavid
requires_python>=3.11,<4.0
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Crudantic

A simple persistence library for [Pydantic](https://docs.pydantic.dev/latest/) that uses Google Cloud Datastore (Firestore in Datastore mode) as its default backend.

Ideally suited for developers using Pydantic on GCP with cloud functions or other serverless infrastructure like CloudRun.

Because sometimes you don't need a relational database or fully featured ORM; you just need to stash and grab objects while preserving type safety in your code.

## Status

This is an alpha-preview with a minimal featureset:

- CRUD operations on objects
- Support for nested objects/entities via embedding
- Simple listing of objects by entity kind
- Backend is Google Cloud Firestore in Datastore mode

## Installation

```
pip install crudantic
```

Note: Intermittent issues with `pypi.org` registrations, the library is available from github via: `pip install TBS`

In the meantime, clone this repo and install from there.

## Usage

See `examples`

## Developing / Contributing

I'm happy to review pull requests for bug fixes and new functionality.

To develop on the library:

```
git clone git@github.com:dbb613/crudantic.git
cd crudantic
git checkout development
poetry install
poetry build
```

## Missing/Future Features

- Advanced configuration
- Nested objects are always embedded in the parent entity.
- Additional nested object strategies are planned:
  - Ancestor/descendant entity instances
  - Related top-level entity instances
- Transactions
- Schema versioning
- Enfore validate on Create/Save
- Filtering/Querying
- Bulk data migration

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "crudantic",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.11,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "David",
    "author_email": "dbernstein613@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/88/81/634de6ef5eed4de8b7c8b1b5a90b23e3f9afdb17a06bfc39bbe9d1017156/crudantic-0.0.23.tar.gz",
    "platform": null,
    "description": "# Crudantic\n\nA simple persistence library for [Pydantic](https://docs.pydantic.dev/latest/) that uses Google Cloud Datastore (Firestore in Datastore mode) as its default backend.\n\nIdeally suited for developers using Pydantic on GCP with cloud functions or other serverless infrastructure like CloudRun.\n\nBecause sometimes you don't need a relational database or fully featured ORM; you just need to stash and grab objects while preserving type safety in your code.\n\n## Status\n\nThis is an alpha-preview with a minimal featureset:\n\n- CRUD operations on objects\n- Support for nested objects/entities via embedding\n- Simple listing of objects by entity kind\n- Backend is Google Cloud Firestore in Datastore mode\n\n## Installation\n\n```\npip install crudantic\n```\n\nNote: Intermittent issues with `pypi.org` registrations, the library is available from github via: `pip install TBS`\n\nIn the meantime, clone this repo and install from there.\n\n## Usage\n\nSee `examples`\n\n## Developing / Contributing\n\nI'm happy to review pull requests for bug fixes and new functionality.\n\nTo develop on the library:\n\n```\ngit clone git@github.com:dbb613/crudantic.git\ncd crudantic\ngit checkout development\npoetry install\npoetry build\n```\n\n## Missing/Future Features\n\n- Advanced configuration\n- Nested objects are always embedded in the parent entity.\n- Additional nested object strategies are planned:\n  - Ancestor/descendant entity instances\n  - Related top-level entity instances\n- Transactions\n- Schema versioning\n- Enfore validate on Create/Save\n- Filtering/Querying\n- Bulk data migration\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Quick and easy persistence for Pydantic models supporting basic CRUD operations",
    "version": "0.0.23",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c08e8a1dd052256b3c5ff878804f180585c61cbadc5e450fc925a0415eccfe92",
                "md5": "66c9a3f51fc81917868112d002fc9d01",
                "sha256": "09d98d00241ebc438a246b8d51e1d0fa32372f555ac521405af24be4be4b7996"
            },
            "downloads": -1,
            "filename": "crudantic-0.0.23-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "66c9a3f51fc81917868112d002fc9d01",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11,<4.0",
            "size": 5961,
            "upload_time": "2023-12-04T17:29:18",
            "upload_time_iso_8601": "2023-12-04T17:29:18.369301Z",
            "url": "https://files.pythonhosted.org/packages/c0/8e/8a1dd052256b3c5ff878804f180585c61cbadc5e450fc925a0415eccfe92/crudantic-0.0.23-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8881634de6ef5eed4de8b7c8b1b5a90b23e3f9afdb17a06bfc39bbe9d1017156",
                "md5": "3957d9be92bae4c316d1db2f1984758e",
                "sha256": "9d61e95c79913a3a381aabc2e5d91eb2fcdbbf566f936c32204edd2cde980af4"
            },
            "downloads": -1,
            "filename": "crudantic-0.0.23.tar.gz",
            "has_sig": false,
            "md5_digest": "3957d9be92bae4c316d1db2f1984758e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11,<4.0",
            "size": 4341,
            "upload_time": "2023-12-04T17:29:23",
            "upload_time_iso_8601": "2023-12-04T17:29:23.283513Z",
            "url": "https://files.pythonhosted.org/packages/88/81/634de6ef5eed4de8b7c8b1b5a90b23e3f9afdb17a06bfc39bbe9d1017156/crudantic-0.0.23.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-04 17:29:23",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "crudantic"
}
        
Elapsed time: 0.46398s