Clone
1
Privacy
David Keane edited this page 2026-06-09 01:30:32 +01:00
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Privacy (summary)

Full canonical policy: PRIVACY.md in the repo — and the public version at https://davidtkeane.com/rangerhq-tuner/privacy

TL;DR

RangerHQ Tuner collects no personal data. Nothing leaves your device.

Everything the extension remembers — your last station, your volume, your history, your favourites, the cached SomaFM catalogue — lives in chrome.storage.local on your own computer. The extension author never sees any of it. Neither does Google. Neither does anyone else.

What we don't collect

Using Chrome Web Store's standard data category vocabulary, RangerHQ Tuner does not collect any of:

  • Personally identifiable information
  • Health information
  • Financial / payment information
  • Authentication information
  • Personal communications
  • Location
  • Web history
  • User activity
  • Website content

No accounts, no login, no telemetry, no analytics, no third-party tracking scripts, no advertising code.

What we store locally (and only locally)

chrome.storage.local key What it holds Why
tuner.stationsCache A cached SomaFM channel list Fast popup open
tuner.cachedAt Cache timestamp Expires after 6 hours
tuner.currentStationId Your last-picked station ID Resume where you left off
tuner.volume Your last volume (0.01.0) Persistent across sessions
tuner.isPlaying Whether playback was active UI state sync
tuner.history Capped FIFO of {artist, title, station, stationId, at} History tab
tuner.favourites Uncapped same-shape list Favourites tab
tuner.historyCap Your chosen history cap Configurable 50500

Wipe any of it from the extension's Options page (Clear history / Clear favourites / Clear EVERYTHING) or by removing the extension from chrome://extensions.

Outbound network requests

RangerHQ Tuner contacts only the following endpoints, all on somafm.com:

Endpoint When
https://somafm.com/channels.json At most once every 6 hours
https://somafm.com/{...}.pls Once per station change
Direct stream URLs (e.g. https://ice1.somafm.com/groovesalad-128-mp3) Continuous while playing
https://somafm.com/songs/{id}.json Every 25 seconds while playing

These are public-API calls — no authentication, no user identifiers, no tracking parameters added. SomaFM sees your IP exactly as if you visited https://somafm.com in a browser tab.

The four buttons next to each history entry — Spotify, YouTube, Apple Music, Bandcamp — are plain HTML anchor tags (<a href> with target="_blank" rel="noopener noreferrer") that open the corresponding service's public search results page in a new browser tab.

RangerHQ Tuner does not embed any third-party SDK, player, tracker, or analytics code. The extension does not communicate with Spotify, YouTube, Apple Music, or Bandcamp servers in any way. When you click one of the buttons, you are simply navigating to a public search URL. Anything that happens after that is between you, your browser, and the destination site.

Permission justifications

Permission Why
offscreen Manifest V3 service workers can't host an <audio> element; the chrome.offscreen API provides a hidden DOM document for persistent audio playback.
storage Persist your settings, last station, volume, history, and favourites in chrome.storage.local on your own device.
https://somafm.com/* Fetch the public station catalogue, playlist files, audio streams, and now-playing metadata from SomaFM. No auth, no user data sent.

We do not request tabs, activeTab, <all_urls>, webRequest, cookies, or any other broad permission.

Children's privacy

RangerHQ Tuner is a general-purpose audio player and does not knowingly process data of children under 13. It collects nothing about anyone of any age.

Contact