Privacy Policy
Effective: 14 May 2026
1. Data controller
The operator of jirisuder.eu and the Letesh language-learning app is Jiří Suder, a private individual (no business registration; this is a hobby project). For any privacy-related questions: jiri.suder.92@gmail.com.
2. What we collect
When you visit (no account)
- IP address — stored in nginx access logs and an internal
audit_log for rate-limiting and abuse detection.
- User-Agent string — your browser identifier, in logs only.
- Cloudflare Turnstile processes your IP and a browser fingerprint when you load the registration form, to detect bots.
When you register a Letesh account
- Email address — your account identifier.
- Password hash — we never store your plaintext password. We store only a one-way
bcrypt hash (cost 12).
- Study data — decks, cards, progress, settings you create.
- Session cookie — a random 32-byte token named
letesh_session (HttpOnly + Secure + SameSite=Strict).
- Audit log entries — registration, login, password-change events (timestamp, IP, User-Agent) for security review.
Browser-side storage
- localStorage — your study data, language preference, app settings. This data never leaves your browser unless you sign in.
- sessionStorage — a transient "guest mode" flag.
3. Purposes & legal basis
| Purpose | GDPR Art. 6 basis |
| Running your account & syncing data | (b) Contract performance |
| Sending verification / password-reset emails | (b) Contract performance |
| Anti-abuse: rate limit, CAPTCHA, audit log | (f) Legitimate interest in service security |
| Operational logs | (f) Legitimate interest |
4. Recipients & processors
| Vendor | Location | Purpose | Data they see |
| Oracle Cloud Infrastructure | Stockholm, Sweden (EEA) | Server hosting | Everything stored in DB |
| Resend, Inc. | Delaware, USA | Transactional email | Email address + email body |
| Cloudflare, Inc. | California, USA | Turnstile CAPTCHA | IP, browser fingerprint |
| ISRG (Let's Encrypt) | California, USA | TLS certificates | Domain names only, no personal data |
Note: web fonts (Inter, JetBrains Mono) are self-hosted on our server — no requests are made to Google or any third-party CDN for typography.
5. Transfers outside the EEA
Two of the processors above (Resend, Cloudflare) operate from the USA. Transfers are covered by Standard Contractual Clauses (SCCs) under GDPR Art. 46, available in each vendor's public Data Processing Agreement.
6. Retention
- Account & study data: until you request deletion, or after 24 months of inactivity.
- Operational & audit logs: 30 days.
- Email service logs (Resend): per Resend's own retention (typically 30–90 days).
7. Your rights
Under GDPR you have the right to:
- Access your personal data (Art. 15)
- Rectification of inaccurate data (Art. 16)
- Erasure — "right to be forgotten" (Art. 17)
- Restriction of processing (Art. 18)
- Portability (Art. 20)
- Object to processing based on legitimate interest (Art. 21)
- Complaint to your data-protection authority. The lead supervisory authority for our processing is Datatilsynet (Norway), as the operator is resident in Norway. Czech residents may alternatively file with ÚOOÚ (uoou.cz); other EU/EEA residents may file with their local DPA.
Two of these rights can be exercised directly from the Letesh app while signed in:
For any other right or question, email jiri.suder.92@gmail.com. We reply within 30 days.
8. Security measures
- All traffic over HTTPS (Let's Encrypt, TLS 1.2+, HSTS enforced)
- Passwords stored only as bcrypt hash (cost 12)
- Session cookies are HttpOnly + Secure + SameSite=Strict
- Server behind nginx reverse proxy with per-IP rate limits
- Cloudflare Turnstile CAPTCHA guards the registration form
- fail2ban watches SSH for brute-force attempts
9. What we do NOT do
- We do not sell or rent your personal data to any third party.
- We do not send marketing or promotional emails. Account emails are limited to transactional content — email verification and password reset.
- No automated decision-making or profiling (GDPR Art. 22). The SM-2 spaced-repetition algorithm operates only on your own study data to schedule card reviews; it does not produce decisions with legal or similarly significant effects on you.
- No cross-site tracking, no analytics, no advertising pixels. See our Cookies notice for the full list of browser-side storage we use.
10. Data breach notification
Should a personal-data breach occur that is likely to result in a risk to your rights and freedoms, we will notify Datatilsynet without undue delay and at the latest within 72 hours (GDPR Art. 33) and inform affected users via email (Art. 34).
11. Age requirement
Letesh is intended for users 16 years or older. If you are under 16, please obtain a parent or guardian's consent before registering. We do not knowingly collect personal data from children under 16; if we learn of such collection, we will delete the account.
12. Changes to this policy
We may update this policy from time to time. The effective date at the top of this page reflects the current version. Material changes will be communicated by email to registered users.
13. Contact
Jiří Suder · jiri.suder.92@gmail.com
Zásady ochrany osobních údajů
Účinnost: 14. května 2026
1. Správce osobních údajů
Provozovatelem webu jirisuder.eu a aplikace Letesh je Jiří Suder, fyzická osoba (bez IČO, hobby projekt bez podnikání). Kontaktní e-mail pro otázky ochrany údajů: jiri.suder.92@gmail.com.
2. Jaké údaje zpracováváme
Při návštěvě webu (bez registrace)
- IP adresa — v provozních logech nginx a v interním
audit_log. Slouží k rate-limitingu a detekci zneužití.
- User-Agent — identifikace prohlížeče, pouze v logech.
- Cloudflare Turnstile zpracovává IP adresu a fingerprint prohlížeče při načtení registračního formuláře (detekce botů).
Při registraci účtu Letesh
- E-mailová adresa — identifikátor účtu.
- Hash hesla — heslo samotné nikdy neuchováváme; pouze jednosměrný
bcrypt hash (cost 12).
- Studijní data — vámi vytvořené balíčky, karty, pokrok, nastavení.
- Session cookie — náhodný 32-bajtový token
letesh_session (HttpOnly + Secure + SameSite=Strict).
- Záznamy v audit_log — registrace, přihlášení, změny hesla (čas, IP, User-Agent) pro bezpečnostní revizi.
Klientské úložiště v prohlížeči
- localStorage — studijní data, jazyková preference, nastavení aplikace. Nikdy neopouštějí váš prohlížeč, pokud nejste přihlášeni.
- sessionStorage — krátkodobý příznak "guest mode".
3. Účely a právní základ
| Účel | Právní základ (GDPR čl. 6) |
| Provoz účtu a synchronizace dat | (b) Plnění smlouvy |
| Doručování ověřovacích / resetovacích e-mailů | (b) Plnění smlouvy |
| Ochrana před zneužitím (rate limit, CAPTCHA, audit log) | (f) Oprávněný zájem na bezpečnosti |
| Provozní logy | (f) Oprávněný zájem |
4. Příjemci a zpracovatelé
| Dodavatel | Sídlo | Účel | Vidí |
| Oracle Cloud Infrastructure | Stockholm, Švédsko (EHP) | Hosting serveru | Vše uložené v databázi |
| Resend, Inc. | Delaware, USA | Transakční e-maily | E-mailovou adresu + obsah e-mailu |
| Cloudflare, Inc. | Kalifornie, USA | Turnstile CAPTCHA | IP, fingerprint prohlížeče |
| ISRG (Let's Encrypt) | Kalifornie, USA | TLS certifikáty | Pouze název domény |
Pozn.: webová písma (Inter, JetBrains Mono) jsou self-hostovaná na našem serveru — žádné požadavky neodcházejí na Google ani jinou třetí stranu.
5. Předání do třetí země
Dva zpracovatelé výše (Resend, Cloudflare) provozují servery v USA. Předání je zajištěno Standardními smluvními doložkami (SCC) Evropské komise podle čl. 46 GDPR. DPA dokumenty jsou veřejně dostupné na webech jednotlivých dodavatelů.
6. Doba uchovávání
- Účet a studijní data: dokud nepožádáte o smazání, nebo po 24 měsících neaktivity.
- Provozní logy a audit log: 30 dní.
- E-mailové logy (Resend): podle politiky Resend (obvykle 30–90 dní).
7. Vaše práva
Podle GDPR máte právo na:
- Přístup k vašim osobním údajům (čl. 15)
- Opravu nepřesných údajů (čl. 16)
- Výmaz — "právo být zapomenut" (čl. 17)
- Omezení zpracování (čl. 18)
- Přenositelnost údajů (čl. 20)
- Námitku proti zpracování na základě oprávněného zájmu (čl. 21)
- Stížnost u dozorového úřadu. Vedoucím dozorovým úřadem pro naše zpracování je Datatilsynet (Norsko), protože provozovatel má bydliště v Norsku. Rezidenti ČR mohou alternativně podat stížnost u ÚOOÚ (uoou.cz); obyvatelé jiných států EU/EHP u svého místního dozorového úřadu.
Dvě z těchto práv můžete uplatnit přímo v aplikaci Letesh po přihlášení:
Pro jakékoli další právo nebo dotaz nám napište na jiri.suder.92@gmail.com. Odpovídáme do 30 dní.
8. Bezpečnostní opatření
- Veškerá komunikace přes HTTPS (Let's Encrypt, TLS 1.2+, HSTS aktivní)
- Hesla jsou ukládána pouze jako bcrypt hash (cost 12)
- Session cookies jsou HttpOnly + Secure + SameSite=Strict
- Server za nginx reverse proxy s per-IP rate-limity
- Cloudflare Turnstile CAPTCHA chrání registrační formulář
- fail2ban blokuje brute-force pokusy na SSH
9. Co NEDĚLÁME
- Vaše osobní údaje neprodáváme ani nepronajímáme žádné třetí straně.
- Neposíláme marketingové ani propagační e-maily. Účtové e-maily jsou omezeny na transakční obsah — ověření e-mailu a reset hesla.
- Žádné automatizované rozhodování ani profilování (čl. 22 GDPR). SM-2 algoritmus spaced repetition pracuje pouze s vašimi studijními daty pro plánování opakování karet; neprodukuje rozhodnutí s právními nebo obdobně významnými účinky.
- Žádné cross-site tracking, žádná analytika, žádné reklamní pixely. Kompletní výpis klientského úložiště najdete v Cookies notice.
10. Oznámení porušení zabezpečení
Pokud dojde k porušení zabezpečení osobních údajů, které pravděpodobně povede k riziku pro vaše práva a svobody, oznámíme to Datatilsynetu bez zbytečného odkladu a nejpozději do 72 hodin (čl. 33 GDPR) a dotčené uživatele informujeme e-mailem (čl. 34).
11. Věkové omezení
Letesh je určen pro uživatele od 16 let. Pokud jste mladší 16 let, požádejte před registrací o souhlas rodiče nebo zákonného zástupce. Vědomě nesbíráme osobní údaje od dětí mladších 16 let; pokud se o takovém shromažďování dozvíme, účet smažeme.
12. Změny zásad
Tyto zásady můžeme čas od času aktualizovat. Datum účinnosti v záhlaví odráží aktuální verzi. O zásadních změnách budou registrovaní uživatelé informováni e-mailem.
13. Kontakt
Jiří Suder · jiri.suder.92@gmail.com
Personvernerklæring
Gjelder fra: 14. mai 2026
1. Behandlingsansvarlig
Operatøren av jirisuder.eu og Letesh-appen er Jiří Suder, en privatperson (ikke næringsdrivende; dette er et hobbyprosjekt). E-post for personvernhenvendelser: jiri.suder.92@gmail.com.
2. Hvilke data vi behandler
Når du besøker nettstedet (uten konto)
- IP-adresse — i nginx access-logger og intern
audit_log. Brukes til rate-limiting og misbruksdeteksjon.
- User-Agent — nettlesertype, kun i logger.
- Cloudflare Turnstile behandler IP og fingeravtrykk fra nettleseren ved registreringsskjemaet (botdeteksjon).
Når du registrerer Letesh-konto
- E-postadresse — kontoidentifikator.
- Passord-hash — passordet ditt lagres aldri i klartekst; kun en enveis
bcrypt-hash (cost 12).
- Studiedata — decks, kort, fremdrift, app-innstillinger du oppretter.
- Session-cookie — tilfeldig 32-byte token
letesh_session (HttpOnly + Secure + SameSite=Strict).
- Audit-logg — registreringer, innlogginger, passordendringer (tidsstempel, IP, User-Agent) for sikkerhetsgjennomgang.
Lagring i nettleseren
- localStorage — studiedata, språkpreferanse, app-innstillinger. Forlater aldri nettleseren med mindre du logger inn.
- sessionStorage — kortvarig "gjeste-modus"-flagg.
3. Formål og rettslig grunnlag
| Formål | GDPR Art. 6 grunnlag |
| Drift av konto og datasynkronisering | (b) Oppfyllelse av kontrakt |
| Sending av bekreftelses-/tilbakestillings-e-poster | (b) Oppfyllelse av kontrakt |
| Anti-misbruk: rate limit, CAPTCHA, audit-logg | (f) Berettiget interesse i tjenestesikkerhet |
| Driftslogger | (f) Berettiget interesse |
4. Mottakere og behandlere
| Leverandør | Lokasjon | Formål | Data |
| Oracle Cloud Infrastructure | Stockholm, Sverige (EØS) | Server-hosting | Alt lagret i DB |
| Resend, Inc. | Delaware, USA | Transaksjonell e-post | E-postadresse + e-postinnhold |
| Cloudflare, Inc. | California, USA | Turnstile CAPTCHA | IP, nettleserens fingeravtrykk |
| ISRG (Let's Encrypt) | California, USA | TLS-sertifikater | Bare domenenavn |
Merk: web-skrifttyper (Inter, JetBrains Mono) er selv-hostet på vår server — ingen forespørsler sendes til Google eller annen tredjepart for typografi.
5. Overføring til land utenfor EØS
To behandlere ovenfor (Resend, Cloudflare) opererer fra USA. Overføringer er dekket av Standard Contractual Clauses (SCC) under GDPR Art. 46, tilgjengelig i hver leverandørs DPA.
6. Lagringstid
- Konto- og studiedata: til du ber om sletting, eller etter 24 måneder uten aktivitet.
- Drifts- og audit-logger: 30 dager.
- E-posttjenestelogger (Resend): per Resends egen retensjon (typisk 30–90 dager).
7. Dine rettigheter
Under GDPR har du rett til:
- Innsyn i dine personopplysninger (Art. 15)
- Retting av unøyaktige data (Art. 16)
- Sletting — "rett til å bli glemt" (Art. 17)
- Begrensning av behandling (Art. 18)
- Portabilitet (Art. 20)
- Innsigelse mot behandling basert på berettiget interesse (Art. 21)
- Klage til tilsynsmyndighet. Ledende tilsynsmyndighet for vår behandling er Datatilsynet (Norge), siden operatøren er bosatt i Norge. Tsjekkiske brukere kan alternativt klage til ÚOOÚ (uoou.cz); andre EU/EØS-borgere til sin lokale DPA.
To av disse rettighetene kan utøves direkte fra Letesh-appen mens du er pålogget:
For andre rettigheter eller spørsmål, send e-post til jiri.suder.92@gmail.com. Vi svarer innen 30 dager.
8. Sikkerhetstiltak
- All trafikk via HTTPS (Let's Encrypt, TLS 1.2+, HSTS aktiv)
- Passord lagres kun som bcrypt-hash (cost 12)
- Session-cookies er HttpOnly + Secure + SameSite=Strict
- Server bak nginx reverse proxy med per-IP rate-limits
- Cloudflare Turnstile CAPTCHA beskytter registreringsskjemaet
- fail2ban blokkerer brute-force-forsøk på SSH
9. Hva vi IKKE gjør
- Vi selger eller leier ikke ut personopplysningene dine til noen tredjepart.
- Vi sender ikke markedsførings- eller reklame-e-poster. Konto-e-poster er begrenset til transaksjonelt innhold — e-postbekreftelse og passordtilbakestilling.
- Ingen automatisert beslutningstaking eller profilering (GDPR Art. 22). SM-2 spaced-repetition-algoritmen opererer kun på dine egne studiedata for å planlegge kortrepetisjoner; den produserer ikke beslutninger med rettslige eller tilsvarende vesentlige effekter.
- Ingen cross-site tracking, ingen analyser, ingen reklamepiksler. Se vår Cookies-erklæring for hele listen over klientside-lagring vi bruker.
10. Varsling om databrudd
Hvis det skulle oppstå et brudd på personopplysningssikkerheten som sannsynligvis vil medføre en risiko for dine rettigheter og friheter, vil vi varsle Datatilsynet uten unødig opphold og senest innen 72 timer (GDPR Art. 33) og informere berørte brukere via e-post (Art. 34).
11. Aldersgrense
Letesh er ment for brukere 16 år eller eldre. Hvis du er under 16 år, vennligst innhent samtykke fra en forelder eller verge før registrering. Vi samler ikke bevisst inn personopplysninger fra barn under 16 år; hvis vi får kjennskap til slik innsamling, vil vi slette kontoen.
12. Endringer i denne erklæringen
Vi kan oppdatere denne erklæringen fra tid til annen. Gjeldende dato vises øverst. Vesentlige endringer kommuniseres via e-post til registrerte brukere.
13. Kontakt
Jiří Suder · jiri.suder.92@gmail.com