Architecture: Which UI component library should be the single source of tr...

Documentation for Sessions

🏗️ Architecture: Which UI component library should be the single source of tr...

Date: 2026-03-16
Time: 19:23:30 UTC
Session: gspace1-226.6
Agent: angular
Confidence: 95%
Status: ✅ Documented


📋 Decision Context

Question:

Which UI component library should be the single source of truth for platform SDK — create new, use libs-ui-core, or promote existing ui-framework?

Task: S226.2: Platform Generation v2 architecture design


🎯 Decision Made

Chosen:

Promote libs/core/ui-framework as the Platform SDK. Absorb 5 unique components from libs-ui-core (color-picker, multi-select, toast, floating-window, breadcrumb). Delete duplicate components from libs-ui-core that are weaker than ui-framework equivalents.

Options Considered:

  1. Create new @libs-core/platform-sdk from scratch (initially proposed)
  2. Promote libs/core/ui-framework + absorb unique libs-ui-core components (chosen)
  3. Consolidate into libs-ui-core (fewer unique components, weaker signal support)
  4. Keep all three libraries (violates DRY, confuses Vitto)

💭 Reasoning

Data-driven head-to-head comparison: ui-framework has 44 components, 100% signal inputs (Angular 20), 100% standalone, 97 LOC avg (focused). libs-ui-core has 34 components, 82% signal inputs, 296 LOC avg (bloated). libs-widgets has 79 components but 45 are showcase demos. ui-framework has unique production components: GgsTable (sort/pagination/column toggle), GgsCrudListShell/FormShell/DetailShell, GgsEntityLookup, GgsDatePicker (full calendar 290 LOC), GgsFileUpload (drag-drop 222 LOC), GgsMediaGallery, GgsConfirmDialog with service. libs-ui-core has 5 superior components (color-picker 1773 LOC, multi-select 542 LOC with virtual scrolling, toast 1117 LOC with stacking, floating-window 1209 LOC, breadcrumb 1697 LOC). Initial recommendation was to DELETE ui-framework as 'legacy' — this was WRONG. The user correctly challenged this, and data proved ui-framework is the strongest base.


📁 Files Involved


🔗 Related


Auto-generated by MCP Smart Consolidation