Skip to main content

python jsonapi parser

Project description

Furrycorn is intended to make interacting with jsonapi-outputting APIs easier to consume. It is opinionated but lienient when possible, failing fast when things go awry.

To understand how to use this library, you will need some knowledge of the jsonapi v1.0 specification.

Furrycorn provides:

  1. a URL abstraction for interacting with services hosting jsonapi APIs.

  2. a DOM-like object model of entities in jsonapi response bodies.

  3. a toolkit for relationship traversal and entity iteration.

The core model is well-tested, but not the toolkit–furrycorn is still in active development.

Compatible with Python 3.6+. Will investigate other versions on request.

Installation

pip install furrycorn should do it for your projects.

Development

Requirement setup should be a breeze using pipenv.

If you’re using nixos, simply boot a nix-shell in the project directory to get a development shell.

For the rest of the world:

  1. Clone the directory and navigate to your local repo in a command line.

  2. pipenv install --three

  3. pipenv shell

You will need to set one or two environment variables to use the examples, depending on the example. The methodology for doing this varies by OS.

For development, make sure PYTHONPATH includes the project root. Run tests with py.test.

Pleas submit changes by pull request on an aptly named topic branch.

Code Style

The author of this library prefers a functional style of coding which centers on “types”. It’s a lot easier to reason about types than logical steps, and given the highly structured nature of jsonapi, it felt like a good fit.

Feel free to message with any questions you have. I’m happy to help and explain.

License

This project is Copyright © 2018 odeum.gg and licensed under the MIT license. View the license for details.

Project details


Release history Release notifications | RSS feed

This version

0.7

Download files

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

Source Distribution

furrycorn-0.7.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

furrycorn-0.7-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

File details

Details for the file furrycorn-0.7.tar.gz.

File metadata

  • Download URL: furrycorn-0.7.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for furrycorn-0.7.tar.gz
Algorithm Hash digest
SHA256 2adbceed5701df93155f54112e74b170d89b41292535a6ddfb22c2c8a8a642a8
MD5 83df56323563dba7ac7e948380e223f1
BLAKE2b-256 be5921a505659e3d09fc9355897827c493d6ff8d6efaf9c6898a8462d3b9718e

See more details on using hashes here.

File details

Details for the file furrycorn-0.7-py3-none-any.whl.

File metadata

File hashes

Hashes for furrycorn-0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 ef8639f50fc83cd9c09498d77a2dbe09d1f13642acbdb8c3ce598638e451c916
MD5 fec871af78fb2ae34cc2d7de706c3237
BLAKE2b-256 987bcc066bc4b3ad3b4a0abbbbade86b752de008da0658c1236a8b36b3ca47f6

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