// privacy
Privacy Policy
Last updated October 21, 2026
This page explains what guillesalazar.dev collects when you use it, why, and who else handles that data. The site is my personal portfolio, run by me, Guillermo Salazar. For any privacy question or request, email hello@guillesalazar.dev.
Contact form
When you send a message, the site emails your name, email address, subject, and message to me through Resend. The site does not store your message in a database. The server log keeps your name, email, subject, and the first 100 characters of the message for troubleshooting.
Resume requests
When you request my resume, I store your email address, role, reason, and company (if you give one) in my Supabase database, and the site sends those details to me as a Telegram message so I can review the request.
If I approve it, Resend emails you an access link that works for 48 hours. Your browser keeps the access token in local storage so the resume page and the chat recognize you, and I record when you first open the resume. Downloaded PDFs carry metadata that links them to your access link.
AI chat
The chat is available to visitors with an approved resume request. The site sends each message, together with excerpts from my public bio and project notes, to OpenRouter, which routes it to an Anthropic Claude model to write the reply. The site stores your messages and the replies in my Supabase database, keeping the last 20 messages of each chat session.
Abuse protection
- Cloudflare Turnstile checks that the contact and resume forms are used by people, not bots. Cloudflare processes information about your browser and connection to do this.
- To limit how often the forms and the chat can be used, the site counts requests per visitor. It stores a salted hash of your IP address, not the address itself, together with a request count that resets after each limit period (24 hours for the forms).
Analytics and hosting
- Vercel hosts the site and keeps standard request logs, such as IP address, browser, and the page requested.
- Vercel Web Analytics counts page views without cookies and without building a profile of you.
Cookies and browser storage
The site sets no advertising or tracking cookies. Your browser keeps two values in local storage: your light or dark theme preference, and the resume access token if I approved a request from you. You can clear both from your browser settings at any time.
Who handles your data
- Vercel: hosting, request logs, and analytics
- Supabase: database for resume requests, chat sessions, and rate-limit counters
- Resend: email delivery
- Telegram: notifications to me about resume requests
- OpenRouter and Anthropic: AI chat replies
- Cloudflare: bot protection on forms
I do not sell your data, share it for advertising, or use it for anything beyond what this page describes.
Keeping and deleting your data
I keep resume requests and chat sessions until I delete them. Email hello@guillesalazar.dev and I will tell you what I hold about you, correct it, or delete it.
Changes
If the site starts collecting something new, I will update this page and the date at the top.