Skip to content

Privacy policy

Last updated: 2026-07-09

This site is my personal portfolio and blog. I'm not running a company, I don't have a marketing team, and I don't sell or share your data. This document just explains what happens with the data that reaches me when you visit or send a message.

Who collects your data

Me - Adrian Zawadzki. Private individual, not a company. Contact: adrian.zawadzki1624@gmail.com.

What I collect

From the contact form: your name, email address, optional phone number, message body.

From your browser (stored locally): language preference (lang-pref cookie), light/dark theme, optional comment name, list of read posts.

IP address: passed through Vercel (hosting) and Cloudflare (Turnstile anti-spam). Used for bot detection and picking the language on first visit.

What for

Contact form: so I can reply to you.

Browser preferences: so the site remembers your settings (theme, language, comment name).

IP address: anti-bot protection and language selection.

Legal basis

Article 6(1)(f) GDPR (legitimate interest) - replying to contact you initiated yourself, and delivering the site's functionality.

How long I keep it

Contact form messages: until the conversation ends plus 30 days in case of a follow-up.

Browser preferences: until you clear them yourself - they're on your device, not mine.

Who I share with

Vercel (static hosting and form endpoint) - a data processor under GDPR, data in the US under SCCs.

Cloudflare (edge network and Turnstile anti-spam) - similarly.

Nobody else. No analytics, no trackers, no ads.

Your rights

You can, at any time: request access to your data, correct it, delete it, restrict its processing, object, or move it to a different service.

You can also file a complaint with the President of the Polish Personal Data Protection Office (uodo.gov.pl/en) or your local supervisory authority.

Just email me: adrian.zawadzki1624@gmail.com. No fees, no forms.

Cookies and local storage

lang-pref cookie (1-year expiry, this site only) - remembers your language choice after you click the language switcher.

Browser LocalStorage - light/dark theme, optional comment name, list of read posts.

No analytics cookies, no third-party trackers, no Google Analytics, no Facebook Pixel.

Policy changes

If anything changes (e.g. I add analytics or a third-party integration), I'll update this document and bump the date at the top. Worth checking back occasionally.

© 2026 Adrian Zawadzki