import 'package:flutter/material.dart'; import 'package:shared_preferences/shared_preferences.dart'; Future saveDarkMode(bool isDark) async { final prefs = await SharedPreferences.getInstance(); await prefs.setBool('darkMode', isDark); } Future loadDarkMode() async { final prefs = await SharedPreferences.getInstance(); return prefs.getBool('darkMode') ?? false; // default light } class ThemeProvider extends ChangeNotifier { bool _isDark; bool get isDark => _isDark; ThemeProvider({required bool isDark}) : _isDark = isDark; void setDarkMode(bool value) { if (_isDark == value) return; // avoid unnecessary rebuilds _isDark = value; notifyListeners(); saveDarkMode(value); } }