# Temporamancer A TV-friendly way to play the [TimeGuessr](https://timeguessr.com) daily. The photo fills the screen; the map, year slider, and score float over it in compact panels that stay inside a TV-safe margin. No header, no ad banner. ## Run it ```sh npm start # or: node server.mjs ``` Then open . The server also prints a LAN address you can type into a TV or streaming-stick browser. Set `PORT` or `HOST` to change where it listens. ## How it works `server.mjs` is a zero-dependency Node server. It fetches the daily from the same SvelteKit data endpoint the real site hydrates from, decodes it, caches it for five minutes, and serves it at `/api/daily`. Everything else is a static page in `public/`. Scoring is a direct port of the site's formula, so points match what timeguessr.com would award. Progress for the day is saved in the browser, so a refresh resumes where you left off and finishing shows the final screen again rather than a replay. Results are not submitted to a timeguessr.com account. ## Controls | Key | Action | | --- | --- | | `←` `→` | Year ±1 (`Shift` for ±10) | | `↑` `↓` | Year ±10 | | digits | Type a four-digit year | | `Enter` | Guess, then next round | | `M` | Keep the map expanded | | `Esc` | Clear the pin | | scroll / drag | Zoom and pan the photo | | `+` `−` `Backspace` | Zoom in, out, reset | | `F` | Fill the screen with the photo | | `U` | Miles or kilometres | | `Shift`+`R` twice | Replay today from round one |