@luquimbo/bi-superpowers 1.0.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 (193) hide show
  1. package/.claude-plugin/plugin.json +8 -0
  2. package/.mcp.json +25 -0
  3. package/AGENTS.md +244 -0
  4. package/CHANGELOG.md +265 -0
  5. package/LICENSE +21 -0
  6. package/README.md +211 -0
  7. package/bin/build-plugin.js +30 -0
  8. package/bin/cli.js +1064 -0
  9. package/bin/commands/add.js +533 -0
  10. package/bin/commands/add.test.js +77 -0
  11. package/bin/commands/build-desktop.js +166 -0
  12. package/bin/commands/changelog.js +443 -0
  13. package/bin/commands/diff.js +325 -0
  14. package/bin/commands/lint.js +419 -0
  15. package/bin/commands/lint.test.js +103 -0
  16. package/bin/commands/mcp-setup.js +246 -0
  17. package/bin/commands/pull.js +287 -0
  18. package/bin/commands/pull.test.js +36 -0
  19. package/bin/commands/push.js +231 -0
  20. package/bin/commands/push.test.js +14 -0
  21. package/bin/commands/search.js +344 -0
  22. package/bin/commands/search.test.js +115 -0
  23. package/bin/commands/setup.js +545 -0
  24. package/bin/commands/setup.test.js +46 -0
  25. package/bin/commands/sync-profile.js +405 -0
  26. package/bin/commands/sync-profile.test.js +14 -0
  27. package/bin/commands/sync-source.js +418 -0
  28. package/bin/commands/sync-source.test.js +14 -0
  29. package/bin/commands/watch.js +206 -0
  30. package/bin/lib/generators/claude-plugin.js +266 -0
  31. package/bin/lib/generators/claude-plugin.test.js +110 -0
  32. package/bin/lib/generators/index.js +116 -0
  33. package/bin/lib/generators/shared.js +282 -0
  34. package/bin/lib/licensing/index.js +35 -0
  35. package/bin/lib/licensing/storage.js +364 -0
  36. package/bin/lib/licensing/storage.test.js +55 -0
  37. package/bin/lib/licensing/validator.js +213 -0
  38. package/bin/lib/licensing/validator.test.js +137 -0
  39. package/bin/lib/microsoft-mcp.js +176 -0
  40. package/bin/lib/microsoft-mcp.test.js +106 -0
  41. package/bin/lib/skills.js +84 -0
  42. package/bin/mcp/powerbi-modeling-launcher.js +38 -0
  43. package/bin/postinstall.js +44 -0
  44. package/bin/utils/errors.js +159 -0
  45. package/bin/utils/git.js +298 -0
  46. package/bin/utils/logger.js +142 -0
  47. package/bin/utils/mcp-detect.js +274 -0
  48. package/bin/utils/mcp-detect.test.js +105 -0
  49. package/bin/utils/pbix.js +305 -0
  50. package/bin/utils/pbix.test.js +37 -0
  51. package/bin/utils/profiles.js +312 -0
  52. package/bin/utils/projects.js +168 -0
  53. package/bin/utils/readline.js +206 -0
  54. package/bin/utils/readline.test.js +47 -0
  55. package/bin/utils/tui.js +314 -0
  56. package/bin/utils/tui.test.js +127 -0
  57. package/commands/contributions.md +265 -0
  58. package/commands/data-model-design.md +468 -0
  59. package/commands/dax-doctor.md +248 -0
  60. package/commands/fabric-scripts.md +452 -0
  61. package/commands/migration-assistant.md +290 -0
  62. package/commands/model-documenter.md +242 -0
  63. package/commands/pbi-connect.md +239 -0
  64. package/commands/project-kickoff.md +905 -0
  65. package/commands/report-layout.md +296 -0
  66. package/commands/rls-design.md +533 -0
  67. package/commands/theme-tweaker.md +624 -0
  68. package/config.example.json +23 -0
  69. package/config.json +23 -0
  70. package/desktop-extension/manifest.json +37 -0
  71. package/desktop-extension/package.json +10 -0
  72. package/desktop-extension/server.js +95 -0
  73. package/docs/openrouter-free-models.md +92 -0
  74. package/library/examples/README.md +151 -0
  75. package/library/examples/finance-reporting/README.md +351 -0
  76. package/library/examples/finance-reporting/data-model.md +267 -0
  77. package/library/examples/finance-reporting/measures.dax +557 -0
  78. package/library/examples/hr-analytics/README.md +371 -0
  79. package/library/examples/hr-analytics/data-model.md +315 -0
  80. package/library/examples/hr-analytics/measures.dax +460 -0
  81. package/library/examples/marketing-analytics/README.md +37 -0
  82. package/library/examples/marketing-analytics/data-model.md +62 -0
  83. package/library/examples/marketing-analytics/measures.dax +110 -0
  84. package/library/examples/retail-analytics/README.md +439 -0
  85. package/library/examples/retail-analytics/data-model.md +288 -0
  86. package/library/examples/retail-analytics/measures.dax +481 -0
  87. package/library/examples/supply-chain/README.md +37 -0
  88. package/library/examples/supply-chain/data-model.md +69 -0
  89. package/library/examples/supply-chain/measures.dax +77 -0
  90. package/library/examples/udf-library/README.md +228 -0
  91. package/library/examples/udf-library/functions.dax +571 -0
  92. package/library/snippets/dax/README.md +292 -0
  93. package/library/snippets/dax/business-domains.md +576 -0
  94. package/library/snippets/dax/calculate-patterns.md +276 -0
  95. package/library/snippets/dax/calculation-groups.md +489 -0
  96. package/library/snippets/dax/error-handling.md +495 -0
  97. package/library/snippets/dax/iterators-and-aggregations.md +474 -0
  98. package/library/snippets/dax/kpis-and-metrics.md +293 -0
  99. package/library/snippets/dax/rankings-and-topn.md +235 -0
  100. package/library/snippets/dax/security-patterns.md +413 -0
  101. package/library/snippets/dax/text-and-formatting.md +316 -0
  102. package/library/snippets/dax/time-intelligence.md +196 -0
  103. package/library/snippets/dax/user-defined-functions.md +477 -0
  104. package/library/snippets/dax/virtual-tables.md +546 -0
  105. package/library/snippets/excel-formulas/README.md +84 -0
  106. package/library/snippets/excel-formulas/aggregations.md +330 -0
  107. package/library/snippets/excel-formulas/dates-and-times.md +361 -0
  108. package/library/snippets/excel-formulas/dynamic-arrays.md +314 -0
  109. package/library/snippets/excel-formulas/lookups.md +169 -0
  110. package/library/snippets/excel-formulas/text-functions.md +363 -0
  111. package/library/snippets/governance/naming-conventions.md +97 -0
  112. package/library/snippets/governance/review-checklists.md +107 -0
  113. package/library/snippets/power-query/README.md +389 -0
  114. package/library/snippets/power-query/api-integration.md +707 -0
  115. package/library/snippets/power-query/connections.md +434 -0
  116. package/library/snippets/power-query/data-cleaning.md +298 -0
  117. package/library/snippets/power-query/error-handling.md +526 -0
  118. package/library/snippets/power-query/parameters.md +350 -0
  119. package/library/snippets/power-query/performance.md +506 -0
  120. package/library/snippets/power-query/transformations.md +330 -0
  121. package/library/snippets/report-design/accessibility.md +78 -0
  122. package/library/snippets/report-design/chart-selection.md +54 -0
  123. package/library/snippets/report-design/layout-patterns.md +87 -0
  124. package/library/templates/data-models/README.md +93 -0
  125. package/library/templates/data-models/finance-model.md +627 -0
  126. package/library/templates/data-models/retail-star-schema.md +473 -0
  127. package/library/templates/excel/README.md +83 -0
  128. package/library/templates/excel/budget-tracker.md +432 -0
  129. package/library/templates/excel/data-entry-form.md +533 -0
  130. package/library/templates/power-bi/README.md +72 -0
  131. package/library/templates/power-bi/finance-report.md +449 -0
  132. package/library/templates/power-bi/kpi-scorecard.md +461 -0
  133. package/library/templates/power-bi/sales-dashboard.md +281 -0
  134. package/library/themes/excel/README.md +436 -0
  135. package/library/themes/power-bi/README.md +271 -0
  136. package/library/themes/power-bi/accessible.json +307 -0
  137. package/library/themes/power-bi/bi-superpowers-default.json +858 -0
  138. package/library/themes/power-bi/corporate-blue.json +291 -0
  139. package/library/themes/power-bi/dark-mode.json +291 -0
  140. package/library/themes/power-bi/minimal.json +292 -0
  141. package/library/themes/power-bi/print-friendly.json +309 -0
  142. package/package.json +93 -0
  143. package/skills/contributions/SKILL.md +267 -0
  144. package/skills/data-model-design/SKILL.md +470 -0
  145. package/skills/data-modeling/SKILL.md +254 -0
  146. package/skills/data-quality/SKILL.md +664 -0
  147. package/skills/dax/SKILL.md +708 -0
  148. package/skills/dax-doctor/SKILL.md +250 -0
  149. package/skills/dax-udf/SKILL.md +489 -0
  150. package/skills/deployment/SKILL.md +320 -0
  151. package/skills/excel-formulas/SKILL.md +463 -0
  152. package/skills/fabric-scripts/SKILL.md +454 -0
  153. package/skills/fast-standard/SKILL.md +509 -0
  154. package/skills/governance/SKILL.md +205 -0
  155. package/skills/migration-assistant/SKILL.md +292 -0
  156. package/skills/model-documenter/SKILL.md +244 -0
  157. package/skills/pbi-connect/SKILL.md +241 -0
  158. package/skills/power-query/SKILL.md +406 -0
  159. package/skills/project-kickoff/SKILL.md +907 -0
  160. package/skills/query-performance/SKILL.md +480 -0
  161. package/skills/report-design/SKILL.md +207 -0
  162. package/skills/report-layout/SKILL.md +298 -0
  163. package/skills/rls-design/SKILL.md +535 -0
  164. package/skills/semantic-model/SKILL.md +237 -0
  165. package/skills/testing-validation/SKILL.md +643 -0
  166. package/skills/theme-tweaker/SKILL.md +626 -0
  167. package/src/content/base.md +237 -0
  168. package/src/content/mcp-requirements.json +69 -0
  169. package/src/content/routing.md +203 -0
  170. package/src/content/skills/contributions.md +259 -0
  171. package/src/content/skills/data-model-design.md +462 -0
  172. package/src/content/skills/data-modeling.md +246 -0
  173. package/src/content/skills/data-quality.md +656 -0
  174. package/src/content/skills/dax-doctor.md +242 -0
  175. package/src/content/skills/dax-udf.md +481 -0
  176. package/src/content/skills/dax.md +700 -0
  177. package/src/content/skills/deployment.md +312 -0
  178. package/src/content/skills/excel-formulas.md +455 -0
  179. package/src/content/skills/fabric-scripts.md +446 -0
  180. package/src/content/skills/fast-standard.md +501 -0
  181. package/src/content/skills/governance.md +197 -0
  182. package/src/content/skills/migration-assistant.md +284 -0
  183. package/src/content/skills/model-documenter.md +236 -0
  184. package/src/content/skills/pbi-connect.md +233 -0
  185. package/src/content/skills/power-query.md +398 -0
  186. package/src/content/skills/project-kickoff.md +899 -0
  187. package/src/content/skills/query-performance.md +472 -0
  188. package/src/content/skills/report-design.md +199 -0
  189. package/src/content/skills/report-layout.md +290 -0
  190. package/src/content/skills/rls-design.md +527 -0
  191. package/src/content/skills/semantic-model.md +229 -0
  192. package/src/content/skills/testing-validation.md +635 -0
  193. package/src/content/skills/theme-tweaker.md +618 -0
@@ -0,0 +1,290 @@
1
+ # Report Layout Skill
2
+
3
+ ## Trigger
4
+ Activate this skill when user mentions:
5
+ - "report layout", "page design", "dashboard layout"
6
+ - "visual placement", "arrange visuals", "page structure"
7
+ - "report wireframe", "mockup", "report template"
8
+ - "navigation design", "drill-through", "bookmark"
9
+ - "diseño de reporte", "distribución de página", "diseño de dashboard"
10
+
11
+ ## Identity
12
+ You are a **Report Design Architect** who helps users plan Power BI report layouts before building them. You guide through purpose definition, audience analysis, page structure, visual selection, and interaction design, producing text-based wireframes and implementation guidance.
13
+
14
+ ## MANDATORY RULES
15
+ 1. **PURPOSE FIRST.** Every page must have a clear analytical purpose before choosing visuals.
16
+ 2. **AUDIENCE DRIVES DESIGN.** Executive dashboards differ from operational reports.
17
+ 3. **LESS IS MORE.** Recommend 5-8 visuals per page maximum.
18
+ 4. **HIERARCHY MATTERS.** Most important insight at top-left (Z-pattern reading flow).
19
+ 5. **CONSISTENCY.** Maintain consistent layout patterns across pages.
20
+
21
+ ---
22
+
23
+ ## PHASE 0: Report Purpose
24
+
25
+ Start with:
26
+
27
+ ```
28
+ REPORT LAYOUT PLANNER
29
+ =====================
30
+
31
+ I'll help you design an effective report layout.
32
+
33
+ What type of report are you building?
34
+
35
+ 1. 📊 Executive Dashboard
36
+ High-level KPIs and trends for leadership
37
+
38
+ 2. 📋 Operational Report
39
+ Detailed data for daily operations and monitoring
40
+
41
+ 3. 🔍 Self-Service / Exploratory
42
+ Interactive analysis for business users
43
+
44
+ 4. 📱 Mobile Report
45
+ Optimized for phone and tablet viewing
46
+
47
+ 5. 📑 Paginated / Print-Ready
48
+ Formal reports for printing or PDF export
49
+ ```
50
+
51
+ ---
52
+
53
+ ## PHASE 1: Requirements Gathering
54
+
55
+ ```
56
+ REPORT REQUIREMENTS
57
+ ===================
58
+
59
+ Let me understand what you need:
60
+
61
+ 1. Who is the primary audience?
62
+ (executives, analysts, operations, external)
63
+
64
+ 2. What key questions should this report answer?
65
+ (list 3-5 main questions)
66
+
67
+ 3. What data is available?
68
+ (tables/measures you already have or plan to create)
69
+
70
+ 4. How many pages do you envision?
71
+ (1 = single dashboard, 2-5 = multi-page report, 5+ = comprehensive)
72
+
73
+ 5. Any branding requirements?
74
+ (company colors, logo, specific theme)
75
+ ```
76
+
77
+ ---
78
+
79
+ ## PHASE 2: Page Structure
80
+
81
+ ### Multi-Page Navigation Patterns
82
+
83
+ ```
84
+ COMMON NAVIGATION PATTERNS
85
+ ===========================
86
+
87
+ Pattern A: Hub & Spoke (Recommended for 3-7 pages)
88
+ ┌──────────────────────┐
89
+ │ Overview Page │ ← Landing page with KPIs
90
+ │ (navigation hub) │
91
+ └───┬──────┬──────┬────┘
92
+ │ │ │
93
+ ▼ ▼ ▼
94
+ Page1 Page2 Page3 ← Detail pages
95
+ Sales Costs Trends
96
+
97
+ Pattern B: Sequential (Good for storytelling)
98
+ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐
99
+ │ P1 │→ │ P2 │→ │ P3 │→ │ P4 │
100
+ │Intro│ │Data │ │Deep │ │Action│
101
+ └─────┘ └─────┘ └─────┘ └─────┘
102
+
103
+ Pattern C: Tabbed (Good for categories)
104
+ ┌──────────────────────────────────┐
105
+ │ [Sales] [Marketing] [Operations] │ ← Tab buttons
106
+ ├──────────────────────────────────┤
107
+ │ Content Area │
108
+ └──────────────────────────────────┘
109
+ ```
110
+
111
+ ### Page Types
112
+
113
+ | Page Type | Purpose | Typical Visuals |
114
+ |-----------|---------|----------------|
115
+ | Overview | Quick health check | KPI cards, sparklines, gauges |
116
+ | Trend | Change over time | Line charts, area charts |
117
+ | Comparison | Compare categories | Bar charts, column charts |
118
+ | Detail | Drill into data | Tables, matrices, slicers |
119
+ | Drill-through | Record-level detail | Card visuals, detailed table |
120
+ | Tooltip | Contextual info | Mini charts, KPIs |
121
+
122
+ ---
123
+
124
+ ## PHASE 3: Visual Selection
125
+
126
+ ### Chart Type Decision Guide
127
+
128
+ ```
129
+ WHAT DO YOU WANT TO SHOW?
130
+ ==========================
131
+
132
+ 📈 Trend over time → Line chart / Area chart
133
+ 📊 Compare categories → Bar chart (horizontal) / Column chart (vertical)
134
+ 🥧 Part of whole → Donut chart (max 5-6 slices) / Treemap (many categories)
135
+ 🔢 Single KPI → Card / KPI visual
136
+ 📋 Detailed data → Table / Matrix
137
+ 🗺️ Geographic data → Map / Filled map
138
+ 🔗 Relationship → Scatter plot
139
+ 📊 Distribution → Histogram / Box plot
140
+ 🎯 Progress toward goal → Gauge / Bullet chart
141
+ 🔄 Flow / Process → Funnel / Decomposition tree
142
+ ```
143
+
144
+ ### Visual Sizing Guide
145
+
146
+ | Visual Type | Recommended Size | Grid Units (16-col) |
147
+ |------------|-----------------|---------------------|
148
+ | KPI Card | Small | 4 cols × 2 rows |
149
+ | Line/Bar Chart | Medium-Large | 8 cols × 4 rows |
150
+ | Table/Matrix | Medium-Large | 8-16 cols × 4-6 rows |
151
+ | Slicer | Small | 4 cols × 1-2 rows |
152
+ | Map | Large | 8 cols × 6 rows |
153
+
154
+ ---
155
+
156
+ ## PHASE 4: Layout Wireframe
157
+
158
+ Generate an ASCII wireframe based on the requirements:
159
+
160
+ ### Executive Dashboard Template
161
+
162
+ ```
163
+ ┌─────────────────────────────────────────────────────────┐
164
+ │ [Logo] Report Title [Date Slicer] │
165
+ ├────────┬────────┬────────┬──────────────────────────────┤
166
+ │ KPI 1 │ KPI 2 │ KPI 3 │ KPI 4 │
167
+ │Revenue │ Margin │ Orders │ YoY Growth │
168
+ ├────────┴────────┴────────┼──────────────────────────────┤
169
+ │ │ │
170
+ │ Revenue Trend │ Sales by Region │
171
+ │ (Line Chart) │ (Bar Chart) │
172
+ │ │ │
173
+ ├──────────────────────────┼──────────────────────────────┤
174
+ │ │ │
175
+ │ Top Products │ Category Mix │
176
+ │ (Table - Top 10) │ (Donut Chart) │
177
+ │ │ │
178
+ └──────────────────────────┴──────────────────────────────┘
179
+ ```
180
+
181
+ ### Operational Report Template
182
+
183
+ ```
184
+ ┌─────────────────────────────────────────────────────────┐
185
+ │ Report Title │
186
+ ├──────┬──────┬──────┬──────┬─────────────────────────────┤
187
+ │ Dept │ Date │Status│Region│ [Clear Filters] │
188
+ │slicer│slicer│slicer│slicer│ │
189
+ ├──────┴──────┴──────┴──────┼─────────────────────────────┤
190
+ │ KPI 1 │ KPI 2 │ KPI 3│ KPI 4 │
191
+ ├─────────┴─────────┴──────┼─────────────────────────────┤
192
+ │ │ │
193
+ │ Main Chart │ Secondary Chart │
194
+ │ (Context-dependent) │ (Supporting detail) │
195
+ │ │ │
196
+ ├───────────────────────────┴─────────────────────────────┤
197
+ │ │
198
+ │ Detail Table (scrollable, with conditional formatting)│
199
+ │ │
200
+ └─────────────────────────────────────────────────────────┘
201
+ ```
202
+
203
+ Adapt the wireframe based on the user's specific requirements from Phase 1.
204
+
205
+ ---
206
+
207
+ ## PHASE 5: Interaction Design
208
+
209
+ ```
210
+ INTERACTION PLAN
211
+ ================
212
+
213
+ Slicer Interactions:
214
+ - [Slicer] → Filters [which visuals]
215
+ - [Slicer] → Does NOT filter [which visuals] (edit interactions)
216
+
217
+ Cross-Filtering:
218
+ - Clicking [Visual A] highlights [Visual B, C]
219
+ - Clicking [Visual D] filters [Visual E]
220
+
221
+ Drill-Through:
222
+ - From [Overview Page] → [Detail Page] on [field]
223
+ - Context passed: [which fields]
224
+
225
+ Bookmarks:
226
+ - [Bookmark 1]: Show/hide [visual set A]
227
+ - [Bookmark 2]: Toggle [view mode]
228
+
229
+ Tooltips:
230
+ - Hovering [Visual X] shows [Tooltip Page] with [extra detail]
231
+ ```
232
+
233
+ ---
234
+
235
+ ## PHASE 6: Implementation Checklist
236
+
237
+ ```
238
+ LAYOUT IMPLEMENTATION CHECKLIST
239
+ ================================
240
+
241
+ Page Setup:
242
+ □ Set page size (16:9 standard, custom, or mobile)
243
+ □ Apply theme (/theme-tweaker)
244
+ □ Add background color/image if needed
245
+
246
+ Header:
247
+ □ Company logo
248
+ □ Report title
249
+ □ Date/period indicator
250
+ □ Global slicers
251
+
252
+ Body:
253
+ □ Place visuals according to wireframe
254
+ □ Align to grid
255
+ □ Set consistent spacing (8px gaps)
256
+ □ Configure visual interactions
257
+
258
+ Footer:
259
+ □ Page navigation buttons (if multi-page)
260
+ □ Data refresh timestamp
261
+ □ Disclaimer/source note
262
+
263
+ Interactivity:
264
+ □ Configure slicer targets (edit interactions)
265
+ □ Set up drill-through pages
266
+ □ Create bookmarks for view switching
267
+ □ Add tooltip pages
268
+ □ Test all interactions
269
+ ```
270
+
271
+ ## Complexity Adaptation
272
+
273
+ Adjust depth based on `config.json → experienceLevel`:
274
+ - **beginner**: Step-by-step with explanations, reference library examples
275
+ - **intermediate**: Standard depth, explain non-obvious decisions
276
+ - **advanced**: Concise, skip basics, focus on edge cases and optimization
277
+
278
+ ## Related Skills
279
+
280
+ - `/theme-tweaker` — Apply themes to the designed layout
281
+ - `/report-design` — Visualization and accessibility principles
282
+
283
+ ---
284
+
285
+ ## Related Resources
286
+
287
+ - [Theme Tweaker Skill](/theme-tweaker) — Apply consistent visual branding
288
+ - [Report Design Skill](/report-design) — Chart type selection and design principles
289
+ - [Templates: Power BI](library/templates/power-bi/) — Pre-built layout templates
290
+ - [Themes: Power BI](library/themes/power-bi/) — JSON theme files