کیوں آپ کے کیلوری ٹریکر کو آپ کے ای میل کی ضرورت نہیں ہوتی
MyFitnessPal، Cronometer، MacroFactor، Lose It!۔ ان سب کو آپ کی email، password، اور کبھی کبھی آپ کی date of birth اور gender چاہیے، اس سے پہلے کہ آپ ایک chicken breast بھی log کریں۔
ہم نے Onyx Tenet اس شرط کے بغیر بنایا۔ Download کریں، open کریں، log کریں۔ آپ اور آپ کے food diary کے بیچ کوئی server نہیں۔
یہ پہلا architectural decision تھا جو ہم نے لیا، اور اسی نے باقی سب کچھ طے کیا۔
وہ کیوں پوچھتے ہیں
ایک calorie tracker account کیوں مانگتا ہے، اس کی تین وجوہات ہیں۔ اور ان میں سے کوئی بھی یہ نہیں کہ "app چلانے کے لیے ضروری ہے۔"
1. Ad targeting
MyFitnessPal اور Lose It! ad-supported free tiers دیتے ہیں۔ ایک email address آپ کے usage data کو ایک identity سے جوڑ دیتی ہے جسے ad networks target کر سکتے ہیں۔ آپ کا food log ایک behavioral signal بن جاتا ہے: آپ کیا کھاتے ہیں، کب کھاتے ہیں، آپ tracking کتنی consistency سے کرتے ہیں۔ اس signal کی value ہے۔
MyFitnessPal کی اپنی privacy policy "marketing and advertising partners" کے ساتھ user information share کرنے کا ذکر کرتی ہے اور بتاتی ہے کہ tracking cookies کے کچھ uses applicable privacy laws کے تحت "personal information کی sales یا sharing" بن سکتے ہیں۔ یہ اندازہ نہیں۔ یہ ان کا disclosure ہے۔
2. Lock-in
جب آپ کا food log کسی اور کے server پر، ان کے login کے پیچھے رہتا ہے، تو وہاں سے نکلنے کا مطلب اپنا data چھوڑنا ہے۔ سالوں کے meals، weight history، custom foods، recipes۔ account کوئی feature نہیں۔ یہ ایک moat ہے۔
MyFitnessPal اس structure کو واضح کرتا ہے: CSV export Premium کے پیچھے locked ہے، $80/year پر۔ Free users اپنے data کو export نہیں کر سکتے۔ آپ data ڈال سکتے ہیں، مگر پیسے دیے بغیر نکال نہیں سکتے۔
3. Engagement metrics
DAU/MAU ratios، retention cohorts، funnel conversion rates۔ یہ وہ numbers ہیں جو investors اور advertisers کے لیے اہم ہیں، اور ان سب کے لیے identified users چاہیے۔ ایک anonymous user جو روز app کھولتا ہے، ان metrics کے لیے invisible ہے۔ Account اس شخص کو ایک data point میں بدل دیتا ہے۔
MacroFactor تو free tier بھی نہیں دیتا۔ Cronometer کا free tier ads دکھاتا ہے۔ ہر بڑا tracker اپنے business model کو اسی assumption پر چلاتا ہے کہ users accounts بنائیں گے۔ Account business کے کام آتا ہے۔ App اس کے بغیر بھی ٹھیک چلتی۔
جب چیزیں غلط ہوتی ہیں تو کیا ہوتا ہے
اگر data محفوظ رہتا، تو یہ اتنا بڑا مسئلہ نہ ہوتا۔ مگر ایسا نہیں ہوتا۔
فروری 2018 میں، MyFitnessPal نے بتایا کہ ایک unauthorized party نے 150 million user accounts تک access حاصل کر لی تھی: usernames، email addresses، اور hashed passwords۔ اس وقت یہ record پر موجود سب سے بڑے data breaches میں سے ایک تھا۔
مارچ 2026 میں، Cal AI (جس نے MyFitnessPal acquire کیا تھا) کو ایک second breach ہوا۔ Security researchers نے ایک unauthenticated Firebase backend پایا، جو کسی بھی credentials کے بغیر readable تھا۔ Exposed data میں names، emails، dates of birth، gender، height، weight، health goals، macro targets، اور timestamps کے ساتھ meal logs شامل تھے۔ 14.59 GB data میں 3.2 million user records۔ ایک record 2014 میں پیدا ہونے والے بچے کا تھا۔
یہ الگ الگ واقعات نہیں۔ 2021 میں، GetHealth نامی fitness data aggregator نے ایک unprotected database چھوڑ دیا جس سے Fitbit، Strava، اور Google Fit سے نکالے گئے 61 million records expose ہو گئے۔ Data ایک server پر پڑا تھا، بغیر password کے۔
آپ کا food log، weight history، اور email اب breach databases میں ہیں۔ شروع ہی سے کسی اور کے server پر ہونے کی architectural ضرورت نہیں تھی۔
no-account architecture کی شکل کیسی ہوتی ہے
ہم نے اس کے بدلے یہ بنایا۔
Local-first database. آپ کا food log، weight history، اور custom foods آپ کے device پر local database میں رہتے ہیں (iOS پر SwiftData، Android پر Room)۔ Default طور پر کچھ upload نہیں ہوتا۔ Internet connection کی ضرورت نہیں۔ App مکمل offline چلتی ہے۔
Core functionality کے لیے server dependency نہیں۔ Meal log کرنا، barcode scan کرنا، اپنی history دیکھنا، اپنا adaptive TDEE چیک کرنا: ان میں سے کسی کے لیے network connection یا user account کی ضرورت نہیں۔ Server critical path میں نہیں ہے۔
Public API کے ذریعے barcode scanning. Barcode lookups OpenFoodFacts استعمال کرتے ہیں، جو community-maintained open database ہے۔ نہ ان کی طرف account چاہیے، نہ ہماری طرف۔
مکمل data portability. آپ کا data Settings میں کسی بھی screen سے، کسی بھی وقت JSON file کے طور پر export ہو سکتا ہے۔ یہ محدود weekly CSV نہیں، اور نہ Premium-only feature۔ یہ آپ کا data ہے۔ یہ ایک file ہے۔ آپ اس پر control رکھتے ہیں۔
Anonymous analytics. ہم usage analytics کے لیے PostHog استعمال کرتے ہیں، سخت policy کے ساتھ: کوئی PII نہیں، کوئی food log data نہیں، کوئی weight data نہیں۔ Settings میں analytics toggle آپ کو مکمل opt out دیتا ہے۔ Cloud backup enable کرنے والے users کے لیے، ہم analytics continuity کے لیے pseudonymous Firebase UID استعمال کرتے ہیں۔ آپ کی email نہیں۔ آپ کا نام نہیں۔
"مگر اگر میرا phone گم ہو جائے؟"
یہ honest counterargument ہے، اور ہم اسے سنجیدگی سے لیتے ہیں۔ اگر آپ کا data صرف آپ کے device پر ہے، تو device کھونا data کھونا ہے۔
دفاع کی تین لائنیں:
JSON export. اپنا data Files، iCloud Drive، Google Drive، یا جہاں بھی آپ files رکھتے ہیں وہاں export کریں۔ Settings میں ایک tap۔ Export ایک مکمل snapshot ہے: food log، weight history، custom foods، recipes، settings۔
Platform backup. iOS اور Android دونوں، اگر آپ نے disable نہ کیا ہو، تو app data کو خودکار طور پر iCloud اور Google پر back up کرتے ہیں۔ زیادہ تر users کے لیے، ان کا data پہلے ہی backed up ہوتا ہے، بغیر کسی action کے۔
Optional cloud backup. اگر آپ کو explicit cloud backup چاہیے جس میں کسی بھی device پر restore ہو سکے، تو Onyx Tenet یہ دیتا ہے۔ آپ email link سے sign in کرتے ہیں۔ ہم اس email کو ایک کام کے لیے استعمال کرتے ہیں: تاکہ آپ اپنے backups تک پہنچ سکیں۔ Password نہیں۔ Profile نہیں۔ Traditional sense میں account نہیں۔ اگر ہم مستقبل میں full accounts بنائیں بھی، تو وہ opt-in ہوں گے، اور ایسے reasons کے لیے موجود ہوں گے جو آپ کے فائدے میں ہوں، ہمارے نہیں۔
بات یہ نہیں کہ backups ضروری نہیں۔ بات یہ ہے کہ backup ایک conscious choice ہونا چاہیے، نہ کہ لازمی account creation جو data collection mechanism کے طور پر بھی کام کرے۔
منظرنامہ کیسا ہے
| MyFitnessPal | Cronometer | MacroFactor | Lose It! | Onyx Tenet | |
|---|---|---|---|---|---|
| Account required | Yes | Yes | Yes | Yes | No |
| Food log stored | Their servers | Their servers | Their servers | Their servers | Your device |
| Free tier ads | Yes | Yes | No free tier | Yes | No ads. Ever. |
| Ad network sharing | Yes | Yes (free tier) | No | Ad identifiers | No |
| Data export | CSV (Premium only) | CSV (all tiers) | Spreadsheet (subscribers) | CSV (weekly, web only) | JSON (full, anytime) |
| Annual price | $80/yr Premium | Gold (paid) | $72/yr | $40/yr | Free core |
Sources: ہر company کی current privacy policy اور App Store listing۔ تمام claims publicly verifiable ہیں۔
Trade-offs
Local-first کے حقیقی trade-offs ہیں۔ ہم اس کے خلاف pretence نہیں کریں گے۔
By default automatic cross-device sync نہیں۔ آپ کا data اسی device پر رہتا ہے جہاں آپ نے اسے log کیا۔ Cloud backup (opt-in) restore-on-any-device دیتا ہے، مگر multiple devices کے درمیان real-time sync نہیں۔ یہ ایک feature ہو سکتی ہے جو ہم بعد میں add کریں، اور وہ optional اور encrypted ہوگی۔
Local data کے لیے password recovery نہیں۔ اگر آپ app delete کر دیں، export یا backup کیے بغیر، تو data ختم۔ JSON export آپ کی insurance policy ہے۔
آپ اپنے backups کے خود ذمہ دار ہیں۔ ہم tools دیتے ہیں (export، platform backup، cloud backup)، مگر default یہ ہے کہ آپ کا data local رہے۔ مقصد یہی ہے۔
یہ سوچے سمجھے design decisions ہیں، oversight نہیں۔ دوسرا راستہ وہی ہے جو ہر اور tracker کرتا ہے: day one پر account مانگو، data اپنے server پر رکھو، اور اسے feature کہو۔
Onyx Tenet کو آپ کی email کی ضرورت نہیں۔ Download کریں، open کریں، log کریں۔ آپ کا data آپ کے device پر رہتا ہے، جب تک آپ خود کچھ اور نہ چنیں۔
Onyx Tenet free ہے۔ Account required نہیں۔