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.
Metadata
Release files for pbir-utils 2.5.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pbir_utils-2.5.2.tar.gz | 212.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pbir_utils-2.5.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 357.7 kB
Release files / pbir_utils-2.5.2.tar.gz
| Download URL | pbir_utils-2.5.2.tar.gz |
|---|---|
| Size | 212.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e284bf9762bf276e49233cf7409fe2da0ecec98270168a0a97c48be82de075ec
|
|
BLAKE2b-256 checksum How to use checksums |
6973bc8ed92c4b2067c235ab85a95c8ccaae26b94fa15186f1927f834b725423
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / pbir_utils-2.5.2-py3-none-any.whl
| Download URL | pbir_utils-2.5.2-py3-none-any.whl |
|---|---|
| Size | 145.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
62792d2cc09ccb5c50e69c6a6aef689743a26755d08bc07dceb3e5ae6de77e53
|
|
BLAKE2b-256 checksum How to use checksums |
155107312f7612c4dd5319823dbe9410654775914be0dce8d6e01bab0a2c22d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|