effective
privacy policy
This is my personal site. Most of it is public pages anyone can read. Part of it is a private feed for family and friends, and to run that, the site keeps some information about the people I let in. This page says what it keeps, why, where it goes, and how to have it changed or deleted.
the short version
- The site has no analytics, no ads, and no tracking scripts. I don’t sell anyone’s information, and I don’t share it except with the services that run the site.
- Guests are people I’ve let into the private feed. For them, the site keeps a phone number or Google email to sign in with, a name, and whatever they choose to add or write.
- I connect my own Google Contacts so people I already know get in without waiting, and my own Google Photos so I can post the pictures I pick. That data is used for nothing else.
- Email me at fit-imply-given@duck.com to see, fix, or delete anything about you.
if you’re just reading
You don’t need an account to read the public pages, and the site doesn’t set any cookies unless you sign in. The fonts and pictures come from the site itself, not from a font or image service.
Like any website, the site’s host, Netlify, receives what your browser sends with each request (your IP address, browser, and the page you asked for) and keeps it in its logs for a limited time. I use those logs only to keep the site working.
The site sends security headers that tell your browser which sources it may load. If your
browser blocks or flags something, it may send a short report to the site (to /csp-report). The site logs only which rule was hit, the website the blocked item
came from, and the page’s path, without any query string.
if you’re a guest
Here’s what the site keeps about guests, and why.
your phone number and name
The guest list holds your phone number (US or Canada) and your name, so you can sign in and so I know who’s who. They come from your access request, or from me when I add or invite you. When you sign in by phone, Supabase, which runs sign-in, sends you a one-time code by text message through Twilio.
signing in with Google
If you use “continue with google,” the site gets your Google account’s verified email address and name. What happens with them is under Google user data.
email and mailing address
Both are optional, on your settings page. Your email is for the weekly digest, for an email when I comment on a post you commented on, and for the one-tap sign-in links in those emails. Your mailing address is so I can send you mail. Only I see them; other guests never see your phone number, email, or address.
access requests
When you ask for access, the site keeps your phone number, your name, the optional note about how you know me, and whether I approved it. If your number is in my Google Contacts, you’re let in right away instead of waiting for me.
comments and reactions
Comments and reactions are on the private feed, so only signed-in guests see them. Your comments show with the name on the guest list. Reactions show only as counts, not who made them. You can delete your own comments.
notes on the tree
Notes you leave on the tree on the home page are public: anyone can read them. They’re signed “a friend” unless you choose to show your first name. The site stores your first name with the note either way, so I know who wrote it, and I can hide or delete any note.
feedback
If you send feedback, the site keeps what you wrote, the page you were on, and your account and phone number, so I can follow up.
what’s new since your last visit
To mark what’s new, the site records when you last opened the feed and when you last got a digest. It doesn’t keep a history of which pages you read or what you click.
email, push and notifications
the weekly digest
If you’ve given an email, the site may send you a digest on Sunday mornings, only when something is new. Email goes out through Resend. Every email has an unsubscribe link (and supports one-click unsubscribe in your mail app), and you can turn the digest off on your settings page.
Digest emails carry one-tap links that sign you in. Each works once, within a week. The site records each link’s ID, whose it is, and when it was made, expires, and was used, and deletes those records 30 days after the link was made. Please don’t forward a digest: an unused link in it would sign the recipient in as you.
push notifications
If you turn on push notifications, the site stores the address your browser’s push service (such as Google, Apple, Mozilla, or Microsoft) gives it, the keys that encrypt messages for your device, and your browser’s user-agent string. Messages pass through that push service. Turn push off on your settings page, or in your browser, at any time.
notes to me
When you request access, are let in automatically, comment, or send feedback, I get a short message about it by email (through Resend) and by Signal and WhatsApp (through a service called CallMeBot). It includes your phone number or name (often both), and anything you wrote.
what i post
The private feed holds what I post: updates, stories, photos, voice notes, and what I’m reading, watching, and listening to. It’s stored in a private Supabase database and private file storage, and only signed-in guests can see it. Every photo is resized and stripped of its metadata (including location) before it’s stored.
Some posts come from my own accounts: book ratings from my Goodreads RSS feed, films from a Letterboxd export I upload, and activities from Strava. From Strava the site keeps only the type, title, distance, time, climb, and date, never a map or location. These are my data, not guests’.
When you view the feed, your browser loads book covers and film posters straight from Goodreads’, Amazon’s, and Letterboxd’s image servers, and music posts load Apple Music’s player. Those companies see your IP address when that happens, and Apple’s player may set its own cookies.
Google user data
The site uses Google’s APIs in three ways.
sign in with Google (guests)
The site asks Google only for your basic profile: your email address, whether Google has
verified it, and your name (the openid, email, and profile scopes). It uses them to check whether you’re on the guest list or in my Google
Contacts, to add you to the guest list with that email and name if you are, and to sign you in.
Supabase keeps the details Google sends on your sign-in account (your Google account ID, email,
name, and profile picture link). If you’re not on the list or in my contacts, nothing about your
account is kept. Google’s sign-in tokens are used once and thrown away.
my Google Contacts (my account only)
I connect my own Google account with read-only access to my contacts (contacts.readonly). For each phone number and email address on my contact cards, the site stores the number or
address (as written, and in a standard form for matching), the name on the card, and the
card’s Google ID, which ties a card’s phone and email together. It reads and keeps nothing
else from the cards: no addresses, birthdays, notes, or photos. They’re kept in the site’s
private database, which only the server can read.
The site uses them for one thing: to let people I already know into the feed without waiting for me, by matching an access request’s phone number or a Google sign-in’s email. When that happens, the guest list notes which contact matched, and I get a short note saying so. Only I can see the contacts, in the site’s admin page; they aren’t shown to guests, used to contact anyone, or shared.
The contacts refresh once a day, and each refresh replaces the last copy. When I disconnect Google Contacts, the site deletes every stored contact, those “matched” notes, and its access token. If you’re in my contacts and would rather the site not keep your details, tell me.
my Google Photos (my account only)
I use Google’s Photos Picker (photospicker.mediaitems.readonly) to post photos.
The site gets only the photos I pick, never the rest of my library. Each one is copied,
resized, stripped of metadata (including location), and posted to the private feed.
what I don’t do with it
- I don’t sell Google user data.
- I don’t use it for advertising, or share it with advertisers or data brokers.
- I don’t use it to develop, improve, or train AI or machine-learning models, and the site doesn’t send it to any AI service.
- I don’t transfer it to anyone except the services that run the site (Supabase and Netlify), and only so the features above work. No one but me reads it.
veekas ashoka’s use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
You can remove the site’s access to your Google account at any time at myaccount.google.com/permissions.
who handles it
These services run parts of the site and handle data only to do that. Each has its own privacy policy and security.
- Netlify hosts the site and runs its server code and logs.
- Supabase holds the database and files, and runs sign-in.
- Twilio sends sign-in codes by text, for Supabase.
- Resend sends the site’s email.
- Google runs Google sign-in, Contacts, and the Photos Picker.
- CallMeBot, with Signal and WhatsApp, delivers my notifications.
- Your browser’s push service delivers push notifications, if you turn them on.
The site’s database (Supabase) is in the United States (Oregon, AWS us-west-2). The other services may process data in the United States or wherever else they operate. I may also share information if the law requires it.
how long it’s kept
- Your guest-list entry, comments, reactions, notes, feedback, and access requests stay until you ask me to delete them or I delete them.
- One-tap link records: deleted 30 days after the link was made.
- Push subscriptions: until you turn push off, the push service says it’s gone, or you’re removed from the guest list.
- My Google Contacts: replaced every day, and deleted when I disconnect.
- Netlify’s request logs: 24 hours.
When I remove someone from the guest list, the site keeps their phone number or Google email on a short “removed” list, so being in my contacts doesn’t let them straight back in. They can still ask for access, and I decide.
keeping it safe
The site runs only over HTTPS. Your browser never talks to the database directly: every read and write goes through the site’s server, and the database refuses anything else. Secret keys live only on the server. Beyond that, I rely on the security of the services above, and no system is perfect.
your choices
- See or fix your information. Your settings page shows your phone or Google email, email, and mailing address, and you can change the last two there. For anything else, email me.
- Delete it. Delete your own comments on the feed, or email me and I’ll delete your guest-list entry, sign-in account, comments, reactions, notes, and anything else the site has about you.
- Stop email. Use the unsubscribe link in any email, or turn the digest off on your settings page.
- Stop push. Turn it off on your settings page or in your browser.
- Leave. Ask me to take you off the guest list at any time.
Write to me at fit-imply-given@duck.com. It’s just me, so give me a few days.
children
The site isn’t meant for children under 13, and I don’t knowingly collect information from them. If you think a child has given the site information, email me and I’ll delete it.
changes
If what the site collects or how it’s used changes, I’ll update this page and the date at the top.
See also the terms of use.