Skip to main content

Smudge and Clean filters for Power BI-generated JSON files.

Project description

PBIP Tools

Python 3.12 License: MIT Ruff pre-commit

PBIP-tools is a Python package designed to process Power BI-generated JSON files for enhanced human-readability and seamless version control integration. The package provides two key executables:

  1. json-clean: Converts nested and complex Power BI-generated JSON files into a human-readable format.

  2. json-smudge: Reverses the cleaning process, restoring the JSON files to a format that Power BI can properly load.

Features

  • Human-readable JSON: The json-clean utility de-nests JSON objects and JSON strings for easier understanding and editing.

  • Restoration for Power BI: The json-smudge utility ensures that files cleaned by json-clean can be reloaded into Power BI.

  • Command-line utilities: Both json-clean and json-smudge can be used directly from the command line for seamless file processing.

Installation

You can install the package using pip:

pip install pbip-tools

Usage

Cleaning a JSON File

To clean a Power BI-generated JSON file for readability, run the following command:

json-clean <file-or-glob> [<file-or-glob2> ... ]

Example:

json-clean report.json my_folder/*.json

Smudging a JSON File

To restore a cleaned JSON file to its original state for Power BI loading, run:

json-smudge <file-or-glob> [<file-or-glob2> ...]

Example:

json-smudge cleaned_report.json cleaned/**/*.json

Dependencies

This package depends solely on Python’s standard libraries. For contributing and testing, pre-commit and pytest may be required.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contributing

If you would like to contribute, feel free to open issues or submit pull requests.

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

pbip_tools-0.3.0.tar.gz (5.7 MB view details)

Uploaded Source

Built Distribution

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

pbip_tools-0.3.0-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file pbip_tools-0.3.0.tar.gz.

File metadata

  • Download URL: pbip_tools-0.3.0.tar.gz
  • Upload date:
  • Size: 5.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for pbip_tools-0.3.0.tar.gz
Algorithm Hash digest
SHA256 bfc4f369938f06408e866d755f43fa77efeca1cf67c9b1efe2ad66eb7bff677d
MD5 c0fa9ebad7fde2e00ce5a1b165244df6
BLAKE2b-256 bece82619466a985e6f2cd0f6ce61d7d6534a488305425956998439d50fb4070

See more details on using hashes here.

File details

Details for the file pbip_tools-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pbip_tools-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for pbip_tools-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6085bc56bc4ca5af365f30c34bcd349d9d4871b9cfcb25416d1c370078cd1f4
MD5 cd20db78a30f8ac575ee91f1df5291a1
BLAKE2b-256 4fc0efbb3076db89111fddfc3b30fd160b45a039690c52e30c9ef6f73ef7ba28

See more details on using hashes here.

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