Legal
Privacy.
What this site collects, what it doesn't, and where the data goes. Last revised May 2026.
What's collected
- Contact form: name, email, and message you submit. Required to deliver your message.
- Server logs: anonymized IP address used briefly for rate limiting (Upstash Redis). Not joined to any other data.
- Theme preference: stored locally in your browser (localStorage). Never sent to a server.
What's not collected
- No tracking cookies.
- No advertising network identifiers.
- No fingerprinting.
Where the data goes
- Resend (transactional email) receives your contact submission to deliver it to a private inbox.
- Upstash stores a short-lived rate-limit counter against your hashed IP.
- Vercel hosts the site; their cookie-less Web Analytics and Speed Insights record aggregate page metrics with no personal identifiers.
- Cloudflare Turnstile (on the contact form) runs an invisible bot-mitigation challenge. No data is shared back with anyone other than Cloudflare's verification endpoint.
Third-party embeds
- Instagram embeds (in the photo lightbox) and SoundCloud embeds (in the Off-hours section) load resources directly from Meta and SoundCloud. When the embeds render, those services may set their own cookies in your browser under their own privacy policies.
Your rights
- You can request deletion of any contact submission you've sent by replying to my response or using the contact form again. There is no separate account system; nothing is retained beyond the email thread.