summaryrefslogtreecommitdiff
path: root/src/app/provider.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/app/provider.tsx')
-rw-r--r--src/app/provider.tsx38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/app/provider.tsx b/src/app/provider.tsx
new file mode 100644
index 0000000..085bf50
--- /dev/null
+++ b/src/app/provider.tsx
@@ -0,0 +1,38 @@
+'use client';
+
+import Analytics from '@/components/analytics';
+import { TailwindIndicator } from '@/components/tailwind-indicator';
+import { ThemeProvider } from '@/components/theme-provider';
+import { Toaster } from '@/components/ui/sonner';
+import { TooltipProvider } from '@radix-ui/react-tooltip';
+import { RootProvider } from 'fumadocs-ui/provider';
+import type { ReactNode } from 'react';
+import { unstable_ViewTransition as ViewTransition } from 'react';
+
+export function Provider({
+ children,
+}: {
+ children: ReactNode;
+}): React.ReactElement {
+ return (
+ <ThemeProvider
+ attribute='class'
+ defaultTheme='system'
+ enableSystem
+ disableTransitionOnChange
+ >
+ <RootProvider
+ theme={{
+ enabled: false,
+ }}
+ >
+ <TooltipProvider>
+ <ViewTransition>{children}</ViewTransition>
+ </TooltipProvider>
+ <Analytics />
+ <Toaster />
+ <TailwindIndicator />
+ </RootProvider>
+ </ThemeProvider>
+ );
+}