Integrate Umami analytics (privacy-friendly, cookieless)
CI / build-and-test (push) Has been cancelled

- Add the Umami tracking snippet to index.html (rides into prerendered pages too).
- Allow https://fickanalytics.phluit.net in the prod CSP script-src and connect-src
  so the script loads and can send events.
This commit is contained in:
Leon Serfaty
2026-07-21 02:50:26 -04:00
parent 1f249dc126
commit 4a1122a7c9
2 changed files with 4 additions and 2 deletions
+2 -2
View File
@@ -71,11 +71,11 @@ export async function buildServer() {
? { ? {
directives: { directives: {
defaultSrc: ["'self'"], defaultSrc: ["'self'"],
scriptSrc: ["'self'", 'https://challenges.cloudflare.com'], scriptSrc: ["'self'", 'https://challenges.cloudflare.com', 'https://fickanalytics.phluit.net'],
styleSrc: ["'self'", "'unsafe-inline'", 'https://fonts.googleapis.com'], styleSrc: ["'self'", "'unsafe-inline'", 'https://fonts.googleapis.com'],
fontSrc: ["'self'", 'https://fonts.gstatic.com', 'data:'], fontSrc: ["'self'", 'https://fonts.gstatic.com', 'data:'],
imgSrc: ["'self'", 'data:', 'blob:', 'https://*.digitaloceanspaces.com', 'https://*.cdn.digitaloceanspaces.com'], imgSrc: ["'self'", 'data:', 'blob:', 'https://*.digitaloceanspaces.com', 'https://*.cdn.digitaloceanspaces.com'],
connectSrc: ["'self'"], connectSrc: ["'self'", 'https://fickanalytics.phluit.net'],
frameSrc: ['https://challenges.cloudflare.com'], frameSrc: ['https://challenges.cloudflare.com'],
frameAncestors: ["'none'"], frameAncestors: ["'none'"],
formAction: ["'self'"], formAction: ["'self'"],
+2
View File
@@ -28,6 +28,8 @@
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@600;700&display=swap" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@600;700&display=swap"
rel="stylesheet" rel="stylesheet"
/> />
<!-- Umami analytics (privacy-friendly, cookieless — no consent gate needed) -->
<script defer src="https://fickanalytics.phluit.net/script.js" data-website-id="fd1bdcd3-b73a-42dd-a17a-50578ecff7ec"></script>
</head> </head>
<body> <body>
<div id="root"></div> <div id="root"></div>