aboutsummaryrefslogtreecommitdiff
path: root/apps/web/app
diff options
context:
space:
mode:
authorDhravya Shah <[email protected]>2024-08-06 12:55:43 -0700
committerDhravya Shah <[email protected]>2024-08-06 12:55:43 -0700
commitbe05d4fe7f7bc8edc2aad18daecdb8e67f28b29f (patch)
treef24556e993ec21a3b6aa78ffadf418aa279511f4 /apps/web/app
parentuncomment (diff)
downloadsupermemory-be05d4fe7f7bc8edc2aad18daecdb8e67f28b29f.tar.xz
supermemory-be05d4fe7f7bc8edc2aad18daecdb8e67f28b29f.zip
posthog
Diffstat (limited to 'apps/web/app')
-rw-r--r--apps/web/app/layout.tsx23
-rw-r--r--apps/web/app/providers.js14
2 files changed, 27 insertions, 10 deletions
diff --git a/apps/web/app/layout.tsx b/apps/web/app/layout.tsx
index 94a538ed..b3a0b485 100644
--- a/apps/web/app/layout.tsx
+++ b/apps/web/app/layout.tsx
@@ -6,6 +6,7 @@ import { GeistSans } from "geist/font/sans";
import { GeistMono } from "geist/font/mono";
import { cn } from "@repo/ui/lib/utils";
import { Toaster } from "@repo/ui/shadcn/toaster";
+import { CSPostHogProvider } from "./providers";
const inter = Inter({ subsets: ["latin"] });
@@ -75,16 +76,18 @@ export default function RootLayout({
></script>
</head>
{/* TODO: when lightmode support is added, remove the 'dark' class from the body tag */}
- <body
- className={cn(
- `${inter.className} dark`,
- GeistMono.variable,
- GeistSans.variable,
- )}
- >
- {children}
- <Toaster />
- </body>
+ <CSPostHogProvider>
+ <body
+ className={cn(
+ `${inter.className} dark`,
+ GeistMono.variable,
+ GeistSans.variable,
+ )}
+ >
+ {children}
+ <Toaster />
+ </body>
+ </CSPostHogProvider>
</html>
);
}
diff --git a/apps/web/app/providers.js b/apps/web/app/providers.js
new file mode 100644
index 00000000..3715157f
--- /dev/null
+++ b/apps/web/app/providers.js
@@ -0,0 +1,14 @@
+"use client";
+import posthog from "posthog-js";
+import { PostHogProvider } from "posthog-js/react";
+
+if (typeof window !== "undefined") {
+ posthog.init(process.env.NEXT_PUBLIC_POSTHOG_KEY, {
+ api_host: process.env.NEXT_PUBLIC_POSTHOG_HOST,
+ person_profiles: "identified_only",
+ });
+}
+
+const CSPostHogProvider = ({ children }) => {
+ return <PostHogProvider client={posthog}>{children}</PostHogProvider>;
+};