diff --git a/apps/frontend/src/app/components/theme-toggle.tsx b/apps/frontend/src/app/components/theme-toggle.tsx
new file mode 100644
index 0000000..babafee
--- /dev/null
+++ b/apps/frontend/src/app/components/theme-toggle.tsx
@@ -0,0 +1,39 @@
+'use client';
+
+import { useTheme } from 'next-themes';
+import { Moon, Sun } from 'lucide-react';
+import { useEffect, useState } from 'react';
+
+export function ThemeToggle() {
+ const { theme, setTheme } = useTheme();
+ const [mounted, setMounted] = useState(false);
+
+ useEffect(() => {
+ setMounted(true);
+ }, []);
+
+ if (!mounted) {
+ return (
+
+ );
+ }
+
+ const isDark = theme === 'dark';
+
+ return (
+
+ );
+}
diff --git a/apps/frontend/src/app/dashboard/api-keys/loading.tsx b/apps/frontend/src/app/dashboard/api-keys/loading.tsx
index c5b72cd..7d8d688 100644
--- a/apps/frontend/src/app/dashboard/api-keys/loading.tsx
+++ b/apps/frontend/src/app/dashboard/api-keys/loading.tsx
@@ -22,10 +22,10 @@ export default function ApiKeysLoading() {
Manage authentication credentials for API access
+Manage authentication credentials for API access