Skip to main content

Democritus functions for working with JSON.

Project description

Democritus JSON

PyPI CI Lint codecov The Democritus Project uses semver version 2.0.0 The Democritus Project uses ruff to format and lint code License: LGPL v3

Democritus functions[1] for working with JSON.

[1] Democritus functions are simple, effective, modular, well-tested, and well-documented Python functions.

We use d8s (pronounced "dee-eights") as an abbreviation for democritus (you can read more about this here).

Installation

pip install d8s-json

Usage

You import the library like:

from d8s_json import *

Once imported, you can use any of the functions listed below.

Functions

  • def json_files(directory_path: str) -> List[str]:
        """Find all json files in the given directory_path."""
    
  • def json_read(json_string: str):
        """."""
    
  • def json_read_first_arg_string_decorator(func):
        """Load the first argument as JSON (if it is a string)."""
    
  • def json_write(file_path, json_content, **kwargs):
        """Write the json_content to the file_path."""
    
  • def json_prettify(json_object):
        """."""
    
  • def json_pretty_print(json_string):
        """Pretty print the json so it is readable."""
    
  • def json_search(json_data, value_to_find):
        """Find the value_to_find in the json_data."""
    
  • def json_structure(json_data):
        """Print out the structure of the given json blob."""
    
  • def json_path_dot_notation_to_bracket_notation(json_path_dot_notation: str) -> str:
        """Convert the given json path from dot notation to bracket notation (foo.bar -> ["foo"]["bar"])."""
    
  • def json_path_bracket_notation_to_dot_notation(json_path_dot_notation: str) -> str:
        """Convert the given json path from bracket notation to dot notation (["foo"]["bar"] -> foo.bar)."""
    

Development

👋  If you want to get involved in this project, we have some short, helpful guides below:

If you have any questions or there is anything we did not cover, please raise an issue and we'll be happy to help.

Credits

This package was created with Cookiecutter and Floyd Hightower's Python project template.

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

d8s_json-0.4.0.tar.gz (112.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

d8s_json-0.4.0-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file d8s_json-0.4.0.tar.gz.

File metadata

  • Download URL: d8s_json-0.4.0.tar.gz
  • Upload date:
  • Size: 112.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for d8s_json-0.4.0.tar.gz
Algorithm Hash digest
SHA256 594d5fb83e3b3b2bd5a3d8d9a2b1d003974537167ef5aace34e7c2542dda32e2
MD5 c7432eba023e4bdfddb95667713210a4
BLAKE2b-256 2104075726df1f35b57340389d6dfebc075878f595d176632bb6bed493f22f6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for d8s_json-0.4.0.tar.gz:

Publisher: release-please.yml on democritus-project/d8s-json

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file d8s_json-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: d8s_json-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for d8s_json-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8b701ebd767f8e3b8688693c891023b2f1efe262fa4697e14e787317281c1659
MD5 89dd1d763f8e07e546c8b971f5567a83
BLAKE2b-256 7b7d895921242d6644ff09c465adbf8b4ba0f5f22ac36698723d623fa8177ac3

See more details on using hashes here.

Provenance

The following attestation bundles were made for d8s_json-0.4.0-py3-none-any.whl:

Publisher: release-please.yml on democritus-project/d8s-json

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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