Nommi is designed to be local-first: your recipes, meal plans, pantry and nutrition records are stored on your device by default, and the app works without an account for those features. This policy explains the limited cases in which information leaves your device, who processes it, and the rights you have. It applies worldwide and is written to align with commonly applicable frameworks such as the EU/UK GDPR, the Swiss FADP, the California Consumer Privacy Act (CCPA/CPRA) and other applicable data-protection laws — whichever gives you the greater protection applies. Nommi 采用本地优先设计:你的食谱、餐食计划、库存与营养记录默认保存在你的设备上,这些功能无需账户即可使用。本政策说明信息在哪些有限情况下会离开你的设备、由谁处理,以及你享有的权利。本政策在全球适用,并参照 EU/UK GDPR、瑞士 FADP、美国加州 CCPA/CPRA 等常见数据保护框架撰写——对你更有利的标准优先适用。
1. Introduction1. 引言
Nommi is a mobile application for recipe management, meal planning, pantry tracking and nutrition ("the App"), published by its independent developer, Chua ("we", "us"). This Privacy Policy describes what information the App and this website process, why, and what choices you have.
We try to collect as little as possible. Many Nommi features run entirely on your device, and no account is required for them. The main cases in which information leaves your device are: (a) optional Smart Import AI processing, (b) optional purchases, and (c) optional iCloud sync handled by Apple under your own Apple account.
Nommi 是一款用于食谱管理、餐食计划、库存跟踪与营养记录的移动应用(下称「本应用」),由独立开发者 Chua(下称「我们」)发布。本隐私政策说明本应用及本网站处理哪些信息、为何处理,以及你可以做出哪些选择。
我们尽可能少收集数据。Nommi 的许多功能完全在你的设备上运行,且无需账户。信息离开你设备的主要情形包括:(a) 可选的 AI 智能导入处理;(b) 可选的应用内购买;(c) 由 Apple 在你自己的 Apple 账户下处理的可选 iCloud 同步。
2. Scope2. 适用范围
This policy covers the Nommi iOS App and the nommi website. It does not cover third-party services' own practices when they act as independent controllers — for example Apple (iCloud, App Store, Apple Health, Sign in with Apple) or your AI providers' handling described in their own policies linked in Section 5.
本政策适用于 Nommi iOS 应用与 Nommi 网站。当第三方服务作为独立控制者行事时(例如 Apple 的 iCloud、App Store、Apple 健康与「通过 Apple 登录」,或第 5 节所链接的 AI 提供商按其自身政策进行的处理),其自身实践不在本政策范围内。
3. Information we collect3. 我们收集的信息
3.1 Stays on your device (not sent to us)
- App content you create: recipes, meal plans, pantry batches, shopping items and nutrition records. These are stored locally on your device.
- Photos you import for on-device OCR: when you use the offline photo-to-recipe import, recognition runs on your device; the photo is not uploaded to us.
3.2 Sent to us or our processors (only when you use the related feature)
- Smart Import content: photos or webpage content you explicitly select for AI processing (Section 5).
- Account identifier: if you sign in with Apple, we receive a private, pseudonymous Apple identifier (no name or email is required; a private relay email may be provided by Apple if you choose).
- Purchase records: transaction identifiers and credit balance data associated with your purchases (Section 7).
- Cloud drafts: drafts produced by Smart Import, stored temporarily in the cloud (Section 5).
We do not collect advertising identifiers, precise location, contacts, or browsing history, and the App contains no third-party advertising or analytics SDKs.
3.1 仅保存在你的设备上(不会发送给我们)
- 你创建的应用内容:食谱、餐食计划、库存批次、采购项与营养记录,均保存在你设备的本地存储中。
- 用于本机 OCR 的照片:使用离线拍照导入食谱时,识别在你的设备上完成;照片不会上传给我们。
3.2 发送给我们或我们的处理者(仅在你使用相应功能时)
- 智能导入内容:你明确选择进行 AI 处理的照片或网页内容(见第 5 节)。
- 账户标识符:使用「通过 Apple 登录」时,我们只会收到一个私密、假名化的 Apple 标识符(不需要姓名或邮箱;如你选择,Apple 可提供私密转发邮箱)。
- 购买记录:与你的购买相关联的交易标识符与积分余额数据(见第 7 节)。
- 云端草稿:智能导入生成的草稿,会临时存储在云端(见第 5 节)。
我们不收集广告标识符、精确位置、通讯录或浏览历史;应用内不包含任何第三方广告或统计 SDK。
4. How information is stored4. 信息的存储
By default, all app content is stored locally on your device. If you enable iCloud sync, that sync is performed by Apple under your Apple ID and Apple's privacy terms; we do not receive a copy of your synced content. If you use Smart Import with an Apple account, your remaining import credits and recent cloud drafts are tied to that account so they can follow you across devices.
默认情况下,所有应用内容均保存在你的设备本地。启用 iCloud 同步后,同步由 Apple 在你的 Apple ID 与 Apple 隐私条款下完成;我们不会获得你所同步内容的副本。若你在登录 Apple 账户后使用智能导入,剩余导入积分与最近的云端草稿会与该账户关联,以便跨设备使用。
5. Smart Import (AI processing)5. AI 智能导入
Smart Import converts a photo (for example a recipe card or a grocery receipt) or the content of a public webpage into an editable draft. To do this:
- Only the content you explicitly select (bounded images up to 3 MB and the webpage text) is sent from the App to our cloud backend hosted on Supabase, which forwards it to our AI model providers DeepSeek and Alibaba Cloud for processing.
- Smart Import requires your explicit consent before first use. You can withdraw consent at any time in Smart Import settings; withdrawing consent blocks future imports.
- We do not retain your original photos. Generated drafts are stored in the cloud only temporarily and become unavailable 24 hours after creation; automated cleanup removes the payloads.
- The AI uses this content only to create your draft. Nothing is saved into your recipes or inventory until you confirm it in the App.
- Local OCR and manual import never consume cloud credits and never send content to the cloud.
DeepSeek and Alibaba Cloud act as independent processors with their own privacy policies, which additionally apply: DeepSeek Privacy Policy · Alibaba Cloud Privacy Policy.
智能导入可将照片(例如食谱卡片或采购小票)或公开网页的内容转换为可编辑草稿。为此:
- 只有你明确选择的内容(不超过 3 MB 的图片与网页文本)会从应用发送至托管在 Supabase 上的云端后端,再由其转发给 AI 模型提供商 DeepSeek 与阿里云(Alibaba Cloud)进行处理。
- 智能导入在首次使用前需要你的明确同意。你可以随时在智能导入设置中撤回同意;撤回后将阻止后续导入。
- 我们不会保留你的原始照片。生成的草稿仅临时存储于云端,并在创建 24 小时后失效;自动清理任务会删除相关数据。
- AI 仅将这些内容用于生成你的草稿;在你于应用中确认之前,任何内容都不会写入你的食谱或库存。
- 本地 OCR 与手动导入不消耗云端积分,也不会向云端发送内容。
DeepSeek 与阿里云作为独立处理者运营,其各自隐私政策同样适用:DeepSeek 隐私政策 · 阿里云隐私政策。
6. Apple Health6. Apple 健康
At your option, Nommi can read from (and, where supported, write to) Apple Health to track metrics such as hydration or activity. This requires a separate, explicit permission you grant in the system prompt. Health data is processed on your device to display insights and never leaves your device through us. You can review and revoke permissions at any time in the Health app under your profile → Privacy → Apps and Services → Nommi.
你可以选择让 Nommi 读取(并在支持时写入)Apple 健康数据,以跟踪饮水、活动等指标。这需要你在系统弹窗中单独授予明确权限。健康数据仅在你的设备上处理并用于展示洞察,不会经由我们离开你的设备。你可以随时在「健康」App 的个人头像 → 隐私 → App 与服务 → Nommi 中查看并撤销相关权限。
7. Purchases and financial records7. 购买与财务记录
Smart Import capacity is sold as a one-time consumable pack (30 imports) through Apple In-App Purchase. Payments are charged by Apple; we never see your payment card details.
- Purchases are validated through RevenueCat, which processes transaction identifiers and store receipts to confirm entitlements and to reconcile purchases, refunds and chargebacks.
- We keep financial records of purchases (store, transaction ID, granted credits, refunds) associated with your pseudonymous account identifier, as required for accounting, tax, fraud prevention and dispute resolution. If you delete your account, these records are disassociated from you (Section 14).
- Purchased credits do not expire. Refunds are handled under Apple's refund policy; a refund may subtract the originally granted credits.
- Guest trial: without an account you may receive a small one-time trial grant. To prevent repeated re-claiming of free trials (trial abuse), we retain a pseudonymous marker — a keyed hash (HMAC) that cannot be reversed to identify you — after account deletion or reinstall. This marker contains no name, email or device content.
智能导入额度以一次性消耗型礼包(30 次导入)的形式通过 Apple 应用内购销售。款项由 Apple 收取;我们不会接触你的支付卡信息。
- 购买通过 RevenueCat 校验;其处理交易标识符与商店收据,用于确认权益以及对账、退款与拒付处理。
- 我们会保存与你的假名化账户标识符相关联的购买财务记录(商店、交易 ID、发放积分、退款),以满足会计、税务、防欺诈与争议处理要求。删除账户后,这些记录将与你的身份解除关联(见第 14 节)。
- 所购积分不会过期。退款按 Apple 退款政策处理;退款可能相应扣减最初发放的积分。
- 游客试用:未登录账户时你可能获得少量一次性试用额度。为防止反复重新领取免费试用(试用滥用),在删除账户或重装应用后,我们会保留一个假名化标记——即无法逆向识别你身份的带密钥散列值(HMAC)。该标记不含姓名、邮箱或设备内容。
8. Purposes and legal bases8. 用途与法律基础
We process personal data only for these purposes:
- Providing the App and its features (performance of a contract): local functionality, generating Smart Import drafts you request, syncing credits across your devices when you sign in.
- AI processing of selected content (consent, withdrawable at any time).
- Purchases, accounting and fraud prevention (contract and legitimate interests, and compliance with legal obligations).
- Security, abuse prevention and service integrity (legitimate interests): rate limits, trial-abuse prevention.
- Account deletion requests (contract and legal obligations).
We do not sell or share personal data for cross-context behavioral advertising, and we do not use personal data for profiling that produces legal or similarly significant effects.
我们仅出于以下目的处理个人数据:
- 提供本应用及其功能(履行合同所必需):本地功能、生成你请求的智能导入草稿、登录后跨设备同步积分。
- 对所选内容的 AI 处理(基于同意,可随时撤回)。
- 购买、会计与防欺诈(履行合同、正当利益,以及履行法律义务)。
- 安全、滥用防范与服务完整性(正当利益):频率限制、试用滥用防范。
- 处理账户删除请求(履行合同与法律义务)。
我们不会出售个人数据,也不会为跨场景行为广告而共享个人数据;不会将个人数据用于可能产生法律或类似重大影响的人物画像。
9. Sharing and processors9. 共享与处理者
We share information only with the following categories of processors, each bound by data-protection agreements:
- Supabase — cloud backend hosting (authentication, database and edge functions for Smart Import and account services).
- DeepSeek and Alibaba Cloud — AI model providers that process Smart Import content to produce drafts (see Section 5).
- RevenueCat — purchase validation and subscription/purchase infrastructure.
- Apple — In-App Purchase, Sign in with Apple, iCloud sync and Apple Health operate under your Apple account and Apple's own privacy policy.
We may also disclose information where required by law, and we will challenge overbroad or unlawful requests where possible.
我们仅与以下类别的处理者共享信息,且均受数据处理协议约束:
- Supabase——云后端托管(认证、数据库,以及支撑智能导入与账户服务的边缘函数)。
- DeepSeek、阿里云——AI 模型提供商,处理智能导入内容以生成草稿(见第 5 节)。
- RevenueCat——购买校验与购买基础设施。
- Apple——应用内购、通过 Apple 登录、iCloud 同步与 Apple 健康均在你自己的 Apple 账户与 Apple 隐私政策下运行。
在法律要求时,我们也可能依法披露信息;对于过度宽泛或非法的请求,我们将在可行范围内提出异议。
10. International data transfers10. 国际数据传输
Nommi is distributed worldwide. When you use features that involve our cloud backend, your information may be processed in the United States, in the Chinese mainland (where our AI providers DeepSeek and Alibaba Cloud process Smart Import content) and in other countries and regions where our processors operate — places that may not provide the same level of protection as your own. Where required, we rely on appropriate safeguards such as the EU Standard Contractual Clauses (and the UK Addendum / Swiss annexes where applicable). By using these features you understand this transfer takes place; you can avoid it entirely by not using Smart Import or purchases.
Nommi 面向全球分发。当你使用涉及我们云后端的功能时,你的信息可能在美国、中国大陆(AI 提供商 DeepSeek 与阿里云在此处理智能导入内容)以及我们处理者所在的其他国家/地区被处理——这些地方的保护水平可能与你所在地不同。在需要时,我们依赖适当的保障措施,例如欧盟标准合同条款(以及适用的英国附录/瑞士附件)。使用这些功能即表示你理解会发生上述传输;你也可以完全不使用智能导入与购买功能来避免此类传输。
11. Data retention11. 数据保留
- Local content: kept on your device until you delete it or uninstall the App.
- Cloud drafts: automatically deleted (made unavailable) 24 hours after creation.
- Original photos for Smart Import: not retained.
- Account data and credit balances: kept while your account exists; deleted with your account (see Section 14).
- Financial records: kept for the period required by accounting and tax law, in disassociated form after account deletion.
- Pseudonymous trial marker: retained after deletion for trial-abuse prevention (Section 7).
- 本地内容:保存在你的设备上,直至你删除或卸载本应用。
- 云端草稿:创建 24 小时后自动删除(失效)。
- 智能导入的原始照片:不予保留。
- 账户数据与积分余额:账户存续期间保留;随账户删除而删除(见第 14 节)。
- 财务记录:按会计与税务法律要求的期限保留;账户删除后以解除关联的形式保存。
- 假名化试用标记:删除后为防止试用滥用而保留(见第 7 节)。
12. Your rights12. 你的权利
Depending on where you live, you have some or all of the following rights over the personal data we process:
- Access and obtain a copy of your data;
- Rectification of inaccurate data;
- Erasure (deletion) of your data;
- Restriction of or objection to processing;
- Data portability;
- Withdrawal of consent at any time (for example, Smart Import consent);
- Non-discrimination for exercising your rights (including CCPA/CPRA rights to know, delete, and correct);
- The right to lodge a complaint with your local supervisory authority.
Because most of your data stays on your device, deleting content in the App or uninstalling it exercises many of these rights directly. For cloud data, use in-app account deletion (Section 14) or contact us at dev.chua@gmail.com. We respond within the timelines required by applicable law (typically 30 days for GDPR requests and 45 days for CCPA requests).
根据你所在地区,你对我们处理的个人数据享有以下部分或全部权利:
- 访问并获取你的数据副本;
- 更正不准确的数据;
- 删除(抹除)你的数据;
- 限制处理或反对处理;
- 数据可携带;
- 随时撤回同意(例如智能导入的同意);
- 因行使权利而不受歧视(包括 CCPA/CPRA 下的知情、删除与更正权);
- 向当地监管机构投诉的权利。
由于你的大部分数据保存在你自己的设备上,在应用内删除内容或卸载应用即可直接行使其中许多权利。对于云端数据,请使用应用内账户删除(见第 14 节),或发送邮件至 dev.chua@gmail.com。我们将在适用法律要求的期限内答复(GDPR 请求通常为 30 天,CCPA 请求通常为 45 天)。
13. Children's privacy13. 儿童隐私
Nommi is not directed to children under 13 (or the equivalent minimum age in your jurisdiction, such as 16 in parts of the EEA). We do not knowingly collect personal data from children. If you believe a child has provided us with personal data, contact us and we will delete it.
Nommi 不面向 13 岁以下(或你所在司法辖区同等最低年龄,例如欧洲经济区部分地区的 16 岁)的儿童。我们不会在知情情况下收集儿童的个人数据。如你认为某位儿童向我们提供了个人数据,请与我们联系,我们将予以删除。
14. Account deletion14. 账户删除
You can delete your cloud account inside the App at any time (Settings → account actions). Deletion:
- verifies your identity by re-authentication with Apple;
- revokes the Apple sign-in token;
- deletes your Supabase authentication record and all cloud drafts;
- requests deletion of your RevenueCat customer record; and
- disassociates financial records from your identity.
Two exceptions apply: financial records retained in disassociated form where required by law, and the pseudonymous trial-abuse marker described in Section 7. Data stored locally on your device is not affected by account deletion — uninstall the App to remove it.
你可以随时在应用内删除云端账户(设置 → 账户操作)。删除流程将:
- 通过 Apple 重新认证以核验你的身份;
- 撤销 Apple 登录令牌;
- 删除你在 Supabase 的认证记录与全部云端草稿;
- 请求删除你的 RevenueCat 客户记录;
- 将财务记录与你的身份解除关联。
存在两个例外:法律要求以解除关联形式保留的财务记录,以及第 7 节所述的假名化试用滥用标记。账户删除不影响保存在你设备本地的数据——卸载应用即可将其移除。
15. Security15. 安全
Data in transit is encrypted (TLS). Our cloud backend enforces authentication on all user endpoints and database-level access controls; server-side functions are the only components able to write balances. We accept only bounded uploads for Smart Import and rate-limit usage to deter abuse. No system is perfectly secure; if a breach affecting your data occurs, we will notify you and regulators as required by law.
传输中的数据经过加密(TLS)。我们的云后端对所有用户端点强制认证,并实施数据库级访问控制;只有服务端函数可以写入积分余额。智能导入仅接受有限大小的上传,并通过频率限制防止滥用。任何系统都无法做到绝对安全;若发生影响你数据的安全事件,我们将依法向你及监管机构发出通知。
16. About this website16. 关于本网站
This website is fully static. It sets no tracking or advertising cookies and loads no third-party analytics. The only data it stores is a single language preference in your browser's local storage so the site remembers whether you prefer English or Chinese. You can clear it anytime via your browser settings.
本网站为纯静态站点:不设置任何跟踪或广告 Cookie,也不加载第三方统计。唯一存储的数据是浏览器 localStorage 中的一项语言偏好,用于记住你选择中文还是英文。你可以随时通过浏览器设置清除该数据。
17. Changes to this policy17. 政策变更
We may update this policy as the App evolves. If a change materially affects your rights, we will announce it in the App or on this website before it takes effect, and update the effective date above. Material changes to Smart Import processing also require a new in-app consent.
随着本应用的演进,我们可能更新本政策。如变更实质性影响你的权利,我们会在生效前通过应用或本网站公告,并更新上方的生效日期。对智能导入处理的实质性变更还需在应用内重新取得你的同意。
18. Contact us18. 联系我们
Chua — independent developer and operator of record
Privacy questions, requests and general support: dev.chua@gmail.com
We aim to reply to all privacy requests within 30 days.
Chua(独立开发者,运营主体)
隐私问题、请求与一般支持:dev.chua@gmail.com
我们的目标是在 30 天内回复所有隐私请求。