feat: localized header/About + spam-safe contact email + GA analytics fix - #124
Merged
Conversation
…contact email - Header shell (ShellIsland) now detects language from the URL and localizes the '⌘K to search' hint, the Contribute (GitHub) modal, and all tooltips/aria-labels — Bahasa on /id/. - About page moved under [...locale] and fully translated (EN + ID). New 'Contact & tool requests' section: contact@goodwebtools.com, and visitors can request a new tool by email. - Email is spam-safe: assembled from data-attributes in JS (via Base), so the plain address never appears in the static HTML. Human-readable 'contact [at] … [dot] com' fallback for no-JS. - LangSwitcher + worker treat /about as localized (switch stays on the page). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ubfx4XocHcECaL8twp9zsr
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ✅ Deployment successful! View logs |
goodwebtools | cec78fe | Aug 02 2026, 05:07 AM |
…ing dropped) The SITE_GA_ID → PUBLIC_GA_ID → import.meta.env plumbing left gaId empty in production (Cloudflare build-var/WORKERS_CI plumbing is unreliable), so Google Analytics never loaded. A GA4 Measurement ID is public anyway (it's in every visitor's page source), so it now lives in config with a hostname allowlist: GA only runs on goodwebtools.com / www — forks, staging, previews and localhost carry the same ID but never report. Cookie-consent gate unchanged; PUBLIC_GA_ID build var still overrides if present. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ubfx4XocHcECaL8twp9zsr
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses several requests:
astro:page-load).[...locale]and fully translated (EN + ID).data-*parts in JS (in Base, re-runs on navigation); the plain address never appears in the HTML (verified: 0 occurrences), with a non-harvestablecontact [at] … [dot] comfallback./aboutas localized.Verify