Privacy.
Effective September 5, 2026
What this site handles
You can browse the portfolio without creating an account. If you use the private message form, the site stores the name you provide, your message, the submission time, and a random visitor identifier used for duplicate and rate-limit checks. The form does not ask for your email address.
Cookies and abuse prevention
The message form sets an HTTP-only, secure visitor cookie for up to 90 days. The application uses it to recognize repeat submissions without placing your message in the cookie. A one-way value derived from request network information is used for short-lived abuse limits; the application does not store a raw IP address in its message database.
Cloudflare Turnstile checks that a submission is made by a person. Cloudflare receives the technical information required to perform that check under its own privacy terms. Hosting and network providers may also process standard request metadata needed to operate and secure the site.
Private messages
Private messages are visible only in Tianpei's protected Owner Workspace. They are not published, added to the site Agent's knowledge, or used to train an AI system. Messages are scheduled for permanent deletion 90 days after submission and may be deleted earlier by the Owner.
Google account and Gmail access
Google sign-in protects the Owner Workspace and is not offered to visitors. A separate Google OAuth client requests only the gmail.send permission for Tianpei's own Gmail account. It sends a fixed alert from Tianpei to Tianpei when a private message is waiting. The alert contains no visitor name or message text.
The site does not read Gmail messages, contacts, or Google Drive files. The OAuth refresh token is encrypted in Google Secret Manager, is not sold or shared with third parties, and is retained only while this notification feature is connected. Google processes the sending request to deliver the alert; visitor-authored message content is not included in that request.
You can revoke access at any time from your Google Account connections. Use of information received from Google APIs follows the Google API Services User Data Policy, including its Limited Use requirements.
Choices and contact
You can avoid the interactive data processing described above by not using the message form. To ask about this policy or request early deletion of a message you can identify, email teslaluo@gmail.com.