Privacy Policy
Last updated: August 7, 2026
1. Overview
BayJF (bayjf.com) is a personal portfolio website. This policy explains what information is processed when you visit the site or use its contact form, and how it is handled.
2. Contact Form
- When you submit the contact form, the name, email address, and message you provide are stored in a Supabase Postgres database for the purpose of replying to you.
- A SHA-256 hash of your IP address and a truncated User-Agent string may be stored alongside the message for abuse prevention. The raw IP is not stored.
- Submissions are protected by Cloudflare Turnstile human verification and rate limiting.
- Contact data is not sold, shared with third parties, or used for marketing without your consent.
3. Analytics
If enabled, this site uses Google Analytics 4 and Microsoft Clarity to understand aggregate usage (page views, approximate location, device type). These providers may set cookies. Analytics events never include names, email addresses, or message content. Where analytics IDs are not configured, no analytics scripts are loaded.
4. Local Preferences
The site stores your light/dark theme choice in your browser's localStorage. This stays on your device and is never transmitted.
5. Hosting & Logs
The site is hosted on Cloudflare Pages with an API on Vercel. These platforms may keep standard access logs (IP, User-Agent) under their own privacy policies, outside the control of this site.
6. Third-Party Links
The site links to third-party services such as GitHub. Their privacy practices are governed by their own policies.
7. Your Rights & Contact
You may request access to or deletion of any contact-form data associated with your email address by writing to[email protected]. Changes to this policy will be posted on this page with an updated revision date.