Privacy
What this site collects, why, who handles it for me, and how you can see or delete it. Last updated 20 October 2026.
The short version
- You can read everything here without an account, and nothing tracks you: there are no analytics, ads or tracking cookies.
- I only keep what you choose to send: a message on the Contact page, or a comment, rating or feedback in ./stdout. Channels you make and posts you save there are private to you.
- Your email address is never shown publicly or shared, and is never used for newsletters or marketing.
- Signed-in readers can download or delete their data any time from their page.
What is collected, and why
Contact page
The name, email, optional phone number, topic and message you send. They are stored so I can read and answer your message, and emailed to me as an alert. I keep them only as long as I need them to reply.
./stdout accounts
If you sign in with GitHub, I receive your GitHub name, username, profile picture and the email GitHub shares. If you sign in with an email link, I keep your email address and the name you choose. Your name and picture are shown next to what you write; GitHub accounts show a verified tick and link to your GitHub profile. Your email is never shown.
Your own channels and saved posts
Signed-in readers can make their own channels and save posts into them. These are private: only you see them, through your account. They are not shown to other readers, and I only see them as entries in the admin (so I can remove one if needed). They are included when you download your data, and deleted with your account.
Comments, ratings, likes, stars, reports and feedback
What you write and do in ./stdout is stored with the post it belongs to and shown as described on the page. Anonymous comments carry no name. Feedback on selected text and reports are private: only I see them.
Abuse prevention
To stop spam, the site counts how often an address sends things. For people who are not signed in it stores a one-way keyed hash of the IP address, never the address itself. Text is checked automatically for abuse before it appears; anything doubtful waits for me to approve it.
Cookies and local storage
reader_session: keeps you signed in to ./stdout for up to 30 days. Set only when you sign in; secure and not readable by scripts.- Admin cookies: only for me, in the admin.
- Your browser's local storage remembers small display choices on this device (light or dark theme, panel widths, chat or form). They never leave your browser.
Who handles it for me
- Vercel hosts the site.
- Supabase stores the database and uploaded files, and runs GitHub sign-in (it keeps a record of the GitHub sign-in).
- Resend sends the emails: alerts to me, and sign-in links to you.
- GitHub serves profile pictures of GitHub readers, and handles GitHub sign-in.
- Embedded videos and audio (YouTube in its privacy-enhanced mode, Vimeo, Spotify, SoundCloud) load from those services only on posts that include them; their own policies apply.
I do not sell or share your data with anyone else.
Security
Everything travels over HTTPS. Sign-in uses GitHub or one-time email links (no passwords to leak); links work once, for 15 minutes, and only a hash of each is stored. Sessions are signed and can be ended on all devices from your account menu. The database is not reachable from the internet without the site's server keys.
Your choices
- See or download your data: your page → Download my data.
- Edit or delete a comment: the Edit and Delete buttons under it (signed-in comments).
- Rename, empty or delete your own channels: open the channel from the side column or your page.
- Sign out on every device: your picture at the bottom right → Sign out on all devices.
- Delete your account: your page → Delete my account. You choose whether your comments are deleted or kept as Anonymous.
- Anything else, including removing an anonymous comment or a contact message: email contact@sheetaldharshan.me.