| Property | Value |
|---|---|
| type | ai-agent-guide |
| framework | OUDS-Flutter |
| language | Dart |
| ui-framework | Flutter / Material 3 |
| platforms | Android, iOS |
| min-sdk | Android API 21 / iOS 13 |
OUDS (Orange Unified Design System) is a multi-package Flutter workspace providing design tokens, themes and Material 3 components for Orange Group products. The demo application is called "Design System Toolbox". The project is open source (MIT) at https://github.com/Orange-OpenSource/ouds-flutter. Target platforms: Android API 21+, iOS 13+. Language: Dart 3.9+ / Flutter 3.35+.
Load skills on demand for detailed guidance:
ouds-flutter-vocabulary— glossary of OUDS Flutter-specific terms (Tokenator, token types, theme, …)ouds-flutter-framework-usage— full OUDS Flutter usage reference: imports, themes, tokens, localizations, all components with code examplesouds-flutter-figma-to-dart— how to derive Dart naming and token layer from Figma token families for the OUDS Flutter project (raw, semantic and component tokens)ouds-flutter-migration-guide— adopt OUDS Flutter from native Flutter or custom components, migrate between OUDS Flutter versions, before/after mappingsouds-flutter-accessibility— OUDS Flutter Semantics patterns, text scale, high-contrast, TalkBack / VoiceOver, orientation and full testing checklist
| File | Purpose |
|---|---|
.github/copilot-instructions.md |
Architecture, build commands, best practices, accessibility, review checklist |
pubspec.yaml |
Workspace manifest — lists all packages |
ouds_core/lib/components/ |
All OUDS widgets (OudsButton, OudsTag, …) |
ouds_theme_contract/lib/ |
Abstract token interfaces — generated by Tokenator, never edit manually |
app/lib/ui/components/components.dart |
Demo screen registry — register every new component here |
MIGRATION.md |
Public API change log — update for every breaking change or deprecation |
- Always load the
ouds-flutter-vocabularyskill before discussing tokens or themes. - Always load the
ouds-flutter-framework-usageskill before writing or reviewing code that uses OUDS components or tokens. - Always load the
ouds-flutter-figma-to-dartskill when asked to find or map a Figma token name to its Dart equivalent. - Always load the
ouds-flutter-migration-guideskill when asked to migrate code, adopt OUDS in an existing app, replace native/custom Flutter components with OUDS equivalents, or remove deprecated APIs. - Always load the
ouds-flutter-accessibilityskill when asked about Semantics, screen readers, TalkBack, VoiceOver, text scale, high-contrast or orientation. - Before committing:
dart format .→flutter analyze --no-pub→ fix all errors →flutter testin every modified package (see.github/copilot-instructions.md §7). - Never create or edit token files in
ouds_global_raw_tokens,ouds_theme_contract,ouds_theme_orange,ouds_theme_orange_compact,ouds_theme_sosh, orouds_theme_wireframe— all content is generated by Tokenator. - Never create a root barrel file for
ouds_core— import components directly (e.g.package:ouds_core/components/button/ouds_button.dart). - When introducing a breaking change or deprecation: update both
MIGRATION.mdandskills/ouds-flutter-migration-guide/SKILL.md. - Use
OudsTheme.of(context)for all colors, spacing, typography and component tokens — never hardcode values. - Use
OudsLocalizations.of(context)for all user-facing and accessibility strings — never hardcode them. - Prefix all OUDS widgets with
Ouds(e.g.OudsButton,OudsTag). - Every new interactive widget must wrap its root element in a
Semanticswidget with appropriate flags (button,checked,toggled,label,hint,value).