Privacy
In short: this is a personal website. There are no ads, no analytics and no tracking cookies. Your settings (favourite stations, volume, default language, news places and languages, meeting-finder cities) stay in your own browser. A visitor counter keeps one shared total — no names, addresses or identifiers. The only things stored about you anywhere are what you choose to save on the Radio page: if you sign in, your Google account ID and email, your favourite stations and your default language; if you rate a station or comment on it, the rating and comment under an anonymous ID your browser creates. You can have any of it removed at any time.
Who is responsible
This site is run by Ranjith Kannankattil, an individual based in Milan, Italy, who is the data controller for anything described here. To ask a question or exercise any of your rights, email hello@ranjithkb.com.
What stays in your browser
Some pages remember your choices using your browser's local storage. This never leaves your device and is not sent to me:
- Radio — favourite stations, the last station played, volume, your default language and recently used languages.
- News — the place you last looked at, your list of places, the languages you picked and whether other outlets are shown.
- Trip planner — your last choices (how long, how you get around, interests) so the form opens the way you left it.
- Productivity — the cities, working hours and meeting title you set in the meeting finder, and the timelines you make in the Gantt tool. A timeline leaves your browser only if you share a link to it, and then the plan travels inside the link itself; nothing is stored on a server. Downloading a PDF or image fetches the site's fonts from Google Fonts so the file looks like the page.
- Every page — the date your browser was last counted by the visitor counter.
You can clear it at any time by clearing this site's data in your browser settings.
Visitor counter
The number at the bottom of each page is a single running total of visits. Each browser adds one, at most once a day. To avoid counting you twice, your browser keeps the date it last counted in its own local storage; that date never leaves your device. The total itself is stored in Google Firebase (EU) as one number — nothing about who visited, from where, or what they read. As with any web request, Google's servers see your IP address when the number is updated, but it is not stored with the count.
The Radio app file is served by GitHub, which keeps its own running total of downloads; the Radio page only reads that public number. This site stores nothing about who downloaded it.
Signing in on the Radio page (optional)
If you choose Sign in to save favourites, you sign in with your Google account so your favourites follow you to other devices.
| What | Why |
|---|---|
| Your Google account ID, email address, name and profile picture link (held by Firebase Authentication) | To know which saved list is yours when you sign in. Your name is shown only to you, next to the Sign out button. |
| Your list of favourite stations, your default language and when they were last changed (held in Firebase Firestore) | To show your favourites on any device you sign in on. |
- Legal basis: you ask for this feature by signing in, so it is processed to provide it to you (GDPR Art. 6(1)(b)). Without signing in, everything still works and nothing is stored about you (apart from any station ratings you choose to give, below).
- Who processes it: Google Firebase (Google Ireland Limited), with data stored in the EU (Firestore location
eur3). Google acts as a processor under its data processing terms. - Who can see it: only you, through the site; the database rules let each signed-in person read and change only their own record. I can see it as the site owner, and look at it only to fix problems or to delete it when asked.
- How long: until you ask for it to be deleted. Records not used for two years may be deleted.
- It is never sold, shared for marketing or used for anything else.
Rating and commenting on stations (optional)
On the Radio page you can give a station one to five stars and add a short comment. You don't need to sign in: the first time you rate or comment, your browser gets an anonymous ID from Firebase Authentication, so your rating can be changed later and counted once per browser. Just opening a station's ratings creates nothing. If you then sign in with Google, the anonymous ID is joined to your account, so your ratings stay yours.
- What is stored: the anonymous ID (or your Google account ID, if you are signed in), the station, your stars, your comment if you write one, and when you sent it — in Google Firebase (EU, Firestore location
eur3), as described above. - Who can see it: the average and the number of ratings are shown to everyone. Individual ratings are stored with the anonymous ID (not a name), and the site reads them to work out the average, so anyone looking at the database directly could see that one ID gave several ratings. A comment is published without any name, together with its stars and date, only after I have read and approved it; until then only you and I can see it.
- Legal basis: you choose to rate or comment, so it is processed to provide that feature (GDPR Art. 6(1)(b)).
- Removing it: to have a rating or comment removed, contact me (see above). Clearing this site's data in your browser removes the anonymous ID from your device; ratings already given stay counted unless you ask for them to be removed.
Services your browser connects to
Like most websites, pages here load some parts from other services. Each one receives your IP address and basic browser information when it does:
- GitHub Pages — hosts this site (GitHub keeps standard server logs).
- Google Fonts — the typefaces.
- cdnjs (Cloudflare) — the player library used for some radio streams.
- GitHub (raw.githubusercontent.com) — serves the News page's headlines, which are rebuilt every two hours.
- Newspapers — only when you open a story, which takes you to that paper's own website (occasionally through a Google News link). Their own privacy policies apply.
- Trip planner — when you plan a trip, the places you type and the area you choose are sent straight from your browser to Photon by Komoot (place search), Wikidata and Wikipedia (sights and descriptions), OpenStreetMap services (opening hours and walking routes), Open-Meteo (weather) and the OpenStreetMap tile servers (the map). Nothing is stored on this site; a plan you share lives only in its link.
- Radio broadcasters — when you press play, your browser connects directly to that station's streaming server, as it would on the station's own website. Their own privacy policies apply.
- Google Firebase — to update and show the visitor total, for station ratings and comments, and if you sign in, as described above.
Your rights
Under the GDPR you can ask to see the data held about you, correct it, delete it, receive a copy, or object to its use. Email hello@ranjithkb.com and it will be handled within 30 days. Signing out does not delete your saved list — ask, and it will be removed. You can also complain to the Italian data protection authority, the Garante per la protezione dei dati personali.
Children
Signing in is not intended for children under 14 (the age of digital consent in Italy).
Copying
What I created for this site — my writing, my photographs and the tools — is free to copy, share and reuse, in the spirit of copyheart: ♡ copying is an act of love. This is a wish, not a legal licence, and it covers only my own work. Other people's work keeps its own terms: the radio stations and their names, news headlines and the papers they link to, the poetry collection I co-wrote, and Kintsugi, which is published under Creative Commons BY-NC-SA.
Changes
If this changes, the date at the top will change with it.