Privacy and Terms for the Tori Japanese practice app.
Last updated: July 16, 2026
This policy describes how the Tori mobile app (“Tori”, “we”, “us”) handles your data. Tori is built and operated by Lehi Thomas as an individual developer.
You create an account by signing in with Apple or Google. We store:
We never see or store a password — authentication is handled entirely by Apple or Google.
When you use Tori without signing up, the app still creates an anonymous account on our backend so your practice content syncs across app launches. That account is identified only by a random ID; we don’t collect a name or email for it.
While you use the app, we store:
When you record audio for transcription or pronunciation feedback, we process the audio as described in the next section.
Tori has two inference backends:
Cloud (default for new accounts). When selected, the app sends the audio bytes to our Supabase edge function, which forwards them to Google Gemini for transcription and to Google Gemini (and Anthropic Claude as a silent backup when Gemini errors) for chat responses.
Along with your message we send a little context so the tutor can personalize the conversation: your level and mode, your first name (if your Apple/Google account shared one), and up to 8 recently studied words from your bank. We also send up to 5 recent corrections from your past sessions — these are your own past mistakes and how they were corrected, which the tutor uses to reinforce the right form when the moment fits.
Our edge function does not store the audio. Google’s and Anthropic’s upstream data-use policies apply to the bytes once they reach those services — see Google Gemini’s data policy and Anthropic’s privacy policy.
You can switch backends any time from Settings → Inference engine. The on-device backend requires a one-time ~2.9 GB model download.
We rely on these services to operate Tori:
We do not currently use any analytics or advertising SDKs and do not share your practice content with third parties for marketing.
Tori is not intended for children under 13 and we don’t knowingly collect personal data from them. Signup requires you to confirm that you are at least 13 years old. If you believe a child under 13 has created an account, email us and we will delete it.
Your account and content stay in our systems until you delete them.
If you are in the EU or UK, GDPR also gives you a right to lodge a complaint with your local supervisory authority.
We may update this policy from time to time. When the update is material, we will notify you in the app on next launch. The “Last updated” date at the top of this page always reflects the current version.
Lehi Thomas lehithomas25@gmail.com