Privacy & Cookies

What this site collects, the cookies it uses, and how to control them.

jameshu.io is the personal portfolio and blog of James Hu. This page explains what data the site processes and the cookies it uses. Last updated 28 May 2026.

Analytics

Vercel Analytics — cookieless, aggregate traffic measurement (page views, referrers, country). It sets no cookies and does not identify you, so it runs without consent.

Google Analytics 4 — measures how the site is used (pages, device, approximate location). It sets cookies and only loads after you accept via the cookie banner. Until then it is blocked by Google Consent Mode and sets no analytics cookies. Decline and it stays off.

Cookies & local storage

  • Consent choice — your Accept/Decline selection is stored in your browser's local storage so the banner doesn't reappear. Strictly necessary; no consent required.
  • Theme — your light/dark preference is stored locally. Functional; not tracking.
  • Authentication / CSRF — used only for the private admin area, not for normal visitors. Strictly necessary.
  • Google Analytics cookies — set only if you accept analytics.

Contact form

If you use the contact form, the name, email, and message you submit are emailed to me (via Resend) so I can reply. Basic spam detection is applied. This data isn't used for marketing.

Book download & email list

If you request the AI Engineering PDF, you provide your email and explicitly opt in (the consent checkbox). I store your email, the consent text you agreed to, and the time and IP address of that consent as a record. You'll receive a confirmation email (double opt-in) and, after confirming, the download — plus occasional emails about the book and future writing. The legal basis is your consent; emails are sent via Resend. You can unsubscribe at any time using the link in any email, and I'll delete your data on request.

Service providers

The site runs on Vercel (frontend/hosting), Render and Supabase (backend/database), Google (Analytics, with consent), and Resend (transactional and list email). Each processes data only to provide its part of the service.

Manage your choices

You can change or withdraw your analytics consent at any time:

Contact

Questions about privacy? Email james@jameshu.io.