From cf5e85982be0e026b6a382e91c79512a62a48808 Mon Sep 17 00:00:00 2001 From: Sharanya Lakkamsetti Date: Thu, 31 Jul 2025 17:14:01 +0530 Subject: [PATCH] Fix: Persist theme selection using localStorage --- src/context/ThemeContext.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/context/ThemeContext.tsx b/src/context/ThemeContext.tsx index 27fa822..4c6b0c6 100644 --- a/src/context/ThemeContext.tsx +++ b/src/context/ThemeContext.tsx @@ -10,7 +10,11 @@ interface ThemeContextType { export const ThemeContext = createContext(null); const ThemeWrapper = ({ children }: { children: ReactNode }) => { - const [mode, setMode] = useState<'light' | 'dark'>('light'); + const [mode, setMode] = useState<'light' | 'dark'>(() => { + const savedMode = localStorage.getItem('theme'); + return savedMode === 'dark' ? 'dark' : 'light'; +}); + useEffect(() => { if (mode === 'dark') { @@ -18,6 +22,7 @@ const ThemeWrapper = ({ children }: { children: ReactNode }) => { } else { document.documentElement.classList.remove('dark'); } + localStorage.setItem('theme', mode); }, [mode]); const toggleTheme = () => {