Skip to content

Commit 858ebb6

Browse files
committed
added next-themes to handle toggling dark mode
1 parent d37a1ae commit 858ebb6

File tree

5 files changed

+24
-2
lines changed

5 files changed

+24
-2
lines changed

package-lock.json

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
"dependencies": {
1313
"lucide-react": "^0.445.0",
1414
"next": "14.2.13",
15+
"next-themes": "^0.3.0",
1516
"react": "^18",
1617
"react-dom": "^18",
1718
"react-router-dom": "^6.26.2"

src/app/layout.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import type { Metadata } from "next";
22
import { Inter } from 'next/font/google'
3+
import { Providers } from './providers'
34
import "./globals.css";
45

56
const inter = Inter({ subsets: ['latin'] })
@@ -18,9 +19,11 @@ export default function RootLayout({
1819
children: React.ReactNode;
1920
}) {
2021
return (
21-
<html lang="en" className={inter.className}>
22+
<html lang="en" className={inter.className} suppressHydrationWarning>
2223
<body>
23-
{children}
24+
<Providers>
25+
{children}
26+
</Providers>
2427
</body>
2528
</html>
2629
);

src/app/providers.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
'use client'
2+
3+
import { ThemeProvider } from 'next-themes'
4+
5+
export function Providers({ children }: { children: React.ReactNode }) {
6+
return <ThemeProvider attribute="class" defaultTheme='system' enableSystem>{children}</ThemeProvider>
7+
}

tailwind.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,5 +41,6 @@ const config: Config = {
4141
},
4242
},
4343
plugins: [],
44+
darkMode: 'class',
4445
};
4546
export default config;

0 commit comments

Comments
 (0)