From 57de50da351c12a9fd1ce1ab21a9bb6eb9d9d113 Mon Sep 17 00:00:00 2001 From: Mao Nakamoto <41178744+maonakamoto@users.noreply.github.com> Date: Tue, 25 Aug 2026 20:23:11 +0200 Subject: [PATCH] feat(feedback): embed the FleetCrown feedback widget site-wide Loads on every public page from the root layout via next/script (afterInteractive). The project token is a string literal rather than an env read: Next tree-shakes an empty `process.env` value at build time, so a runtime-only variable would ship a Script that never has a token. No CSP is set on this app, so no script-src/connect-src change is needed, and there is no existing bottom-right floating button to stack above. --- src/app/layout.tsx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 42064b5..bbe9944 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -9,6 +9,7 @@ import { SessionProvider } from "next-auth/react"; import Navigation from "@/components/ui/navigation"; import Footer from "@/components/ui/footer"; import { authEnabled } from "@/lib/auth"; +import Script from "next/script"; /** * Where this site actually serves. Next resolves the generated og:image against @@ -51,6 +52,14 @@ export default function RootLayout({ children }: { children: React.ReactNode })