Fork me on GitHub
Movie Planner

Privacy

This site is fully static. There's no server-side application code of any kind in this repository's build output, and no server this project runs ever holds — or even sees, not even in transit — your CalDAV or OMDb credentials.

Your credentials are stored only in your own browser's storage (IndexedDB), on this device, in this browser. They're never sent anywhere except straight to the CalDAV and OMDb URLs you configured yourself.

So that pages open quickly with a long history, this browser also keeps a copy of your viewings (titles, dates, venues and any OMDb details) in its own storage, and refreshes it from your CalDAV server each time a page opens. That copy never includes your password. Pointing the site at a different calendar removes the old copy, and so does clearing the site data described below.

This browser's local storage, a separate place from where your credentials are kept, also holds a short note of which titles OMDb answered for but couldn't fully fill in (no poster or plot for them), so that "Refresh all metadata" doesn't ask OMDb about them again every time. It holds a title's calendar ID and IMDb ID and a date, under a key made from a hash of the calendar address and user name, never the credentials themselves. It expires after 30 days, and clearing the site data removes it.

Every CalDAV and OMDb request this site makes goes directly from your browser to the servers you pointed it at — there's no proxy, relay, or analytics service of any kind in between. Clearing your browser's site data for this origin removes everything this site ever stored.

Two features call other services directly, without going through this site's own servers (it doesn't have any): searching for a venue's address while logging or editing a viewing callsNominatim, OpenStreetMap's free geocoder — only when you use that search field or press "Find missing maps" on the Venues page, never automatically. Any map showing a located venue loads map tiles from OpenStreetMap directly, which does happen automatically whenever such a map is on screen. Neither service ever receives your CalDAV or OMDb credentials — Nominatim sees only the address text you type, or the venue names you ask it to look up, and the tile provider sees only the map area being viewed.