Dan's Town

Town map

An interactive pixel-art town. Use the arrow keys or W A S D to walk, Enter to interact, or click or tap where you want to go. Every place is also listed in the Map menu and under "Where to?".

← Town

The short version

  • No ads, no analytics, no tracking, and no cookies of this site's own.
  • Chats with the twin aren't saved here.
  • Dan's Google Calendar is only read as free/busy times. Event titles and details are never read.
  • You only give your name or email if you choose to leave a note, request a song, or ask for a meeting.
  • Nothing is sold or shared for marketing.

Digital Twin chat

Your messages are sent to an AI model through OpenRouter, using only providers that don't retain prompts (Zero Data Retention). A small classifier, also through OpenRouter, checks each message for spam or abuse first. Spoken replies are made the same way.

The site doesn't store the conversation. It keeps a log of its last 200 runs with timings and token counts only, no text, for the stats screen at Home. Cloudflare Turnstile may check that you're a person, and your IP address is used briefly for rate limits without being saved.

Meeting requests and Google Calendar

The twin can suggest open times on Dan's calendar and pass along a meeting request. Visitors never sign in with Google. The site connects only to Dan's own Google account, with two permissions:

  • Free/busy (calendar.freebusy), to know which times are taken. It never sees event titles, guests, or details.
  • Create events (calendar.events), used only after Dan approves your request: it adds the meeting with a Google Meet link and Google emails you the invite.

A request stores your name, email, topic, chosen time, and time zone, so Dan can reply. Your name, email, and topic are wiped when Dan declines, when the request expires unanswered, or 30 days after the meeting. The whole record is deleted after 90 days. Your IP address is never stored, only a keyed hash used to cap requests per visitor.

Use of information received from Google APIs adheres to theGoogle API Services User Data Policy, including the Limited Use requirements. Calendar data is used only to show availability and book the meeting, never for ads, and is never transferred to anyone else or used to train AI models.

Fridge notes and song requests

At Home you can pin a note on the fridge (name, message, and how to reach you) or request a song at the DJ booth (name, track, and a note). Dan gets an email about each one, and a classifier through OpenRouter sorts them and flags spam. Only notes and requests Dan approves are shown in town, with your name and message but never your contact details. They're kept until Dan removes them. Email to have yours taken down.

Crate Match

If you compare your taste with Dan's, the artists or Last.fm username you enter are looked up onLast.fm to work out the match. Nothing about you is stored.

In your browser

Your Critterdex progress, whether you've seen the tutorial, and your sound and voice settings are saved in your browser's local storage. They never leave your device, and clearing site data resets them.

Hosting

The town runs on Cloudflare, which handles every request and keeps short-lived logs for debugging. Emails go out through Cloudflare's email service.

Questions or deletion

Email sidan.nguyen@gmail.com to ask what's stored about you or to have it deleted. If this policy changes, the date at the top changes with it.

πŸ—ΊοΈ Town map

Jump straight to a place. No walking needed.

Around town

Welcome to my little world!

Hi, I'm Dan πŸ‘‹ This town is my portfolio. Each building holds a different part of my story.

CRITTERDEX

TRAINER CARD

Saved in this browser only. Your card is never uploaded anywhere.