Skip to main content
This guide helps you migrate between different versions of Chromia UI.

Current Version: 0.3.0

Chromia UI is currently in active development. The latest stable version is 0.3.0.
The API may change before version 1.0.0. Always check the changelog when upgrading.

Version 0.3.0 (Current)

Released: February 13, 2026

New Features

1

Initial Component Library

Version 0.3.0 introduces the initial set of 34 production-ready components:Form Components:
  • ChromiaButton - Filled and outlined button variants
  • ChromiaTextField - Text input with validation support
  • ChromiaCheckbox - Standard and tri-state checkboxes
  • ChromiaCheckboxTile - List-style checkbox layouts
  • ChromiaRadio - Single selection radio buttons
  • ChromiaRadioTile - List-style radio layouts
  • ChromiaRadioGroup - Automatic radio button grouping
  • ChromiaSwitch - Animated toggle switches (3 sizes)
  • ChromiaSwitchTile - List-style switch layouts
Layout Components:
  • ChromiaCard - Cards with header, footer, and image support
  • ChromiaListCard - Specialized card for list items
  • ChromiaAppBar - Application bar with navigation
  • ChromiaDrawer - Full navigation drawer
  • ChromiaMiniDrawer - Icon-only compact drawer
Display Components:
  • ChromiaBadge - Notification badges
  • ChromiaLabel - Text labels
  • ChromiaStatusBadge - Status indicators
  • ChromiaAvatar - User avatars with images or initials
  • ChromiaChip - Compact elements with optional delete action
  • ChromiaTooltip - Contextual help messages
Feedback Components:
  • ChromiaDialog - Modal dialogs
  • ChromiaLinearProgress - Linear progress indicators
  • ChromiaCircularProgress - Circular progress indicators
  • ChromiaSteppedProgress - Multi-step progress indicators
Typography:
  • ChromiaText - Text component with design system styles
2

Complete Theme System

A comprehensive theming system was introduced:
// Light theme
ChromiaTheme(
  data: ChromiaThemeData.light(),
  child: YourApp(),
)

// Dark theme
ChromiaTheme(
  data: ChromiaThemeData.dark(),
  child: YourApp(),
)

// Brand-specific theme
ChromiaTheme(
  data: ChromiaThemeData.fromBrand(
    BrandConfig(
      name: 'MyBrand',
      primaryColor: Color(0xFF6200EE),
      secondaryColor: Color(0xFF03DAC6),
      fontFamily: 'Poppins',
    ),
  ),
  child: YourApp(),
)
3

Design Token System

Complete design token system for consistent styling:
  • Color Tokens - Semantic color roles
  • Typography Tokens - Text style scale (display → label)
  • Spacing Tokens - Consistent spacing values
  • Radius Tokens - Border radius scale
  • Shadow Tokens - Elevation definitions
  • Animation Tokens - Duration and curve standards
  • Breakpoint Tokens - Responsive layout breakpoints
Access tokens via context extensions:
final colors = context.chromiaColors;
final typography = context.chromiaTypography;
final spacing = context.chromiaSpacing;
4

Responsive Design System

Built-in responsive utilities:
// Check breakpoint
if (context.isMobile) {
  return MobileLayout();
}

// Responsive builder
ResponsiveBuilder(
  mobile: MobileLayout(),
  tablet: TabletLayout(),
  desktop: DesktopLayout(),
)
5

Multi-Brand Support

Brand management system for multi-brand applications:
BrandConfig(
  name: 'MyBrand',
  primaryColor: Color(0xFF6200EE),
  secondaryColor: Color(0xFF03DAC6),
  fontFamily: 'Poppins',
  monospaceFontFamily: 'Source Code Pro',
)
6

Comprehensive Example App

The package includes a full-featured example app demonstrating:
  • All 34 components with interactive examples
  • BLoC integration for theme management
  • GoRouter navigation
  • Responsive layouts
  • Dark mode support
  • Multi-brand switching
Run the example:
cd example
flutter run

Getting Started with 0.3.0

1

Update Dependencies

Add Chromia UI to your pubspec.yaml:
dependencies:
  chromia_ui: ^0.3.0
Run:
flutter pub get
2

Verify Requirements

Ensure your project meets the minimum requirements:
  • Dart >=3.10.0 <4.0.0
  • Flutter >=3.38.0
3

Import the Package

Import Chromia UI in your Dart files:
import 'package:chromia_ui/chromia_ui.dart';
4

Wrap Your App

Wrap your app with ChromiaTheme:
void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return ChromiaTheme(
      data: ChromiaThemeData.light(),
      child: MaterialApp(
        title: 'My App',
        theme: ChromiaTheme.of(context).toMaterialTheme(),
        home: const HomePage(),
      ),
    );
  }
}
5

Start Using Components

Begin using Chromia UI components:
ChromiaButton(
  label: 'Get Started',
  onPressed: () {},
  variant: ChromiaButtonVariant.filled,
)

Breaking Changes

As this is the initial release (0.3.0), there are no breaking changes from previous versions.

Future Migrations

When upgrading to future versions:
1

Read the Changelog

Always check the CHANGELOG.md for breaking changes and new features.
2

Update Dependencies

Update the version in your pubspec.yaml:
dependencies:
  chromia_ui: ^0.x.0  # Update to the latest version
Run:
flutter pub upgrade chromia_ui
3

Run Flutter Analyze

Check for any issues:
flutter analyze
4

Test Your App

Thoroughly test all features that use Chromia UI components after upgrading.

Common Migration Patterns

Migrating from Material Components

If you’re migrating from Flutter’s Material components to Chromia UI:
ElevatedButton(
  onPressed: () {},
  child: Text('Click Me'),
)

TextField(
  decoration: InputDecoration(
    labelText: 'Email',
    hintText: 'Enter your email',
  ),
)

Checkbox(
  value: isChecked,
  onChanged: (value) {
    setState(() => isChecked = value!);
  },
)

Adopting the Theme System

MaterialApp(
  theme: ThemeData(
    primaryColor: Colors.blue,
    brightness: Brightness.light,
  ),
  home: HomePage(),
)

Using Design Tokens

Padding(
  padding: EdgeInsets.all(16.0),
  child: Text(
    'Hello World',
    style: TextStyle(
      fontSize: 24,
      fontWeight: FontWeight.bold,
    ),
  ),
)

Getting Help

If you encounter issues during migration:

GitHub Issues

Report bugs or ask questions

Example App

See working implementations

Documentation

Browse the full documentation

Changelog

View all version changes

Staying Updated

Watch the Chromia UI repository on GitHub to get notified about new releases and updates.

Version Status

  • Current: 0.3.0
  • Status: Under active development
  • Stability: API may change before 1.0.0
As the project approaches version 1.0.0, the API will stabilize, and breaking changes will be minimized.

Build docs developers (and LLMs) love