Privacy Policy
Last updated: October 2026
1. Contact and assistant data
If you use the contact form, I receive your name, email address, message, and the IP address included with the request. If you use the portfolio assistant, your messages and recent conversation context are sent to OpenAI to generate a reply. Please avoid entering sensitive personal information in the assistant.
2. Purpose and usage events
I use contact details to respond to your enquiry. The assistant uses your conversation to answer portfolio-related questions. Technical request data supports delivery, security, and abuse prevention. The website records assistant usage events, such as opening the chat or following a project link, together with route and turn information; these events do not contain the message text.
3. Service providers
The portfolio is hosted on Vercel. Contact messages are delivered through Resend, and Cloudflare Turnstile verifies contact submissions. Assistant replies are generated through OpenAI. Upstash supports IP-based rate limiting when configured. These services process the request data needed for their respective functions; their own privacy notices also apply.
4. Cookies, storage, and retention
A necessary access cookie keeps protected projects unlocked for up to seven days. A language cookie remembers your language preference. The assistant stores the conversation in session storage in your browser so it can continue across pages in the same tab. Contact correspondence and provider data are retained according to their purpose and the respective service settings; this page does not promise a fixed deletion period.
5. Privacy requests
You can contact me to request access, correction, or deletion of personal information associated with your enquiry, subject to applicable rights and obligations. Use the contact page for privacy-related requests.
6. Contact
For questions about these data practices, please contact Andreas Johann via the contact page.