Privacy Policy
DRAFT - pending owner review
Last updated: August 2, 2026
FoodNet is a food app for iOS and a public website (a recipe archive, a read-only feed, and a chatbot), operated by an individual developer, Teddy Lazar. This policy explains, in plain language, what data FoodNet collects, how it is used, and what your choices are.
If anything here is unclear, contact us at [CONTACT EMAIL - TODO].
What we collect
Account data. When you sign up we collect your email address, username, first and last name, and optionally a phone number. Signup currently requires an invite code, and we record which invite you used and how you heard about FoodNet (referral sources). Your password is never stored in plain text: we store only a salted bcrypt hash (bcrypt_sha256). If you sign in with Google or Apple, we receive your email and basic profile information from that provider; we do not receive your Google or Apple password. We verify your email address with a one-time token.
Sign-in tokens. We issue JWT access and refresh tokens to keep you signed in. On the website these are stored in httpOnly cookies.
Pantry and food data. Your inventory (what food you have, quantities, expiry dates, how each item was added: typed text, receipt scan, photo, speech, manual entry, or batch import), your saved and created recipes, meal plans, grocery lists, and cooking history.
Media you upload. Receipt photos, food photos, recipe images, post images, and profile avatars. Receipt and food photos are processed by AI to extract the items on them.
Voice input. If you use voice entry, your audio is sent to OpenAI's Whisper API to be transcribed to text. The text is then processed like typed input.
Chat assistant conversations. Messages you send to the FoodNet assistant, and any images you share in chat, are stored in your chat sessions.
Search history. Recipe searches by signed-in users are logged (the query text, tied to your account) to improve search quality.
Social content. Posts, comments, and reactions you create.
How we use it
- To run the app: matching your pantry items to our food catalog, computing nutrition, recommending recipes, planning meals, and building grocery lists.
- To operate the chat assistant and its tools (recipe search, pantry updates, meal planning) on your behalf.
- To send transactional email only: email verification, password reset, and invites. We do not send marketing email lists to third parties and we do not sell your data.
- First-party analytics only: we look at aggregate usage (for example search volumes and job health) in an internal admin dashboard. There are no third-party analytics trackers and no advertising on the app or website.
AI processing
FoodNet uses external AI providers as processors. Be aware of what this means before you share something sensitive in chat:
- Anthropic (Claude). Your chat messages, plus context the assistant needs (your profile, inventory, and the recipe you have open), are sent to Anthropic's API to generate responses. Anthropic is also used for offline data-quality jobs on catalog data (not your personal content).
- OpenAI. Used for: speech-to-text (Whisper), reading receipts and food label photos (vision models), and text embeddings that power semantic recipe and food search. Recipe and food embeddings are computed from catalog text; chat-related processing can include your content.
Assistant memory. The assistant can propose durable "food memories" about your preferences (for example, a cuisine you cook often). These are only proposals: they are saved as candidates for your review and are not used as context until you confirm them. This feature is off unless you enable memory inference in your AI data settings. The assistant is instructed never to infer sensitive information (health, allergies, religion, identity).
Web search. The assistant can run cooking-related web searches through the Brave Search API. Only the search query text is sent, not your account data.
Chat transcripts are retained. Chat sessions are soft-deleted when you delete them: they stop being visible to you but are not immediately erased from our database.
What is public
Please assume the following is visible to everyone, including logged-out visitors to the FoodNet website:
- Posts are always public. There is no private-post option. Your posts, their images, comments, and reaction counts are visible to the FoodNet community and may appear on the public website feed. [TODO: verify whether the public website feed is live for logged-out visitors on this branch]
- Public profiles and recipe catalogs are opt-in. Your published recipe catalog is only visible at your public profile if you turn on the public-profile setting (is_profile_public). This setting gates your recipe catalog page; it does not hide your posts.
- The recipe archive and public website content are visible to everyone.
Do not post anything you would not want public.
Storage and retention
- Where. Data is stored on AWS infrastructure in the United States: the application database, and media files in Amazon S3 (post images, recipe images, avatars, receipt and food photos). Media is served through short-lived presigned URLs, not public buckets.
- Chat-uploaded media. Images you share with the assistant are tracked in a retention registry with a concrete deletion deadline. The default retention is 30 days; you can set your own retention window (1 to 365 days) in your AI data preferences.
- Chat sessions. Soft-deleted on request (hidden, not immediately erased).
- Deleted inventory items. Trashed pantry items are retained for about 30 days.
- Account deletion. Deleting your account is a soft delete: your account is deactivated and you can no longer log in, but your data is retained in our systems. Contact support if you want recovery, or to request fuller removal of your data. [TODO: define a concrete post-deletion erasure timeline before publishing]
Third-party services
- AWS (S3, SES, hosting). Stores our database and media, and sends our transactional email. US-based infrastructure.
- Anthropic. Processes chat assistant conversations and related context to generate responses.
- OpenAI. Processes voice recordings (transcription), receipt and food photos (vision), and text for search embeddings.
- Brave Search. Receives cooking-related search queries when the assistant searches the web.
- USDA FoodData Central. We look up nutrition data by sending food name text queries only. No personal data is sent.
- OpenFoodFacts. Same: food name or barcode queries only. No personal data is sent.
- Google and Apple. Optional sign-in providers. They tell us your email and basic profile info when you choose to sign in with them.
We do not sell personal data to anyone, and no ad networks or third-party trackers run on FoodNet.
Cookies
The website uses cookies only to keep you signed in: httpOnly authentication cookies holding your access and refresh tokens. There are no tracking cookies, no analytics cookies, and no third-party cookies. [TODO: verify the rate-limit visitor id cookie; it was planned but is not present in the current website code]
Your choices
- Delete your account from the app (soft delete, as described above), or contact support for further data removal.
- Delete chat sessions at any time (soft delete).
- Delete posts and comments you have made.
- Keep your profile private. The public-profile setting is off by default; your recipe catalog is not publicly listed unless you turn it on.
- Control AI data settings. Memory inference is opt-in, proposed memories require your confirmation, and you can set your own media retention window and training-consent preference in AI data settings.
- Unsubscribe from email. Every non-essential email (invites from other users, product updates) includes a one-click unsubscribe link. Transactional email (verification, password reset) is not affected by unsubscribing.
Children
FoodNet is not directed to children under 13, and we do not knowingly collect personal information from them. If you believe a child under 13 has an account, contact us and we will remove it.
Changes
We may update this policy as FoodNet changes. We will update the date at the top and, for significant changes, notify you in the app or by email.
Contact
Questions, data requests, or concerns: [CONTACT EMAIL - TODO]