1 poin oleh zszs2020 2 hari lalu | 2 komentar | Bagikan ke WhatsApp

Halo. Saya ingin memperkenalkan ONLY24, aplikasi kencan yang saya buat sendiri selama 6 bulan sejak Januari tahun ini.

Aplikasi seperti apa ini

  • Hanya satu orang yang akan dicocokkan per hari. Tidak ada swipe.
  • Sejak momen cocok, kalian hanya bisa mengobrol selama 24 jam. Setelah waktunya habis, percakapan akan dihapus sepenuhnya dari server juga.
  • Profil menggunakan avatar alih-alih foto asli. Kalau cocok, bisa lanjut jadi teman dan bahkan melakukan panggilan video di dalam aplikasi.

Kenapa dibuat seperti ini

Saat membuka aplikasi kencan yang ada, ratusan orang bermunculan sekaligus, dan saya merasa semakin banyak di-swipe, semakin tidak ada yang benar-benar dianggap serius. Karena selalu ada orang berikutnya tepat setelahnya. Saya berpikir, jika pilihan tak terbatas, tidak ada satu pun yang terasa berharga, jadi saya memilih arah yang benar-benar sebaliknya: satu orang hari ini, 24 jam.

Masalah-masalah yang seru saat membuatnya

  • Chat terenkripsi E2E: kunci ditukar dengan X25519 ECDH dan dienkripsi dengan AES-256-GCM. Di Firestore hanya tersisa ciphertext, jadi bahkan saya sebagai operator pun tidak bisa membaca percakapannya. Namun desain ini berbenturan langsung dengan fitur AI, karena AI tidak bisa melakukan dekripsi. Akhirnya, percakapan antarmanusia tetap memakai E2E, sementara hanya chat dengan bot AI yang dijadikan pengecualian dalam plaintext.
  • Cold start aplikasi kencan: kalau tidak ada pengguna, tidak ada matching; kalau tidak ada matching, pengguna pergi. Karena itu, pada pencocokan foto preferensi (Gemini embedding 768 dimensi + cosine similarity), jika dalam 10 menit tidak ada lawan yang tersedia, saya menambahkan fallback agar bot AI yang dicocokkan sebagai pengganti. Chat bot merespons dengan GPT berdasarkan konteks foto.
  • Pencocokan lokasi: berbasis geohash, dan matching hanya terjadi jika radius saya dan radius lawan sama-sama terpenuhi. Awalnya saya mengimplementasikannya dengan "mengadopsi radius yang lebih luas", tetapi itu menimbulkan bug yang membuat pengguna dengan pengaturan 5 km bisa dicocokkan dengan orang berjarak 50 km, lalu saya perbaiki menjadi kondisi radius AND.
  • Stack: Flutter + Firebase(Firestore, Cloud Functions/TypeScript) + Supabase sebagai pendukung, panggilan video WebRTC, verifikasi identitas PASS (usia 19 tahun ke atas, pencegahan pendaftaran ganda).

Kondisi saat ini secara jujur

Aplikasi ini diunggah ke store pada akhir April, dan penggunanya hampir tidak ada. Di aplikasi kencan, pengguna itu sendiri adalah produknya, jadi saya sedang belajar langsung bahwa cold start adalah bagian tersulit. Dengan fallback bot, saya berhasil mencegah pengalaman pertama berupa "ruangan kosong", tetapi pekerjaan rumah saya sekarang adalah dari mana mulai mengumpulkan manusia sungguhan. Saya penasaran dengan pengalaman orang-orang yang pernah memecahkan masalah serupa.

Pengembang
Setelah selesai membuatnya, sekarang saya sangat haus akan masukan dari orang-orang yang benar-benar menggunakannya. Jika kalian memberi berbagai pendapat, saya akan segera mencerminkannya dan memperbaikinya agar lebih nyaman digunakan. Mohon banyak dukungannya.

2 komentar

 
toida 1 hari lalu

Konsepnya mirip blind date saat tengah hari, tapi untuk hal seperti ini sepertinya faktor yang lebih penting daripada kualitas aplikasinya tetaplah seberapa banyak penggunanya. Seperti KakaoTalk, meski jelek banget tetap terpaksa dipakai.

 
zszs2020 1 hari lalu

Halo! Terima kasih banyak atas jawabannya.
Benar. Kualitasnya sudah cukup meningkat, tetapi mengumpulkan pengguna ternyata tidak mudah..