KarlLearningProgressIndicator

fun KarlLearningProgressIndicator(progress: Float, label: String = "Learning Progress")(source)

Material Design 3 component for visualizing KARL learning progress and AI maturity levels.

This composable provides an intuitive and accessible way to communicate the current state of AI learning to users, helping them understand when the system has sufficient training to provide reliable predictions and suggestions. The component follows Material Design principles for progress indicators while adding domain-specific enhancements.

Visual Design and User Experience:

Progress Visualization:

  • Linear progress bar with rounded corners for modern aesthetics

  • Proportional width and prominent height for clear visibility

  • Smooth animations when progress values change

  • High contrast colors for accessibility compliance

Information Hierarchy:

  • Clear label identifying the progress type and context

  • Percentage display providing precise numerical feedback

  • Consistent typography and spacing following Material Design

  • Logical reading order for screen reader accessibility

Material Design Integration:

  • Respects application theme colors and typography scales

  • Automatic adaptation to light/dark mode preferences

  • Consistent with Material 3 progress indicator specifications

  • Proper contrast ratios for all theme variations

Learning Progress Interpretation:

Progress Stages and Meanings:

  • 0% - 25%: Initial learning phase, minimal training data available

  • System is collecting basic interaction patterns

  • Predictions may be experimental or low-confidence

  • User should expect limited AI assistance capabilities

  • 25% - 50%: Foundation learning phase, establishing core patterns

  • System begins recognizing common user behaviors

  • Basic predictions become available with moderate confidence

  • Interaction history provides sufficient context for simple suggestions

  • 50% - 75%: Active learning phase, refining pattern recognition

  • System develops sophisticated understanding of user preferences

  • Predictions become more accurate and contextually relevant

  • AI can handle complex scenarios and multi-step workflows

  • 75% - 100%: Mature learning phase, optimized personalization

  • System demonstrates deep understanding of user behavior patterns

  • High-confidence predictions with strong accuracy track record

  • AI proactively suggests optimizations and workflow improvements

User Communication Strategy:

Transparency and Trust Building:

  • Clear visual indication of AI system capability level

  • Helps users calibrate expectations for AI assistance quality

  • Builds trust through transparent communication of system limitations

  • Encourages continued usage as users see progress over time

Educational Value:

  • Teaches users about machine learning training requirements

  • Demonstrates the value of providing interaction data for learning

  • Shows correlation between usage patterns and AI improvement

  • Encourages patient engagement during initial learning phases

Accessibility and Usability:

Screen Reader Support:

  • Semantic markup for progress information

  • Descriptive labels for context understanding

  • Live region updates for dynamic progress changes

  • Alternative text descriptions for visual elements

Visual Accessibility:

  • High contrast color schemes for visibility impairments

  • Multiple information channels (visual bar, percentage text)

  • Scalable design supporting different text size preferences

  • Color-independent information encoding

Performance and Animation:

Smooth Updates:

  • Efficient recomposition when progress values change

  • Smooth animation transitions for progress updates

  • Optimized rendering for minimal performance impact

  • Stable composition to prevent unnecessary redrawing

Memory Efficiency:

  • Lightweight component with minimal state requirements

  • Efficient Material 3 progress indicator implementation

  • No memory leaks or resource retention issues

  • Scalable for multiple container instances

Customization and Theming:

Theme Integration:

  • Automatic color adaptation based on Material theme

  • Typography scaling respecting user preferences

  • Dynamic color support for Material You implementations

  • Consistent visual language with host applications

Layout Flexibility:

  • Configurable label text for different contexts

  • Responsive design adapting to available space

  • Integration with various layout configurations

  • Support for different screen sizes and orientations

Implementation Examples:

Basic Usage:

@Composable
fun KarlDashboard(learningInsights: LearningInsights) {
KarlLearningProgressIndicator(
progress = learningInsights.progressEstimate,
label = "AI Learning Progress"
)
}

Custom Integration:

@Composable
fun CustomProgressDisplay(container: KarlContainer) {
val insights by container.learningInsightsFlow.collectAsState()

KarlLearningProgressIndicator(
progress = insights.progressEstimate,
label = "Model Maturity: ${insights.interactionCount} interactions"
)
}

Parameters

progress

Learning progress value between 0.0 and 1.0, where 0.0 represents a completely untrained system and 1.0 represents a fully mature AI with comprehensive understanding of user behavior patterns. Values should be derived from LearningEngine.getLearningInsights().

label

Descriptive text label displayed above the progress indicator. Should clearly communicate what aspect of learning is being measured. Default value "Learning Progress" is appropriate for general usage.

See also

com.karl.core.learning.LearningInsights

For progress data source

LinearProgressIndicator

For underlying Material 3 component