Tim Kruse
Back to the rally

Maps, not Excel!

tafelrunde

A web app for our dinner group, sign-in only. The next place can be drawn at random from the wish list.

What it’s about

Before every evening the same question: where have we been, and was it any good? The answer sat in an Excel sheet, and none of us ever opened it.

tafelrunde turns that into a map where every visit carries its photos and its rating. On top of that come a wish list with a random pick for the evenings when nobody has an idea and, since the last round of work, a planner that settles the date of the next one. Photos can be added right at the table while the marks are still hidden. And we can share the whole list, as a table, a leaderboard, a poster or a year in review for the phone; private notes stay out.

In a group this small, a wrong decision is no big deal; we just change it. So rather than argue for long, I write down why we did it the way we did.

Why it’s built this way

Four places where it could have gone differently.

  • One file is enough for three people

    Three users, a few hundred rows. A file on disk is backed up by copying it. A second container with a backup routine of its own would be effort with nothing in return.

  • The map needs no outside service

    The map data sits on my own server as a single PMTiles file. Using range requests, the browser fetches only the piece of map it is currently showing. No key, no quota, no third party reading along where we go to eat.

  • Signing in by name

    A plain password prompt (Basic Auth) used to guard the app, and it had no notion of “who”: a rating could not be attributed to anyone. With a real sign-in behind it, every rating has a sender.

  • Rate blind, reveal together

    See the others’ marks before you give yours, and the mark you give is no longer yours. Everyone rates alone; the reveal happens together.

Join in? Questions about a project? Write to me.

coding@tim-kruse.com
NOTEXTINCT

This site in a different design

Same content, different look. You start on its home page, and every link stays in the chosen design.

What is this? About this site →