Skip to main content

Library for dumping models into JSON:API

Project description

JSON:APy - Loading and Dumping JSON:API in Python

WIP: this library is still in early development phase.

jsonapy is a Python library for dumping models into JSON:API-compliant JSON.

PyPi Python Version Tests & coverage codecov

Installation

With pip:

pip install jsonapy

Basic usage overview

This package lets you define models and dump them into dict with the JSON:API structure. First, define a resource:

import jsonapy

class PersonResource(jsonapy.BaseResource):
    id: int
    first_name: str
    last_name: str

    class Meta:
        resource_name = "person"

You can now dump an instance of this resource into JSON:API-structured dictionary:

guido = PersonResource(id=1, first_name="Guido", last_name="Van Rossum")
data = guido.jsonapi_dict(required_attributes="__all__")

The resulting data dictionary can be represented by:

{
    'type': 'person',
    'id': 1,
    'attributes': {
        'firstName': 'Guido', 
        'lastName': 'Van Rossum'
    }
}

Documentation

The complete documentation can be found here. It is built with pdoc.

Roadmap

Refer to the project to view the roadmap-related issues.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jsonapy-0.1.5.dev1.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

jsonapy-0.1.5.dev1-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file jsonapy-0.1.5.dev1.tar.gz.

File metadata

  • Download URL: jsonapy-0.1.5.dev1.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.8.9 Windows/10

File hashes

Hashes for jsonapy-0.1.5.dev1.tar.gz
Algorithm Hash digest
SHA256 b7a807a4f1e295322fe31bf07b74e6f6775e4f1952541ab27bd7174af8cf2b3c
MD5 e4bc862436cd5da7729d793f774be8cd
BLAKE2b-256 0997957df3d83583577f2b223d6d20e5bc28428ef1dadb55e5f18a253e362edf

See more details on using hashes here.

File details

Details for the file jsonapy-0.1.5.dev1-py3-none-any.whl.

File metadata

  • Download URL: jsonapy-0.1.5.dev1-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.8.9 Windows/10

File hashes

Hashes for jsonapy-0.1.5.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 8c91c99ecd099f9062b154382bb162366396daf8d35287f46b62b505af7be000
MD5 5b609e612e341c2b9e2c2c7c137ff66a
BLAKE2b-256 713800e79351bc94900b9c9bc2bda388d08d15f3f11cbf0c0b1c4b68553b309c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page