Flutter Gems is a curated list of 6700+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Light Mode, Dark Mode and Themes packages
Last updated: March 23, 2025
Compared to Light Mode (Default), Dark mode is a color scheme that is primarily dark colored and low in light reflectance. It is often used to reduce eye strain, especially in low-light conditions. Dark mode can also be used to make text easier to read in a Flutter app.
There are an endless amount of color themes that can be used in a Flutter app. Some popular color themes include using all black and white, shades of one color, or multiple colors that compliment each other. For example, a black and white color theme can create a sophisticated and elegant look, while brighter colors can create a fun and festive atmosphere.
The complete list of Flutter packages that provide a Switch to toggle between Light Mode and Dark Mode, and can help you Change Theme or Color Scheme in your Flutter app, is provided below.

flex_color_scheme
👍 2.95K ⬇️ 57.1K
Dart 3 compatibleMaintenance Status: Good
A Flutter package to use and make beautiful Material design based themes.
adaptive_theme
👍 878 ⬇️ 27.7K
Dart 3 compatibleMaintenance Status: Good
Allows to change between light and dark theme dynamically and add system adaptive theme support.

dynamic_color
👍 579 ⬇️ 52.6K
Dart 3 compatibleMaintenance Status: Average
A Flutter package to create Material color schemes based on a platform's implementation of dynamic color.

animated_theme_switcher
👍 509 ⬇️ 2.7K
Dart 3 compatibleMaintenance Status: Average
Flutter animated theme switcher, that help to create beautiful transactions during the theme switch.
flex_seed_scheme
👍 86 ⬇️ 361.5K
Dart 3 compatibleMaintenance Status: Good
A more flexible and powerful version of Flutter's ColorScheme.fromSeed. Use multiple seed colors, custom chroma and tone mapping.
theme_provider
👍 311 ⬇️ 7.9K
Dart 3 compatibleMaintenance Status: Average
Easy to use and customizable Theme Provider. This Widget can be used to easily provide a theme controller across the widget tree.
theme_tailor
👍 187 ⬇️ 35K
Dart 3 compatibleMaintenance Status: Good
Code generator for Flutter's 3.0 ThemeExtension classes. The generator can create themes and extensions on BuildContext or ThemeData based on the lists of the theme properties

easy_dynamic_theme
👍 123 ⬇️ 1.7K
Dart 3 compatibleMaintenance Status: Average
Automatically get your OS defined Theme (Dynamic), force your prefered one (Light / Dark) and persist your choice in the device.
system_theme
👍 110 ⬇️ 4.5K
Dart 3 compatibleMaintenance Status: Good
A plugin to get the current system theme info. Supports Android, Web, Windows, Linux and macOS
stacked_themes
👍 109 ⬇️ 1.8K
Dart 3 compatibleMaintenance Status: Good
A set of classes to help you better manage Themes in flutter
json_theme
👍 107 ⬇️ 3.8K
Dart 3 compatibleMaintenance Status: Good
A library to dynamically generate a ThemeData object from a JSON file or dynamic map object

themed
👍 64 ⬇️ 3.3K
Dart 3 compatibleMaintenance Status: Good
The themed package lets you define a theme with const values, and then, by using some dark Dart magic, go and change them dynamically anyway.
dynamic_themes
👍 43 ⬇️ 1.6K
Dart 3 compatibleMaintenance Status: Poor
Allows you to specify a number of color themes for the user to choose from. Persits the selected theme across app restarts.

day_night_switch
👍 36 ⬇️ 181
Dart 3 compatibleMaintenance Status: Average
An easy to implement custom day night switch widget for Flutter. It can be highly customized with day & night colors and images.
random_color_scheme
👍 35 ⬇️ 701
Dart 3 compatibleMaintenance Status: Poor
Generate light and dark color schemes to help you theme an app.

theme_manager
👍 34 ⬇️ 876
Dart 3 compatibleMaintenance Status: Average
A theme manager for light, dark, and system themes. Change the theme dynamically and the selected theme will be persisted.
dynamic_color_theme
👍 29 ⬇️ 66
Dart 3 compatibleMaintenance Status: Poor
Dynamically change your color theme, including light and dark mode. Persist the colors across restarts.
adaptive_chameleon_theme
👍 24 ⬇️ 182
Dart 3 compatibleMaintenance Status: Good
Adds support for managing theme modes (light, dark, system) and switching theme colors.

theme_mode_builder
👍 24 ⬇️ 88
Dart 3 compatibleMaintenance Status: Good
A Flutter package for handling theme in an app and also saving it on the device with shared preferences
theme_manager_plus
👍 21 ⬇️ 34
Dart 3 compatibleMaintenance Status: Good
No More theme data. Customise your theme with your theme class
theme_mode_handler
👍 19 ⬇️ 211
Dart 3 compatibleMaintenance Status: Poor
Flutter widget to change 'themeMode' during runtime and persist it across restarts
color_blindness
👍 18 ⬇️ 551
Dart 3 compatibleMaintenance Status: Good
Color Blindness on Flutter. Works with either color scheme or individual colors.

day_night_themed_switcher
👍 5 ⬇️ 144
Dart 3 compatibleMaintenance Status: Good
Elevate your app's charm with a sleek day/night switcher widget in pure Dart – because toggling between light and dark modes should be as effortless as a flicker of magic!

appearance
👍 5 ⬇️ 44
Dart 3 compatibleMaintenance Status: Average
Flutter package to implement Light, Dark and Sytem Theme mode, and persist it on restart of app.
at_theme_flutter
👍 1 ⬇️ 114
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin project to provide theme selection in atPlatform apps with ease.
dynamic_theme
👍 139 ⬇️ 246
Maintenance Status: Poor
Changes the theme during runtime, also presists brightness settings across restarts
flutter_animated_theme
👍 58 ⬇️ 51
Maintenance Status: Poor
Animate theme change with circular, scale and fade animations
thememode_selector
👍 46 ⬇️ 25
Maintenance Status: Poor
A widget to select between light and dark ThemeMode (in development, but working fine)
theme_x
👍 19 ⬇️ 43
Maintenance Status: Poor
ThemeX is an easy theme manipulation. Only inform primary color and the ThemeX generate all color combination palette for you.
flutter_redux_dev_tools
👍 14 ⬇️ 1.1K
Maintenance Status: Poor
A Time Traveling Redux Debugger for Flutter