Alexandr я у себя делаю так:
Есть сайт
http://mcg.mbitson.com/ (ну или аналоги, он там раскладывает цвет в цвета материал). Деизигнер с фигме например накидал свои цвета, я их привел к материал. Далее создаю класс который описывает все эти цвета в утилсах. пример портянки 😀:
class AppColors {
static const MaterialColor pantone1788 = MaterialColor(
_mcgpalette0PrimaryValue,
<int, Color>{
50: Color(0xFFF8E3E4),
100: Color(0xFFEDB9BC),
200: Color(0xFFE28B8F),
300: Color(0xFFD65C62),
400: Color(0xFFCD3941),
500: Color(_mcgpalette0PrimaryValue),
600: Color(0xFFBE131B),
700: Color(0xFFB61017),
800: Color(0xFFAF0C12),
900: Color(0xFFA2060A),
},
);
static const int _mcgpalette0PrimaryValue = 0xFFC4161F;
static const MaterialColor pantone1788Accent =
MaterialColor(_mcgpalette0AccentValue, <int, Color>{
100: Color(0xFFFFCDCE),
200: Color(_mcgpalette0AccentValue),
400: Color(0xFFFF6769),
700: Color(0xFFFF4D50),
});
static const int _mcgpalette0AccentValue = 0xFFFF9A9B;
static const MaterialColor pantone1805 = MaterialColor(
_mcgpalette1PrimaryValue,
<int, Color>{
50: Color(0xFFF1E2E3),
100: Color(0xFFDDB6B9),
200: Color(0xFFC6858A),
300: Color(0xFFAF545B),
400: Color(0xFF9E2F37),
500: Color(_mcgpalette1PrimaryValue),
600: Color(0xFF850912),
700: Color(0xFF7A070E),
800: Color(0xFF70050B),
900: Color(0xFF5D0306),
},
);
static const int _mcgpalette1PrimaryValue = 0xFF8D0A14;
static const MaterialColor pantone1805Accent = MaterialColor(
_mcgpalette1AccentValue,
<int, Color>{
100: Color(0xFFFF8E90),
200: Color(_mcgpalette1AccentValue),
400: Color(0xFFFF282B),
700: Color(0xFFFF0E12),
},
);
static const int _mcgpalette1AccentValue = 0xFFFF5B5D;
static const MaterialColor pantone7421 =
MaterialColor(_mcgpalette2PrimaryValue, <int, Color>{
50: Color(0xFFE9E0E2),
100: Color(0xFFC8B3B6),
200: Color(0xFFA48085),
300: Color(0xFF7F4D54),
400: Color(0xFF63262F),
500: Color(_mcgpalette2PrimaryValue),
600: Color(0xFF410009),
700: Color(0xFF380007),
800: Color(0xFF300005),
900: Color(0xFF210003),
});
static const int _mcgpalette2PrimaryValue = 0xFF48000A;
static const MaterialColor pantone7421Accent =
MaterialColor(_mcgpalette2AccentValue, <int, Color>{
100: Color(0xFFFF5D5D),
200: Color(_mcgpalette2AccentValue),
400: Color(0xFFF60000),
700: Color(0xFFDD0000),
});
static const int _mcgpalette2AccentValue = 0xFFFF2A2A;
static const MaterialColor pantoneCoolGrey =
MaterialColor(_mcgpalette3PrimaryValue, <int, Color>{
50: Color(0xFFF1F1F1),
100: Color(0xFFDCDDDD),
200: Color(0xFFC5C6C7),
300: Color(0xFFAEAFB0),
400: Color(0xFF9C9E9F),
500: Color(_mcgpalette3PrimaryValue),
600: Color(0xFF838586),
700: Color(0xFF787A7B),
800: Color(0xFF6E7071),
900: Color(0xFF5B5D5F),
});
static const int _mcgpalette3PrimaryValue = 0xFF8B8D8E;
static const MaterialColor pantoneCoolGreyAccent =
MaterialColor(_mcgpalette3AccentValue, <int, Color>{
100: Color(0xFFD4E7FB),
200: Color(_mcgpalette3AccentValue),
400: Color(0xFF69B4FF),
700: Color(0xFF50A7FF),
});
static const int _mcgpalette3AccentValue = 0xFFA5CEF6;
}
ну и через провайдер смена темы в приле.