Skip to content

feat: add GoatCounter analytics#76

Merged
pablopunk merged 1 commit into
mainfrom
ai/goatcounter
Jul 9, 2026
Merged

feat: add GoatCounter analytics#76
pablopunk merged 1 commit into
mainfrom
ai/goatcounter

Conversation

@pablopunk

@pablopunk pablopunk commented Jul 9, 2026

Copy link
Copy Markdown
Owner

What

Adds GoatCounter privacy-friendly analytics to nvm.fyi using the same self-hosted proxy pattern as pablopunk.com, cv, and x.

How

  • vercel.json: Vercel rewrites proxy /count.jsgc.zgo.at and /goatnvmfyi.goatcounter.com — avoids ad-blockers by serving from the same domain
  • Layout.astro: <script data-goatcounter="/goat" async src="/count.js" is:inline> in <head>

Prerequisites

Requires a GoatCounter site at nvmfyi.goatcounter.com to be created if it doesn't exist yet.

🤖 [ai] — prepared by Hermes

Summary by CodeRabbit

  • New Features
    • Added site analytics tracking to the page layout.
    • Added scheduled checks for abuse and service health.
  • Chores
    • Updated deployment configuration for the analytics and scheduled request routes.

Proxy /count.js and /goat through Vercel rewrites to avoid
ad-blockers. Uses same pattern as pablopunk.com, cv, and x.
@vercel

vercel Bot commented Jul 9, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
nvm Ready Ready Preview, Comment Jul 9, 2026 9:24am

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 78fce8a2-1d33-4ea1-9486-f91344427e5a

📥 Commits

Reviewing files that changed from the base of the PR and between 7ff4939 and 34514e6.

📒 Files selected for processing (2)
  • backend/src/layouts/Layout.astro
  • backend/vercel.json

Walkthrough

This change adds a GoatCounter analytics script tag to the site layout's HTML head and updates the vercel.json configuration, reformatting the crons array entries for abuse-check and health-check schedules, and expanding rewrites entries for count.js and goat endpoints into multi-line objects.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely summarizes the main change: adding GoatCounter analytics.
Description check ✅ Passed The description covers the change, implementation, and prerequisite well enough, even though it doesn't use the template headings exactly.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@pablopunk pablopunk merged commit 0a48284 into main Jul 9, 2026
8 checks passed
@pablopunk pablopunk deleted the ai/goatcounter branch July 9, 2026 09:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant