diff --git a/apps/web/app/layout.tsx b/apps/web/app/layout.tsx index c90df50..18f2a31 100644 --- a/apps/web/app/layout.tsx +++ b/apps/web/app/layout.tsx @@ -1,5 +1,7 @@ import type { Metadata } from "next"; import { Archivo, Inter, Poppins } from "next/font/google"; +import { GoogleTagManager, GoogleAnalytics } from "@next/third-parties/google"; +import Script from "next/script"; import "./globals.css"; const archivo = Archivo({ @@ -43,11 +45,42 @@ export default function RootLayout({ }) { return ( + + {/* Meta Pixel Code */} + + + {/* Meta Pixel noscript fallback */} + {children} + {/* Google Tag Manager (GTM) */} + + {/* Google Analytics (GA4) */} + ); } diff --git a/apps/web/package.json b/apps/web/package.json index 3c9dc3e..e8a5b78 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -11,6 +11,7 @@ }, "dependencies": { "@crimsonfx/ui": "*", + "@next/third-parties": "^14.2.3", "@radix-ui/react-accordion": "^1.1.2", "@radix-ui/react-avatar": "^1.1.11", "@radix-ui/react-icons": "^1.3.2", diff --git a/package-lock.json b/package-lock.json index b2258a5..08ed823 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "version": "0.1.0", "dependencies": { "@crimsonfx/ui": "*", + "@next/third-parties": "^14.2.3", "@radix-ui/react-accordion": "^1.1.2", "@radix-ui/react-avatar": "^1.1.11", "@radix-ui/react-icons": "^1.3.2", @@ -637,6 +638,19 @@ "node": ">= 10" } }, + "node_modules/@next/third-parties": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/third-parties/-/third-parties-14.2.3.tgz", + "integrity": "sha512-j4E2xBSsEZq4VX2pVm3LpGltSwCxETic6glJWfHyYQvpoMdplCAYrQKpF+E9Gg3jfsrfmRAIdTE11m+biBCx1Q==", + "license": "MIT", + "dependencies": { + "third-party-capital": "1.0.20" + }, + "peerDependencies": { + "next": "^13.0.0 || ^14.0.0", + "react": "^18.2.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -6989,6 +7003,12 @@ "node": ">=0.8" } }, + "node_modules/third-party-capital": { + "version": "1.0.20", + "resolved": "https://registry.npmjs.org/third-party-capital/-/third-party-capital-1.0.20.tgz", + "integrity": "sha512-oB7yIimd8SuGptespDAZnNkzIz+NWaJCu2RMsbs4Wmp9zSDUM8Nhi3s2OOcqYuv3mN4hitXc8DVx+LyUmbUDiA==", + "license": "ISC" + }, "node_modules/three": { "version": "0.160.1", "resolved": "https://registry.npmjs.org/three/-/three-0.160.1.tgz",