Privacy policy
We don't collect anything. Here's exactly what the app does.
Aangan has no servers, accounts, analytics or advertising, so the people who make it never receive any information about you. This policy explains what stays on your TV and the few things the app sends to a weather service on your behalf.
Effective 25 October 2026 · Applies to Aangan 1.1 and later, and to this website
In short
- We collect no personal data. Aangan has no account, no analytics, no crash reporting and no advertising, and the people who make it have no server that receives anything from it.
- Your settings stay on your TV, including your family's names and dates. They are excluded from Android's cloud backup.
- The app talks to one outside service: Open-Meteo, for the forecast and air quality of the city you chose, and for city search when you search.
- No location permission. Aangan uses the city you choose, never your TV's location.
- The source code is public, so all of this can be checked: github.com/vaari-dev/aangan.
Who we are
Aangan is a free, open-source app published by Vaari (the vaari-dev project on GitHub), under the MIT licence. "We" in this policy means the people who make and publish it. Because we receive no data from the app, we don't act as a controller or processor of any personal data that it handles on your TV.
What stays on your TV
Aangan keeps its settings in its private storage on the TV, which other apps can't read. Android's cloud backup is switched off for Aangan (android:allowBackup="false"), so none of it is copied to Google or anywhere else.
| What | Why |
|---|---|
| Birthdays and anniversaries: the names you type, the day and month, and which kind of day it is | To count down to them and celebrate them on the day. No year of birth is asked for or stored. |
| Festival dates you moved or hid | To show the calendar the way your family keeps it. |
| Your chosen city: its name, region, coordinates, time zone and country | To fetch its weather and air quality, and pick the right air-quality scale. |
| The last forecast and air-quality readings | To show something straight away and avoid repeat requests. |
| The apps in your dock and the apps you hid, as app package names | To arrange the home screen your way. |
| Whether you've seen the welcome, and how many times the tips have shown | To stop showing them. |
| If Aangan crashes: a short note with the app and Android versions, the TV model and where in the code it failed. Only the latest is kept. | So you can report the problem if you want to. Aangan never sends it. The phone page shows it in full, with a link that opens a pre-filled GitHub issue for you to read, edit and submit yourself, and a button to delete it. |
Aangan reads the list of apps installed on the TV, but only the ones that can be opened from a home screen, and only to show them. That list never leaves the TV.
What leaves your TV
Aangan makes three kinds of request, all over HTTPS, all to Open-Meteo, an open weather service. None contain an identifier for you or your TV. Like any internet request, they carry your network's IP address, which Open-Meteo receives as part of the connection; see Open-Meteo's terms and privacy.
| Request | What's sent | When |
|---|---|---|
Weather forecastapi.open-meteo.com | Your city's latitude and longitude rounded to two decimals (about 1 km) and its time zone | At most every 30 minutes, and only while the home screen is on screen |
Air qualityair-quality-api.open-meteo.com | The same rounded coordinates and time zone | At most every 60 minutes, and only while the home screen is on screen |
City searchgeocoding-api.open-meteo.com | The letters you typed in the search box | Only while you search for a city, a moment after you stop typing. Choosing a city from the list of large cities sends nothing. |
The requests identify the app as Aangan and include nothing else: no device ID, advertising ID, account, app list or family data. The code that makes them is in Weather.java and Place.java.
When you open another app from Aangan, that app's own privacy policy applies. Aangan just opens it.
Permissions
| Permission | Why |
|---|---|
INTERNET | For the three requests above, and to serve the phone setup page on your home network. |
ACCESS_NETWORK_STATE | To find the TV's address on your home network, so the QR code can point your phone to it. |
Both are "normal" permissions that Android grants without asking. Aangan doesn't ask for location, storage, camera, microphone, contacts, accounts or any other permission.
The Home-button service
Most TVs don't let you choose a different home screen, so Aangan includes an optional accessibility service that you can switch on to make the Home button open Aangan. Android asks you to confirm before it can be turned on. Here is everything it does:
- The Home button. It watches for the Home key only. When you press Home, it opens Aangan. Every other button passes straight through, unseen.
- The TV's own home screen. It is told only when the TV's built-in home screen app comes to the front (as at start-up), and then opens Aangan instead. It receives no events from any other app.
- Nothing on screen. It can't read the contents of any window (
canRetrieveWindowContent="false"), so it can't see what you watch, type or open. - Nothing kept or sent. It stores nothing and sends nothing anywhere.
It acts only on this fixed rule, never on its own initiative, and Aangan works without it. You can switch it off any time in your TV's accessibility settings. Its configuration is in home_button.xml and its code in HomeButton.java.
The phone setup page
While Aangan's Settings screen is open, the TV serves a small web page on your home network so you can change settings from your phone. It's the only time Aangan accepts a connection.
- It starts when Settings opens and stops when you leave.
- Its address includes a new random secret each time, shown only on the TV's screen as a QR code. A request without it gets only a "link expired" page.
- The page is served directly by the TV over your Wi-Fi; it doesn't pass through the internet or any server of ours. It loads nothing from anywhere else (its font and logo come from the TV), sets no cookies, and asks your browser not to cache it or send referrer information.
- It uses plain HTTP, because a device on a home network can't obtain an HTTPS certificate without a cloud service. Anyone on the same network who could watch traffic could see what you enter while you use it. On a home network you trust, that's no different from the TV itself.
What Aangan never does
- Show ads, or use any advertising or analytics library. Aangan has no third-party libraries at all.
- Collect, sell, share or transfer your data, because it doesn't collect any.
- Use your TV's location, microphone or camera.
- Track what you watch, which apps you open, or for how long.
- Read other apps' screens or notifications.
- Phone home: there is no Aangan server.
Your control
- See or change your data: everything Aangan stores is visible and editable in its Settings, or from your phone.
- Delete it: remove a family day or festival change in Settings; or clear everything with Settings → Apps → Aangan → Clear data, or by uninstalling Aangan. Nothing remains anywhere else.
- Stop all network use: disconnect the TV from the internet. Aangan keeps working, minus fresh weather.
Because we hold no data about you, we can't look up, export or delete anything on your behalf; it's all on your TV and in your hands.
Children
Aangan is suitable for all ages. It collects no information from anyone, including children, and contains no ads, purchases or links to social media.
This website
This site has no scripts, cookies, analytics or embedded content, and loads nothing from other servers. It's hosted by GitHub Pages, which, like any web host, may log your IP address and browser details for security and operations; see GitHub's privacy statement. Downloads from the Releases page are served by GitHub too.
Changes to this policy
If what Aangan does with data changes, this policy will change first, with a new effective date, and the change will be listed in the changelog. Every past version is in the history of this page.
Contact
Questions about privacy are welcome. Open an issue at github.com/vaari-dev/aangan/issues. To report a security problem privately, use GitHub's private vulnerability reporting.