A tool for managing Power BI Enhanced Report Format (PBIR) projects
Project description
pbir-utils is a Python library designed to streamline the tasks that Power BI developers typically handle manually in Power BI Desktop. This module offers a range of utility functions to efficiently manage and manipulate PBIR (Power BI Enhanced Report Format) metadata.
📚 Documentation
- UI Guide - Web interface documentation
- CLI Reference - Command-line usage and examples
- Python API - Library documentation and code examples
- CI/CD Integration - Pipeline integration and validation
📦 Installation
# Using pip
pip install "pbir-utils[ui]"
# Using uv
uv add "pbir-utils[ui]"
🚀 Quick Start
CLI
# Launch interactive web UI (alias: pbir-utils serve)
pbir-utils ui
# Sanitize a report (dry-run to preview changes)
pbir-utils sanitize "C:\Reports\MyReport.Report" --dry-run
# Validate a report against rules
pbir-utils validate "C:\Reports\MyReport.Report"
# Extract metadata to CSV
pbir-utils extract-metadata "C:\Reports\MyReport.Report"
# Visualize report wireframes
pbir-utils visualize "C:\Reports\MyReport.Report"
Python API
import pbir_utils as pbir
# Sanitize a report
pbir.sanitize_powerbi_report(r"C:\Reports\MyReport.Report", actions=["remove_unused_measures", "standardize_pbir_folders"])
✨ Features
- 💻 CLI Support: Access all utilities directly from the command line
- 🌐 Web UI: Interactive browser-based interface for reports and actions
- ⚙️ CI/CD Integration: Validate reports in pipelines before deployment
- ✅ Validate Reports: Rule-based validation with custom expressions
- 📄 Extract Metadata: Retrieve key metadata from PBIR files
- 🖼️ Wireframe Visualizer: Visualize PBIR report layout
- 🧼 Sanitize Reports: Clean up and optimize reports with YAML configuration
- ⛔ Disable Interactions: Bulk disable interactions
- 🧹 Manage Measures: Remove unused measures, analyze dependencies
- 🔍 Filter Management: Update and sort report-level filters
- 📂 Standardize Folder Names: Organize page and visual folders
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pbir_utils-2.5.2.tar.gz.
File metadata
- Download URL: pbir_utils-2.5.2.tar.gz
- Upload date:
- Size: 212.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e284bf9762bf276e49233cf7409fe2da0ecec98270168a0a97c48be82de075ec
|
|
| MD5 |
296ad0622f9053c3876d5db4afdeb45e
|
|
| BLAKE2b-256 |
6973bc8ed92c4b2067c235ab85a95c8ccaae26b94fa15186f1927f834b725423
|
File details
Details for the file pbir_utils-2.5.2-py3-none-any.whl.
File metadata
- Download URL: pbir_utils-2.5.2-py3-none-any.whl
- Upload date:
- Size: 145.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62792d2cc09ccb5c50e69c6a6aef689743a26755d08bc07dceb3e5ae6de77e53
|
|
| MD5 |
bc716722f34e4dc12700dc016be669f3
|
|
| BLAKE2b-256 |
155107312f7612c4dd5319823dbe9410654775914be0dce8d6e01bab0a2c22d6
|