एक दिन में एक व्यक्ति, 24 घंटे बाद बातचीत गायब हो जाने वाला dating app मैंने अकेले बनाया
(only24-portfolio.web.app)नमस्ते। इस साल जनवरी से 6 महीनों तक अकेले बनाए गए dating app ONLY24 का परिचय दे रहा हूँ।
यह कैसा app है
- दिन में सिर्फ एक ही व्यक्ति से matching होती है। कोई swipe नहीं है।
- match होने के क्षण से केवल 24 घंटों तक बातचीत की जा सकती है। समय बीतने के बाद conversation server से भी पूरी तरह delete हो जाती है।
- profile में वास्तविक photos की जगह avatar होता है। अगर विचार मिलें तो दोस्त के रूप में जुड़े रह सकते हैं और app के भीतर ही video call तक कर सकते हैं।
इसे ऐसा क्यों बनाया
मौजूदा blind-date apps खोलने पर सैकड़ों लोग सामने आ जाते हैं, लेकिन मुझे लगा कि जितना ज्यादा swipe करते जाते हैं, कोई भी उतना serious नहीं रहता। क्योंकि अगला व्यक्ति हमेशा बस एक card दूर होता है। मुझे लगा कि अगर विकल्प अनंत हों तो कोई भी खास नहीं रह जाता, इसलिए मैंने इसका बिल्कुल उल्टा रास्ता चुना। आज सिर्फ एक व्यक्ति, 24 घंटे।
बनाते समय दिलचस्प समस्याएँ
- E2E encrypted chat: X25519 ECDH से key exchange करता है और AES-256-GCM से encrypt करता है। Firestore में सिर्फ ciphertext बचता है, इसलिए operator होने के बावजूद मैं भी conversations नहीं पढ़ सकता। लेकिन यह design AI features से सीधे टकराता है। क्योंकि AI decrypt नहीं कर सकता। आखिर में इंसानों के बीच conversation में E2E बनाए रखा और सिर्फ AI bot के साथ chat को plaintext exception के रूप में रखा।
- dating app cold start: अगर users न हों तो matching नहीं होती, और matching न हो तो users छोड़कर चले जाते हैं। इसलिए preference photo matching (Gemini embedding 768 dimensions + cosine similarity) में 10 मिनट तक कोई दूसरा व्यक्ति न मिले तो AI bot को उसकी जगह match करने वाला fallback जोड़ा। bot chat में GPT photo context देखकर response देता है।
- location matching: यह geohash-based है, लेकिन matching तभी होती है जब मेरी radius और दूसरे व्यक्ति की radius दोनों satisfy हों। शुरुआत में इसे “larger radius चुनना” के रूप में implement किया था, जिससे 5km set करने वाले user को 50km दूर वाला match होने का bug बन गया; इसे radius AND condition से ठीक किया।
- stack: Flutter + Firebase(Firestore, Cloud Functions/TypeScript) + सहायक रूप से Supabase, WebRTC video call, PASS identity verification (उम्र 19 साल या उससे अधिक, duplicate sign-up रोकना)।
ईमानदारी से मौजूदा स्थिति
अप्रैल के अंत में store पर upload किया था और users लगभग नहीं हैं। dating app में users ही product होते हैं, इसलिए cold start सबसे कठिन है—यह बात अभी खुद अनुभव करके सीख रहा हूँ। bot fallback से “खाली कमरे” जैसा पहला अनुभव तो रोका है, लेकिन असली लोगों को कहाँ से इकट्ठा करना शुरू करूँ, यही अभी की चुनौती है। जिन लोगों ने ऐसी समस्या हल की हो, उनके अनुभव जानना चाहूँगा।
Developer
बनाने के बाद अब इसे इस्तेमाल करने वाले लोगों के feedback की बहुत जरूरत है। आप अलग-अलग सुझाव देंगे तो उन्हें तुरंत शामिल करके इसे इस्तेमाल में आसान बनाने के लिए सुधारूँगा। कृपया खूब संपर्क करें।
- App Store: https://apps.apple.com/kr/app/id6759185657
- Google Play: https://play.google.com/store/apps/details?id=com.kamataewoo.only24
- technical architecture summary: https://only24-portfolio.web.app
2 टिप्पणियां
कॉन्सेप्ट तो दोपहर की blind date जैसा है, लेकिन ऐसे मामले में ऐप की quality से ज़्यादा यह ज़रूरी लगता है कि users कितने हैं। जैसे KakaoTalk भी कितना ही घटिया हो, फिर भी मजबूरी में इस्तेमाल करना पड़ता है।
नमस्ते! जवाब के लिए बहुत-बहुत धन्यवाद।
सही है। quality तो कुछ हद तक बेहतर हो गई है, लेकिन users जुटाना आसान नहीं है..