Website privacy
Last updated 12 November 2026. This notice covers the promotional website, not the Android app.
Who is responsible?
Sergi Buitrago Llorente
Britzer Strasse 62C
12109 Berlin, Germany
sergi.buitrago@gmail.com
Visiting this website
GitHub Pages serves the website and its locally hosted images and fonts. Requests necessarily include technical information such as an IP address, requested resource and browser information. GitHub states that it logs visitors' IP addresses for security. Our purpose is to deliver and secure the website; our legal basis is Article 6(1)(f) GDPR, our legitimate interest in providing a functioning, secure promotional website. See GitHub's privacy statement.
The site has no advertising or audience-tracking analytics. The interactive app examples use page memory. The form checks availability through Supabase; this also involves a technical network request. We do not infer your country from your IP address or request browser geolocation.
Expressing interest
You can optionally select a country or region, including choosing not to specify one. We request no visitor email, name, street address or precise location. Submitting sends the chosen country/region through Supabase to the operator's mailbox using Brevo. It creates no newsletter subscription or contact list and does not send you a message.
Our purpose is to measure interest in LeafChef and understand broad geographic demand. To the extent personal data is involved, our legal basis is Article 6(1)(f) GDPR. We minimise the information requested, do not link interest signals to accounts and retain individual notifications for a limited period. Participation is optional and is not needed to browse the website. Counts represent submissions, not verified unique people.
Remembering a successful submission
After a successful interest submission, this website saves a submitted flag in your browser's localStorage under leafchef.web.interest.submitted.v1. Its purpose is to remember the action you requested and prevent repeat submissions from that browser. The value contains no country, email address, timestamp or unique identifier and is not included in the server request. It remains until you clear this site's browser data or the browser removes it. If storage is unavailable, we can prevent another submission only while the page remains open. Other browsers or devices, private sessions or cleared storage can still submit; this is not a unique-person counting system.
Spam protection and your choice
When collection is enabled, the form asks separately for your agreement before loading Cloudflare Turnstile. It processes technical browser/network signals for bot checks, including IP address, user-agent and connection information. Our legal basis for loading this optional third-party check is Article 6(1)(a) GDPR and, where terminal-device access requires it, consent under section 25(1) TDDDG. Cloudflare describes its own roles and purposes in its Turnstile Privacy Addendum.
You can refuse or untick the choice without affecting access to the promotional content. The protected button requires the check; alternatively, you can contact us at the email above. Unticking stops further submissions and removes the widget. Reloading the page clears your in-page choice. Withdrawal does not undo processing already performed or affect its prior lawfulness.
Supabase validates the check before sending a notification. A shared hourly/daily counter limits attempts; it stores no visitor IP, country, captcha token or visitor identifier. Our legal basis for this security control is Article 6(1)(f) GDPR. We do not create profiles or make decisions with legal or similarly significant effects. A bot check can reject a submission.
Recipients and international processing
Services involved are GitHub (hosting), Supabase (function and budget counter), Cloudflare (opt-in bot check), Brevo (notification delivery) and Google/Gmail (the operator's mailbox). The selected country/region is included in the notification; browser/network metadata is not deliberately added to its body. Technical providers still process their own network and security information.
Provider networks, support and subprocessors can process information outside the EEA. Supabase and Cloudflare incorporate data-processing terms into their standard service agreements; their DPAs include EU standard contractual clauses for applicable restricted transfers. Brevo includes its DPA in its Terms of Service. GitHub describes its international processing and use of standard contractual clauses and the EU-US Data Privacy Framework in its privacy statement. This deployment is not represented as EU-only. Relevant provider information: Cloudflare DPA, Brevo DPA information, Supabase DPA, Supabase transfers FAQ, Brevo privacy and Google privacy. You can request information about applicable safeguards using the contact above.
The notification mailbox is consumer Gmail. Google states that it acts under its own consumer terms and privacy policy and does not offer a processor DPA for consumer Gmail. It is not represented here as an Article 28 processor under a Workspace agreement. The notification body contains only an optional country/region, not visitor contact details or deliberately added technical identifiers. See Google's explanation of consumer and business terms.
Contacting us by email
If you choose to email us directly, your address, message and any information you provide are processed to answer your enquiry using Gmail. Our legal basis is Article 6(1)(f) GDPR (handling correspondence), or Article 6(1)(b) where necessary for a contract or steps you request before a contract. This is separate from the country-only interest button. Please avoid sending sensitive personal information. We delete ordinary enquiry correspondence when the matter is resolved and within 90 days afterwards unless legal retention duties or the establishment, exercise or defence of claims require longer storage.
Retention
Our policy is to delete individual interest notifications from the operator's mailbox, including operator-controlled trash/copies, within 90 days of receipt. Only aggregate country/region totals without individual records may be retained afterwards. No visitor submission database is created. The rate-limit table contains just the current shared counter state, overwritten as new time windows are used; it is not a visitor history.
The 90-day rule does not set provider security-log or backup retention. Supabase log visibility varies by plan and other operational retention is covered by its terms. GitHub and Cloudflare publish purpose-based retention information rather than a single verified duration for this deployment. The operator has confirmed Brevo transactional retention is configured to one month, with email previews disabled. Brevo notes deletion can take up to 24 hours after the retention period ends. Provider retention and deletion rules apply separately to their security, operational and backup records; the mailbox policy does not override them.
Your rights
Where the GDPR applies, you may request access, correction, erasure, restriction and portability where its conditions are met, and object to processing based on legitimate interests. You may withdraw consent at any time. Contact the operator above; we will handle requests within the applicable statutory periods. Because interest notifications contain no visitor identifier, we may be unable to identify a particular submission and will not collect extra identifying data just to link it to you.
You may complain to a supervisory authority, including the Berlin Commissioner for Data Protection and Freedom of Information, or the competent authority where you live or work.