Cookieless by design
Visitors identified via a daily-rotating server salt hash. No cookies, no localStorage, no consent banner. GDPR Article 5(3)-clean out of the box.
A cookieless, GDPR-native, open-source dashboard for your sites. Self-host on Cloudflare and Convex in one command.
$ bash <(curl -fsSL https://raw.githubusercontent.com/florianjs/nagare/main/bootstrap.sh)Visitors identified via a daily-rotating server salt hash. No cookies, no localStorage, no consent banner. GDPR Article 5(3)-clean out of the box.
Convex subscriptions stream pageviews to the dashboard in milliseconds. Hourly crons keep long-range queries cheap — no vendor lock, no Redis tax.
The tracked site renders inside a signed iframe; click and scroll aggregates project onto a canvas. One-pass UX debugging without third-party scripts.
Paste into <head>. 2.7 KB gzipped, zero dependencies, zero third-party calls.
1 <script src="https://nagare.so/t.js" 2 data-site-id="a1b2c3d4" 3 defer></script>
No. Identification uses a daily-rotating server-side salt hash of IP + UA. No persistent visitor ID, no client storage. Compliant with GDPR Art. 5(3), ePrivacy Directive, CNIL guidelines and PECR.
Yes — bash <(curl -fsSL https://raw.githubusercontent.com/florianjs/nagare/main/bootstrap.sh). It provisions Convex (browser login), deploys schema, logs into Cloudflare (browser login), pushes the worker, wires env vars. Two OAuth popups, zero keys to copy.
Each site ships a unique data-site-id on the same script. One file, N sites, routed server-side at ingest.
Raw events insert into Convex; a cron rolls them into hourly aggregates. The dashboard reads the rollup, not the raw events. Convex free tier covers ~1M pageviews/month.
MIT. Fork it, host it, modify it. No proprietary SaaS behind the curtain.