You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(analytics): add foundation health metrics integration (#181)
* feat(analytics): add foundation health metrics integration
Implements comprehensive foundation health analytics system with real-time Snowflake data:
Backend Implementation (LFXV2-816):
- 5 new Snowflake analytics endpoints for foundation metrics
- Total projects with cumulative monthly aggregation
- Total members with cumulative monthly data
- Software value with top projects breakdown
- Maintainers with daily trend analysis
- Health score distribution across projects
- Server-side controllers with proper error handling
- Analytics routes configuration and validation
Frontend Integration (LFXV2-817):
- Refactored Foundation Health component with Angular signals
- Reactive data loading with proper state management
- 5 new analytics service methods with RxJS operators
- Loading states per metric with fallback handling
- Dynamic data visualization with sparklines and charts
- Error handling with empty state fallbacks
Shared Types (LFXV2-818):
- Comprehensive TypeScript interfaces for Snowflake responses
- Foundation health metric configurations
- Monthly aggregation data structures
- Top projects and health score distribution types
- Primary foundation health metrics constants
Generated with [Claude Code](https://claude.ai/code)
Signed-off-by: Asitha de Silva <[email protected]>
* fix(analytics): correct number formatting in software value display
Changed from toFixed().toLocaleString() to toLocaleString() with decimal options.
toFixed() returns a string, so calling toLocaleString() on it had no effect.
Now using toLocaleString('en-US', { minimumFractionDigits: 1, maximumFractionDigits: 1 })
which properly formats numbers with thousand separators and one decimal place.
LFXV2-817
Generated with [Claude Code](https://claude.ai/code)
Signed-off-by: Asitha de Silva <[email protected]>
---------
Signed-off-by: Asitha de Silva <[email protected]>
0 commit comments