Contact
After explicit consent and submission, your name, email, optional organization, inquiry reason, message, attachment metadata, reference, and submission time are stored in a private Firestore collection. Optional files up to 10 MB are stored as private, randomized objects in Firebase Storage, with no public download link created. Khalid uses them only to review and respond to inquiries and may delete them when no longer needed. Attachments are limited to approved document and image formats. Typed drafts are not stored. If email delivery is configured, the message and attachment name may also be sent to the approved recipient.
Lab models and history
When you explicitly consent and run a Lab experiment, the uploaded image and any prompt are sent to Hugging Face and its selected inference provider. The image, model name, prompt, model output, your optional comment or observation, and timestamp are then saved in a private Cloudflare D1 database associated with a random, HttpOnly browser identifier. They remain until you delete one run or all history.
Decision Games
Decision Games use fictional data and require no upload. Completed achievement names are stored only in local browser storage on this device. Scores, choices, and timing are not sent to the server or analytics.
Local preferences
Theme, language, and analytics consent stay on this device until you clear browser storage.
Analytics
Firebase Analytics loads only after consent and receives broad interaction events. Lab images, prompts, outputs, comments, names, email addresses, message content, contact attachments, typed contact fields, and sensitive personal data are excluded. You can reopen Analytics choices from the footer.