Skip to main content

Scaffold Power BI projects instantly from templates

Project description

fastbi ⚡️

Scaffold Power BI projects instantly from templates.

PyPI version License: MIT Python 3.10+

Create ready-to-use Power BI Projects (.pbip) with intelligent renaming and path updates—all from a single command.



fastbi demo

From template to working project in seconds.


✨ Quick Start

Installation

Option 1: Use without installing (quickest)

uvx fastbi "My Project"

Option 2: Install globally (recommended for frequent use)

pip install fastbi

# Or with uv:
uv pip install fastbi

Option 3: Run directly with uvx

# No installation needed, runs in isolated environment
uvx fastbi "My Project"

First-Time Setup

The first time you run fastbi, a setup wizard will ask for your .pbip template folder location.

fastbi demo first time

First time setup: uvx fastbi "My Project" prompts for template configuration.

# Try creating your first project - the wizard launches automatically
fastbi "My First Report"

# 🪄 The wizard will start:
# 🚀 Welcome! Let's configure your .pbip project template.
# Drag your template folder here and press Enter: _

Create Projects

Once configured, just pass the project name:

fastbi demo subsequent

Subsequent use: uvx fastbi "new project" creates a project without re-configuring the template.

# The main way (recommended):
fastbi "Q4 Sales Dashboard"

# ✓ Success! Project created at '202510 - Q4 Sales Dashboard'

Multiple ways to create projects:

# Shortcut (fastest):
fastbi "Annual Report"

# Explicit command:
fastbi create "Annual Report"
fastbi new "Annual Report"

# Using fbi alias (same functionality):
fbi "Annual Report"

🔧 How It Works

fastbi doesn't just copy files—it performs intelligent scaffolding:

  • 🔍 Discovery: Analyzes your .pbip template and automatically detects the base project structure
  • ✏️ Rename: Updates folder names, .pbip file, and .Report/.SemanticModel directories to match your new project
  • 🔄 Update: Edits internal JSON configs (.pbip, .pbir, .platform) so all paths and display names work correctly in Fabric

Result: Zero manual fixes. Your project just works.


🎨 Creating Your Template

The power of fastbi is that it works with your own template. Here's how:

  1. Design Your Base Report: Open Power BI Desktop and create your ideal starting point—add logos, themes, common pages, standard visuals.

  2. Save as Project: Go to File > Save As. In the file type dropdown, choose Power BI Project (*.pbip) instead of .pbix.

  3. That's Your Template: Power BI creates a folder with the project structure. Point the fastbi setup wizard to this folder.

Living Template: Update your base report anytime. Just save it as .pbip again in the same location. All future projects will inherit the changes automatically.


🧰 Commands

Command Action
fastbi "Name" Create a new project (shortcut)
fastbi create "Name" Create a new project (explicit)
fastbi new "Name" Create a new project (alias)
fastbi setup Configure or reconfigure template path
fastbi --help Show all commands and options
fbi "Name" Same as fastbi, just cooler 😎

💡 Why fastbi?

  • Zero Config Needed: Works with any .pbip template structure
  • Intelligent Updates: Automatically fixes all internal paths and references
  • Date Prefixing: Auto-adds YYYYMM - prefix to keep projects organized
  • Error Prevention: Validates names and prevents overwrites
  • Multiple Aliases: Use fastbi, create, new, or fbi - whatever fits your style

🚀 Advanced Usage

Using with uv (recommended for speed)

# Install with uv (faster than pip)
uv pip install fastbi

# Or run without installing
uvx fastbi "Project Name"

Reconfiguring Template

Need to change your template location?

fastbi setup

The wizard will guide you through selecting a new template folder.


📦 What Gets Created

When you run fastbi "Sales Report", you get:

202410 - Sales Report/
├── Sales Report.pbip                    # Renamed project file
├── Sales Report.Report/                 # Renamed report folder
│   ├── definition.pbir                  # Updated with new paths
│   └── .platform                        # Updated display name
└── Sales Report.SemanticModel/          # Renamed model folder
    └── .platform                        # Updated display name

All internal references are automatically updated to match the new names.


🐛 Troubleshooting

"No .pbip file found in template"

  • Make sure your template folder contains a .pbip file
  • The template must be saved as Power BI Project format, not .pbix

"Directory already exists"

  • A project with that name already exists for this month
  • Choose a different name or delete the existing folder

Commands not working?

  • Make sure you're using the latest version: pip install --upgrade fastbi
  • For uvx users: uvx --refresh fastbi "Project"

🤝 Contributing

Issues and pull requests are welcome! Visit the GitHub repository.


📝 License

MIT License - see LICENSE file for details.


Built for analysts and developers who value their time.

Forge your Power BI projects. Don't fight with folder structures.

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

fastbi-0.1.2.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

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

fastbi-0.1.2-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file fastbi-0.1.2.tar.gz.

File metadata

  • Download URL: fastbi-0.1.2.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for fastbi-0.1.2.tar.gz
Algorithm Hash digest
SHA256 18077bcfa20494dcfc1ea01ace59351e6e10f1860a1ba4565483275130f73661
MD5 035cac64676a36c04ffcff03790c5810
BLAKE2b-256 d7b5b3dd4955462ee8d5ece36a4398a9a2c1e9506728e56bb9b8fb174125f962

See more details on using hashes here.

File details

Details for the file fastbi-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: fastbi-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for fastbi-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ce20f3d4c85546f79bee40ae95c9b470bc3d7773d224e33f67771979fc0a7ce6
MD5 0ec2ae64483a8511c5c427b0f2ad14df
BLAKE2b-256 7eca7b7987164084ad4e21f0bfa64e903a5aa7fdaa9cfc7d1eddec044029e1f4

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