@luquimbo/bi-superpowers 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.claude-plugin/skill-manifest.json +1 -1
  4. package/.plugin/plugin.json +1 -1
  5. package/README.md +2 -2
  6. package/bin/build-plugin.js +6 -6
  7. package/bin/cli.js +169 -310
  8. package/bin/commands/install.js +87 -70
  9. package/bin/commands/install.test.js +2 -2
  10. package/bin/lib/agents.js +21 -2
  11. package/bin/lib/mcp-config.js +27 -5
  12. package/bin/lib/mcp-config.test.js +1 -1
  13. package/desktop-extension/manifest.json +4 -11
  14. package/desktop-extension/server.js +34 -25
  15. package/package.json +3 -9
  16. package/skills/pbi-connect/SKILL.md +1 -1
  17. package/skills/project-kickoff/SKILL.md +1 -1
  18. package/bin/commands/add.js +0 -533
  19. package/bin/commands/add.test.js +0 -77
  20. package/bin/commands/changelog.js +0 -443
  21. package/bin/commands/pull.js +0 -287
  22. package/bin/commands/pull.test.js +0 -36
  23. package/bin/commands/push.js +0 -231
  24. package/bin/commands/push.test.js +0 -14
  25. package/bin/commands/search.js +0 -344
  26. package/bin/commands/search.test.js +0 -115
  27. package/bin/commands/setup.js +0 -545
  28. package/bin/commands/setup.test.js +0 -46
  29. package/bin/commands/sync-profile.js +0 -405
  30. package/bin/commands/sync-profile.test.js +0 -14
  31. package/bin/commands/sync-source.js +0 -418
  32. package/bin/commands/sync-source.test.js +0 -14
  33. package/bin/utils/errors.js +0 -159
  34. package/bin/utils/git.js +0 -298
  35. package/bin/utils/logger.js +0 -142
  36. package/bin/utils/pbix.js +0 -305
  37. package/bin/utils/pbix.test.js +0 -37
  38. package/bin/utils/profiles.js +0 -312
  39. package/bin/utils/projects.js +0 -169
  40. package/bin/utils/readline.js +0 -206
  41. package/bin/utils/readline.test.js +0 -47
  42. package/docs/openrouter-free-models.md +0 -92
  43. package/library/examples/README.md +0 -151
  44. package/library/examples/finance-reporting/README.md +0 -351
  45. package/library/examples/finance-reporting/data-model.md +0 -267
  46. package/library/examples/finance-reporting/measures.dax +0 -557
  47. package/library/examples/hr-analytics/README.md +0 -371
  48. package/library/examples/hr-analytics/data-model.md +0 -315
  49. package/library/examples/hr-analytics/measures.dax +0 -460
  50. package/library/examples/marketing-analytics/README.md +0 -37
  51. package/library/examples/marketing-analytics/data-model.md +0 -62
  52. package/library/examples/marketing-analytics/measures.dax +0 -110
  53. package/library/examples/retail-analytics/README.md +0 -439
  54. package/library/examples/retail-analytics/data-model.md +0 -288
  55. package/library/examples/retail-analytics/measures.dax +0 -481
  56. package/library/examples/supply-chain/README.md +0 -37
  57. package/library/examples/supply-chain/data-model.md +0 -69
  58. package/library/examples/supply-chain/measures.dax +0 -77
  59. package/library/examples/udf-library/README.md +0 -228
  60. package/library/examples/udf-library/functions.dax +0 -571
  61. package/library/snippets/dax/README.md +0 -292
  62. package/library/snippets/dax/business-domains.md +0 -576
  63. package/library/snippets/dax/calculate-patterns.md +0 -276
  64. package/library/snippets/dax/calculation-groups.md +0 -489
  65. package/library/snippets/dax/error-handling.md +0 -495
  66. package/library/snippets/dax/iterators-and-aggregations.md +0 -474
  67. package/library/snippets/dax/kpis-and-metrics.md +0 -293
  68. package/library/snippets/dax/rankings-and-topn.md +0 -235
  69. package/library/snippets/dax/security-patterns.md +0 -413
  70. package/library/snippets/dax/text-and-formatting.md +0 -316
  71. package/library/snippets/dax/time-intelligence.md +0 -196
  72. package/library/snippets/dax/user-defined-functions.md +0 -477
  73. package/library/snippets/dax/virtual-tables.md +0 -546
  74. package/library/snippets/excel-formulas/README.md +0 -84
  75. package/library/snippets/excel-formulas/aggregations.md +0 -330
  76. package/library/snippets/excel-formulas/dates-and-times.md +0 -361
  77. package/library/snippets/excel-formulas/dynamic-arrays.md +0 -314
  78. package/library/snippets/excel-formulas/lookups.md +0 -169
  79. package/library/snippets/excel-formulas/text-functions.md +0 -363
  80. package/library/snippets/governance/naming-conventions.md +0 -97
  81. package/library/snippets/governance/review-checklists.md +0 -107
  82. package/library/snippets/power-query/README.md +0 -389
  83. package/library/snippets/power-query/api-integration.md +0 -707
  84. package/library/snippets/power-query/connections.md +0 -434
  85. package/library/snippets/power-query/data-cleaning.md +0 -298
  86. package/library/snippets/power-query/error-handling.md +0 -526
  87. package/library/snippets/power-query/parameters.md +0 -350
  88. package/library/snippets/power-query/performance.md +0 -506
  89. package/library/snippets/power-query/transformations.md +0 -330
  90. package/library/snippets/report-design/accessibility.md +0 -78
  91. package/library/snippets/report-design/chart-selection.md +0 -54
  92. package/library/snippets/report-design/layout-patterns.md +0 -87
  93. package/library/templates/data-models/README.md +0 -93
  94. package/library/templates/data-models/finance-model.md +0 -627
  95. package/library/templates/data-models/retail-star-schema.md +0 -473
  96. package/library/templates/excel/README.md +0 -83
  97. package/library/templates/excel/budget-tracker.md +0 -432
  98. package/library/templates/excel/data-entry-form.md +0 -533
  99. package/library/templates/power-bi/README.md +0 -72
  100. package/library/templates/power-bi/finance-report.md +0 -449
  101. package/library/templates/power-bi/kpi-scorecard.md +0 -461
  102. package/library/templates/power-bi/sales-dashboard.md +0 -281
  103. package/library/themes/excel/README.md +0 -436
  104. package/library/themes/power-bi/README.md +0 -271
  105. package/library/themes/power-bi/accessible.json +0 -307
  106. package/library/themes/power-bi/bi-superpowers-default.json +0 -858
  107. package/library/themes/power-bi/corporate-blue.json +0 -291
  108. package/library/themes/power-bi/dark-mode.json +0 -291
  109. package/library/themes/power-bi/minimal.json +0 -292
  110. package/library/themes/power-bi/print-friendly.json +0 -309
@@ -1,432 +0,0 @@
1
- # Budget Tracker Template
2
-
3
- ## Overview
4
-
5
- A comprehensive Excel workbook for tracking departmental or project budgets against actuals, with variance analysis and forecasting capabilities.
6
-
7
- ---
8
-
9
- ## Target Audience
10
-
11
- - Budget Managers
12
- - Project Managers
13
- - Department Heads
14
- - Finance Analysts
15
- - Small Business Owners
16
-
17
- ---
18
-
19
- ## Workbook Structure
20
-
21
- ### Sheet 1: Dashboard
22
-
23
- **Purpose:** Visual summary of budget status
24
-
25
- | Section | Position | Content |
26
- |---------|----------|---------|
27
- | Header | A1:H2 | Title, Current Period, Last Updated |
28
- | KPI Cards | A4:H6 | Total Budget, Spent, Remaining, % Used |
29
- | Budget vs Actual Chart | A8:E20 | Clustered column chart by category |
30
- | Trend Chart | F8:H20 | Line chart showing monthly spend vs budget |
31
- | Category Breakdown | A22:D35 | Pie chart of spend by category |
32
- | Alerts Table | E22:H35 | Over-budget items highlighted |
33
-
34
- ### Sheet 2: Budget Input
35
-
36
- **Purpose:** Annual budget setup by category
37
-
38
- | Column | Header | Description |
39
- |--------|--------|-------------|
40
- | A | Category | Budget category (e.g., Salaries, Marketing) |
41
- | B | Subcategory | Detailed line item |
42
- | C | Annual Budget | Total annual budget |
43
- | D-O | Jan-Dec | Monthly allocation (can be equal or custom) |
44
-
45
- **Sample Categories:**
46
- ```
47
- Personnel
48
- - Salaries
49
- - Benefits
50
- - Contractors
51
- - Training
52
-
53
- Operations
54
- - Rent
55
- - Utilities
56
- - Insurance
57
- - Maintenance
58
-
59
- Technology
60
- - Software
61
- - Hardware
62
- - Cloud Services
63
- - IT Support
64
-
65
- Marketing
66
- - Advertising
67
- - Events
68
- - Content
69
- - PR
70
-
71
- Travel
72
- - Airfare
73
- - Hotels
74
- - Meals
75
- - Ground Transport
76
- ```
77
-
78
- ### Sheet 3: Actuals Input
79
-
80
- **Purpose:** Record actual expenses
81
-
82
- | Column | Header | Description |
83
- |--------|--------|-------------|
84
- | A | Date | Transaction date |
85
- | B | Category | Budget category (dropdown) |
86
- | C | Subcategory | Line item (dependent dropdown) |
87
- | D | Description | Transaction description |
88
- | E | Vendor | Vendor/Supplier name |
89
- | F | Amount | Expense amount |
90
- | G | Payment Method | Cash/Card/Transfer |
91
- | H | Reference | Invoice/PO number |
92
- | I | Notes | Additional notes |
93
-
94
- ### Sheet 4: Variance Analysis
95
-
96
- **Purpose:** Compare budget to actuals
97
-
98
- | Column | Header | Formula Concept |
99
- |--------|--------|-----------------|
100
- | A | Category | From Budget Input |
101
- | B | Budget MTD | SUMIFS by category and month |
102
- | C | Actual MTD | SUMIFS from Actuals |
103
- | D | Variance MTD | Budget - Actual |
104
- | E | Variance % | Variance / Budget |
105
- | F | Budget YTD | SUMIFS YTD budget |
106
- | G | Actual YTD | SUMIFS YTD actuals |
107
- | H | Variance YTD | Budget YTD - Actual YTD |
108
- | I | Status | Conditional formula for status |
109
- | J | Forecast | Projected year-end based on trend |
110
-
111
- ### Sheet 5: Monthly Summary
112
-
113
- **Purpose:** Month-by-month tracking
114
-
115
- | Structure | Description |
116
- |-----------|-------------|
117
- | Rows | Categories and subcategories |
118
- | Columns | Jan Budget, Jan Actual, Jan Var, Feb Budget, Feb Actual, Feb Var, ... |
119
- | Totals | Row totals, Column totals |
120
-
121
- ### Sheet 6: Settings
122
-
123
- **Purpose:** Configuration and reference data
124
-
125
- | Section | Content |
126
- |---------|---------|
127
- | Category List | Master list of categories |
128
- | Subcategory List | Dependent list by category |
129
- | Current Period | Month/Year selection |
130
- | Thresholds | Alert thresholds (e.g., 90%, 100%, 110%) |
131
- | User Info | Prepared by, Department, Fiscal Year |
132
-
133
- ---
134
-
135
- ## Key Formulas
136
-
137
- ### Budget Calculations
138
-
139
- ```excel
140
- // Total Budget
141
- =SUM(BudgetInput[Annual Budget])
142
-
143
- // Budget for Current Month
144
- =SUMIFS(BudgetInput[Jan], BudgetInput[Category], "<>")
145
- // Or dynamically:
146
- =SUMIFS(
147
- INDEX(BudgetInput, 0, MATCH(CurrentMonth, BudgetInput[#Headers], 0)),
148
- BudgetInput[Category], "<>"
149
- )
150
-
151
- // Budget YTD
152
- =SUMPRODUCT(
153
- (BudgetInput[Category]<>"") *
154
- MMULT(
155
- BudgetInput[[Jan]:[Dec]] * (COLUMN(BudgetInput[[Jan]:[Dec]]) - COLUMN(BudgetInput[Jan]) + 1 <= CurrentMonthNum),
156
- TRANSPOSE(COLUMN(BudgetInput[[Jan]:[Dec]])^0)
157
- )
158
- )
159
- ```
160
-
161
- ### Actuals Calculations
162
-
163
- ```excel
164
- // Total Spent
165
- =SUM(Actuals[Amount])
166
-
167
- // Spent by Category
168
- =SUMIFS(Actuals[Amount], Actuals[Category], A2)
169
-
170
- // Spent This Month
171
- =SUMIFS(
172
- Actuals[Amount],
173
- Actuals[Date], ">="&DATE(YEAR(TODAY()), MONTH(TODAY()), 1),
174
- Actuals[Date], "<="&EOMONTH(TODAY(), 0)
175
- )
176
-
177
- // Spent YTD
178
- =SUMIFS(
179
- Actuals[Amount],
180
- Actuals[Date], ">="&DATE(FiscalYear, 1, 1),
181
- Actuals[Date], "<="&TODAY()
182
- )
183
- ```
184
-
185
- ### Variance Analysis
186
-
187
- ```excel
188
- // Variance (Favorable when under budget)
189
- =Budget - Actual
190
-
191
- // Variance %
192
- =IFERROR((Budget - Actual) / Budget, 0)
193
-
194
- // Status Indicator
195
- =IFS(
196
- Actual/Budget > 1.1, "Over Budget",
197
- Actual/Budget > 1, "At Risk",
198
- Actual/Budget > 0.9, "On Track",
199
- TRUE, "Under Utilized"
200
- )
201
-
202
- // Conditional Icon
203
- =IFS(
204
- Variance% < -0.1, UNICHAR(9660), // Down arrow (bad)
205
- Variance% < 0, UNICHAR(9679), // Dot (caution)
206
- TRUE, UNICHAR(9650) // Up arrow (good)
207
- )
208
- ```
209
-
210
- ### Forecasting
211
-
212
- ```excel
213
- // Linear Forecast to Year End
214
- =Actual_YTD / MonthsElapsed * 12
215
-
216
- // Trend-based Forecast
217
- =FORECAST(12, ActualsArray, MonthsArray)
218
-
219
- // Remaining Budget
220
- =Annual_Budget - Actual_YTD
221
-
222
- // Months of Runway
223
- =Remaining_Budget / (Actual_YTD / MonthsElapsed)
224
- ```
225
-
226
- ### Dashboard Formulas
227
-
228
- ```excel
229
- // % of Budget Used
230
- =Actual_YTD / Budget_YTD
231
-
232
- // Sparkline for trend
233
- =SPARKLINE(MonthlyActuals, {"charttype","column";"color","#0078D4"})
234
-
235
- // Conditional Color (for Excel 365)
236
- =LET(
237
- pct, Actual/Budget,
238
- IF(pct > 1, "Red", IF(pct > 0.9, "Yellow", "Green"))
239
- )
240
- ```
241
-
242
- ---
243
-
244
- ## Data Validation
245
-
246
- ### Category Dropdown
247
-
248
- ```
249
- Data Validation > List
250
- Source: =Settings!CategoryList
251
- ```
252
-
253
- ### Dependent Subcategory Dropdown
254
-
255
- ```
256
- Data Validation > List
257
- Source: =INDIRECT(Category_Cell)
258
- // Requires named ranges for each category's subcategories
259
- ```
260
-
261
- ### Date Validation
262
-
263
- ```
264
- Data Validation > Date
265
- Between: Start of fiscal year AND Today
266
- ```
267
-
268
- ### Amount Validation
269
-
270
- ```
271
- Data Validation > Decimal
272
- Greater than: 0
273
- ```
274
-
275
- ---
276
-
277
- ## Conditional Formatting
278
-
279
- ### Variance Column
280
-
281
- | Rule | Format |
282
- |------|--------|
283
- | Value > 0 | Green background, dark green text |
284
- | Value = 0 | No format |
285
- | Value < 0 | Red background, dark red text |
286
-
287
- ### Status Column
288
-
289
- | Rule | Format |
290
- |------|--------|
291
- | = "Over Budget" | Red background |
292
- | = "At Risk" | Yellow background |
293
- | = "On Track" | Green background |
294
- | = "Under Utilized" | Blue background |
295
-
296
- ### Data Bars
297
-
298
- Apply to Actual columns:
299
- - Minimum: 0
300
- - Maximum: Corresponding budget cell
301
- - Bar color: #0078D4
302
-
303
- ### Icon Sets
304
-
305
- Apply to Variance % column:
306
- - Green up arrow: > 0
307
- - Yellow dash: = 0
308
- - Red down arrow: < 0
309
-
310
- ---
311
-
312
- ## Charts Configuration
313
-
314
- ### Budget vs Actual (Clustered Column)
315
-
316
- ```
317
- Data: Categories, Budget, Actual
318
- Chart Type: Clustered Column
319
- Budget Series: Gray (#808080)
320
- Actual Series: Blue (#0078D4)
321
- Data Labels: Outside End
322
- Gap Width: 50%
323
- ```
324
-
325
- ### Spend Trend (Line Chart)
326
-
327
- ```
328
- Data: Months, Budget Line, Actual Line
329
- Chart Type: Line with Markers
330
- Budget Line: Dashed gray
331
- Actual Line: Solid blue
332
- Add trendline to Actual if desired
333
- ```
334
-
335
- ### Category Breakdown (Pie/Donut)
336
-
337
- ```
338
- Data: Categories, Actual Spend
339
- Chart Type: Doughnut
340
- Hole Size: 50%
341
- Show percentages as data labels
342
- Explode largest slice
343
- ```
344
-
345
- ---
346
-
347
- ## Pivot Tables (Optional)
348
-
349
- ### Spend by Category and Month
350
-
351
- ```
352
- Rows: Category, Subcategory
353
- Columns: Month (from Date)
354
- Values: Sum of Amount
355
- Filter: Year
356
- ```
357
-
358
- ### Vendor Analysis
359
-
360
- ```
361
- Rows: Vendor
362
- Columns: Category
363
- Values: Sum of Amount
364
- Sort: Descending by total
365
- ```
366
-
367
- ---
368
-
369
- ## Protection Settings
370
-
371
- ### Protected Elements
372
-
373
- - Dashboard sheet: Full protection (view only)
374
- - Variance Analysis: Formula cells protected
375
- - Settings: Admin-only access
376
-
377
- ### Unprotected Elements
378
-
379
- - Actuals Input: Data entry cells
380
- - Budget Input: Budget allocation cells
381
-
382
- ### Recommended Protection
383
-
384
- ```
385
- Sheet Protection:
386
- - Select locked cells: Yes
387
- - Select unlocked cells: Yes
388
- - Format cells: No
389
- - Insert rows: No (except Actuals)
390
- - Delete rows: No
391
- ```
392
-
393
- ---
394
-
395
- ## Print Layout
396
-
397
- ### Dashboard Print Area
398
-
399
- - Fit to 1 page wide
400
- - Landscape orientation
401
- - Include header with date/page number
402
- - Gridlines off
403
-
404
- ### Variance Report Print
405
-
406
- - Portrait orientation
407
- - Repeat header row on each page
408
- - Include category subtotals
409
- - Page break after each category
410
-
411
- ---
412
-
413
- ## Implementation Checklist
414
-
415
- - [ ] Set up Settings sheet with categories and parameters
416
- - [ ] Create Budget Input table with annual allocations
417
- - [ ] Build Actuals Input table with data validation
418
- - [ ] Create Variance Analysis with all formulas
419
- - [ ] Build Dashboard with charts and KPIs
420
- - [ ] Apply conditional formatting throughout
421
- - [ ] Test formulas with sample data
422
- - [ ] Apply sheet protection
423
- - [ ] Configure print areas
424
- - [ ] Document instructions for users
425
-
426
- ---
427
-
428
- ## Related Resources
429
-
430
- - [Excel Aggregation Functions](../../snippets/excel-formulas/aggregations.md)
431
- - [Date Functions](../../snippets/excel-formulas/dates-and-times.md)
432
- - [Dynamic Arrays](../../snippets/excel-formulas/dynamic-arrays.md)