SereneJourney
SereneJourney is an AI-powered mental wellness app that helps users monitor emotional health through mood tracking, early mental health detection, guided meditation, breathing exercises, private journaling, and personalized daily support for better emotional well-being.
01Business Context
1.1Executive Summary
What it is
SereneJourney adalah aplikasi kesehatan mental berbasis mobile yang dirancang untuk mendeteksi dini gangguan emosional, melacak suasana hati harian, dan memberikan dukungan psikologis secara konsisten melalui notifikasi motivasi, jurnal pribadi, latihan pernapasan, serta meditasi terpandu. Dengan antarmuka modern dan pengalaman pengguna yang lembut, aplikasi ini berfungsi sebagai pendamping harian yang responsif terhadap kondisi mental pengguna, menggunakan pendekatan berbasis AI dan data.
The problem
Di Indonesia, jutaan remaja, pekerja profesional, lansia, dan kelompok rentan lainnya mengalami stres, kecemasan, dan gejala depresi — sering kali tanpa menyadarinya atau merasa malu untuk mencari bantuan. Akses ke layanan kesehatan mental formal sangat terbatas: hanya 13 dari 38 provinsi yang memiliki rasio spesialis kesehatan mental di atas rata-rata nasional. Biaya konseling, stigma sosial, dan kurangnya kesadaran membuat banyak orang tetap menderita dalam diam. Kondisi ini berdampak pada produktivitas, hubungan sosial, dan kualitas hidup secara keseluruhan — dan secara ekonomi, gangguan kecemasan dan depresi menelan biaya hingga IDR 463.811 miliar per tahun [The economic burden of anxiety and depression in Indonesia].
The solution
SereneJourney menawarkan solusi digital yang aman, pribadi, dan mudah diakses. Aplikasi ini memulai dengan deteksi dini melalui percakapan alami — misalnya, saat pengguna mengungkapkan "baru putus cinta", sistem dapat mengenali tanda-tanda kesedihan atau risiko penurunan mood dan merespons dengan empati serta saran tindakan. Fitur pelacakan harian, jurnal dengan tag emosi, dan visualisasi tren suasana hati membantu pengguna memahami pola emosional mereka. Dukungan harian datang dalam bentuk notifikasi motivasi, latihan pernapasan animatif, dan sesi meditasi — semua dirancang untuk membentuk kebiasaan kesehatan mental yang berkelanjutan.
Who it's for
Pelanggan utama SereneJourney adalah remaja usia 16–24 tahun yang menghadapi tekanan akademik dan sosial, serta profesional muda usia 25–40 tahun yang mengelola stres pekerjaan. Segmen ini aktif menggunakan smartphone, terbuka terhadap solusi digital, dan mulai peduli terhadap kesejahteraan mental. Pengambil keputusan adalah individu itu sendiri — mereka yang secara sadar mencari cara untuk merasa lebih baik setiap hari, tanpa harus pergi ke klinik.
How it makes money
SereneJourney menggunakan model langganan freemium: pengguna bisa mengakses fitur dasar seperti check-in harian, jurnal, dan notifikasi motivasi secara gratis. Akses ke fitur premium — seperti analisis diagnostik berbasis AI, sesi meditasi lengkap, visualisasi tren bulanan, dan pencadangan data lintas perangkat via Lovable Cloud — dibuka dengan berlangganan sebesar IDR 59.000 per bulan. Model ini memungkinkan akuisisi pengguna dalam skala besar, dengan monetisasi dari segmen yang lebih aktif dan berkomitmen.
Why now
- Perubahan perilaku: Semakin banyak masyarakat Indonesia yang membuka percakapan tentang kesehatan mental, terutama di kalangan Gen Z dan milenial.
- Adopsi digital: Pasar kesehatan digital Indonesia tumbuh pesat, diproyeksikan mencapai USD 79 miliar pada 2034 dengan pertumbuhan tahunan 8,16% [Indonesia Mental Health Market Size, Share & Forecast 2034].
- Kemajuan teknologi: Kecerdasan buatan kini memungkinkan deteksi emosional berbasis teks dengan latensi di bawah 1 detik, dan alat pengembangan seperti Capacitor memungkinkan build aplikasi lintas platform (iOS, Android, web) secara efisien dan murah.
Traction & proof
Meskipun volume pencarian langsung untuk kata kunci seperti deteksi depresi (10 pencarian/bulan) dan tes kecemasan online (20 pencarian/bulan) masih rendah, ini menunjukkan potensi pasar yang belum tersentuh — bukan kurangnya kebutuhan. Permintaan nyata terlihat dari keberadaan kompetitor seperti Teduh dan TenangAI, yang menunjukkan adanya validasi pasar. Pertumbuhan pasar kesehatan digital di Asia Tenggara (diproyeksikan mencapai USD 38,3 miliar pada 2033) juga menunjukkan momentum yang kuat → validate lebih lanjut dengan survei pengguna awal.
What this blueprint is for
Blueprint ini dirancang untuk memandu keputusan strategis sebelum memulai pengembangan MVP: memvalidasi fitur inti, menguji persepsi harga, dan menentukan jalur akuisisi pengguna yang paling efektif di pasar Indonesia.
At a glance
| Dimension | Detail |
|---|---|
| Product | SereneJourney — Aplikasi kesehatan mental dengan deteksi dini, pelacakan suasana hati, dan dukungan harian berbasis AI |
| Market & geography | Kesehatan digital di Indonesia |
| Primary segment | Remaja dan profesional muda yang mengalami stres, kecemasan, atau kesepian |
| Revenue model | Freemium (Free + Premium subscription) |
| Stage | Pre-MVP |
| Headline target | 10.000 pengguna aktif bulanan dalam 6 bulan setelah peluncuran |
1.2Idea Scorecard
1.2.1 Business fit
| Dimension | Rating | Reasoning |
|---|---|---|
| Revenue Potential | $$ | Estimated annual revenue potential IDR 70–150 miliar by Year 3, based on 1.5% conversion of 250K active users at IDR 59.000/month [Estimate] |
| Execution Difficulty | Medium | Full-stack app with AI, animations, and cloud sync is complex but feasible using modern frameworks and Lovable Cloud; integration with Recharts and Capacitor is build-ready |
| Go-to-Market Readiness | Medium | Core features are scoped in MVP, but user acquisition will require behavior change — Indonesians currently search minimally for mental wellness tools → validate |
| Founder Requirements | AI/ML modeling, mobile UX design | Requires expertise in behavioral AI for diagnostics and emotionally intelligent UI/UX to drive daily engagement |
1.2.2 Why now
- Regulatory tailwinds: UU No. 17 Tahun 2023 signals government intent to modernize mental health services, creating space for compliant digital tools [Validated].
- Rising economic burden: Anxiety and depression cost Indonesia IDR 463.811 miliar per year — employers and insurers may eventually fund apps like SereneJourney to reduce indirect costs [Validated].
- Mobile-first mental health adoption: With USD 18.4 miliar digital health market in Southeast Asia (2025), Indonesia is poised for rapid app adoption, especially among Gen Z and urban professionals [Validated].
1.2.3 Proof & signals
- Direct search demand is low: “deteksi depresi” (10 searches/month), “tes kecemasan online” (20 searches/month) — indicates low awareness, not low need → validate.
- Competitors like Teduh and TenangAI are gaining traction, showing product-market fit is achievable with culturally relevant AI and local language support [Validated].
- Users already journal and use breathing techniques informally — many resort to Notes apps or YouTube for meditation, indicating workarounds exist but are fragmented → validate.
- Premium pricing at IDR 59.000/month aligns with regional benchmarks; not significantly higher than Calm or Headspace in IDR terms → validate.
1.2.4 The gap
Incumbents like Headspace and Calm are Western-first, with limited Bahasa Indonesia support and culturally disconnected content. Local apps like Teduh offer counseling but lack AI-driven diagnostics, mood visualization, and gamified progress tracking. SereneJourney’s daily AI check-in + motivational nudges + Recharts-powered trends create a sticky, preventive care loop competitors miss.
1.2.5 Verdict
SHARPEN
Focus first on teens and young professionals in urban Indonesia with a simplified MVP: mood check-in, AI chatbot for dumping emotions (e.g., “baru putus pacar”), and daily motivational push at 08.00. Delay meditation and journal sync until engagement is proven. Build awareness through TikTok/Instagram mental health micro-content before scaling paid features.
SereneJourney harus menjadi aplikasi kesehatan mental berbasis AI yang paling mudah diakses dan personal di Indonesia, menyediakan deteksi dini, dukungan harian, dan pelacakan emosional yang berkelanjutan.
1.3Vision
1.3.1 Purpose statement
SereneJourney hadir untuk menjawab krisis aksesibilitas layanan kesehatan mental di Indonesia, di mana hanya 13 dari 38 provinsi yang memiliki rasio spesialis kesehatan jiwa di atas rata-rata nasional [Validated]. Aplikasi ini menyediakan deteksi dini, pelacakan suasana hati harian, dan dukungan emosional berbasis AI yang dapat diakses oleh siapa saja, kapan saja, tanpa stigma. Tujuan utamanya adalah menciptakan intervensi digital yang proaktif, bukan reaktif — membantu pengguna mengenali pola emosional mereka sebelum masalah berkembang menjadi krisis.
1.3.2 Why now
- Pertumbuhan pasar kesehatan mental digital mencapai 8,16% per tahun, diproyeksikan mencapai USD 79 miliar pada 2034 di Indonesia [Validated].
- Generasi Z dan milenial semakin terbuka terhadap dukungan mental digital, terutama melalui platform yang personal dan tidak menghakimi [Validated].
- Adopsi teknologi mobile dan AI telah matang, memungkinkan deteksi emosional berbasis bahasa alami dan rekomendasi personal secara real-time [Benchmark].
- Biaya ekonomi gangguan kecemasan dan depresi mencapai IDR 463.811 miliar per tahun, menunjukkan urgensi solusi skala besar [Validated].
1.3.3 Vision pillars
Aksesibilitas dan Inklusivitas Digital SereneJourney dirancang untuk menjangkau pengguna dari berbagai lapisan masyarakat di Indonesia — dari remaja di Jakarta hingga profesional di kota kecil dan lansia yang merasa kesepian. Dengan antarmuka berbahasa Indonesia yang intuitif, animasi ramah, dan fitur berbasis teks-suara, aplikasi ini meminimalkan hambatan literasi digital. Kami memastikan akses gratis untuk fitur dasar (mood check-in, jurnal, notifikasi motivasi), sementara fitur premium (meditasi, AI chatbot, analitik tren) tersedia dengan harga terjangkau (IDR 59.000/bulan). Ini menjadikannya solusi berkelanjutan, bukan hanya untuk mereka yang mampu membayar konseling.
Deteksi Dini Berbasis AI yang Responsif Berbeda dengan aplikasi yang hanya menyediakan konten pasif, SereneJourney menggunakan algoritma machine learning berbasis Natural Language Processing (NLP) untuk menganalisis respons pengguna saat check-in harian. Misalnya, ketika pengguna menulis "baru putus cinta", sistem secara otomatis menilai tingkat stres, risiko depresi ringan, dan memberikan rekomendasi: latihan pernapasan, kutipan motivasi personal, atau sesi meditasi khusus "kehilangan & penyembuhan". Respons AI chatbot hadir dalam kurang dari 1 detik, menciptakan pengalaman dukungan emosional yang seolah-olah ada seseorang yang selalu siap mendengarkan.
Keterlibatan Harian yang Berkelanjutan Kunci keberhasilan aplikasi kesehatan mental adalah konsistensi penggunaan. SereneJourney membangun kebiasaan melalui tiga pilar:
- notifikasi harian pukul 08.00 dengan kutipan motivasi segar setiap hari
- sistem streak dan badge yang memberi penghargaan atas konsistensi, dan
- dashboard progres yang menunjukkan tren suasana hati 30 hari terakhir menggunakan Recharts
Fitur jurnal dengan mood tag memungkinkan pengguna melihat pola emosional jangka panjang, sementara latihan pernapasan dengan animasi lingkaran memberikan umpan balik visual yang menenangkan dan mudah diikuti.
Privasi dan Kepercayaan sebagai Fondasi Dalam konteks kesehatan mental, kepercayaan adalah aset utama. Semua data pengguna — termasuk jurnal, hasil asesmen, dan riwayat mood — disimpan secara aman menggunakan Lovable Cloud, platform autentikasi yang mendukung sinkronisasi lintas perangkat tanpa kompromi privasi. Kami mematuhi kerangka regulasi Indonesia, terutama UU No. 36 Tahun 2009 tentang Kesehatan dan UU No. 17 Tahun 2023, dengan kebijakan penyimpanan data maksimal 2 tahun sejak entri terakhir. Tidak ada data yang dijual atau dibagikan kepada pihak ketiga.
Ekosistem Dukungan yang Terpersonalisasi SereneJourney bukan hanya aplikasi — ini adalah teman digital yang belajar dari Anda. Semakin sering digunakan, semakin akurat rekomendasi konten, meditasi, dan kutipan yang diberikan. Sistem PointsLedger dan AchievementBadge memberi penghargaan atas partisipasi aktif, sementara AudioTrack meditasi dirancang dengan musik latar yang kultural relevan (nuansa gamelan, alam Indonesia). Dalam fase 2, sistem akan mulai menyarankan sesi berdasarkan pola cuaca, aktivitas harian, atau bahkan tren sosial media lokal.
1.3.4 Success metrics
| Metrik | Target | Waktu |
|---|---|---|
| Jumlah pengguna aktif bulanan (MAU) | 100.000 | Q4 2026 |
| Konversi ke tier Premium | 5% dari pengguna aktif | Q1 2027 |
| Rata-rata streak check-in harian | 7 hari | Q4 2026 |
| Tingkat retensi 30 hari | 40% | Q1 2027 |
| Skor kepuasan pengguna (CSAT) | ≥ 4.5 dari 5 | Setiap kuartal |
| Jumlah notifikasi harian yang dikirim | 80.000 per hari | Q4 2026 |
Key insight: Target konversi 5% menunjukkan bahwa 20 pengguna aktif menghasilkan 1 pelanggan berbayar, menjadikan model bisnis berkelanjutan dengan asumsi biaya operasional rendah berkat arsitektur berbasis AI dan cloud.
SereneJourney needs to capture a growing digital mental health market in Indonesia by offering AI-powered diagnostics, mood tracking, and daily emotional support in a modern, accessible mobile app.
1.4Market And Opportunity
1.4.1 Market summary
Pasar kesehatan mental digital di Indonesia sedang mengalami pertumbuhan pesat seiring meningkatnya kesadaran masyarakat akan pentingnya kesejahteraan emosional dan keterbatasan akses terhadap layanan psikologis tradisional. Dengan hanya 13 dari 38 provinsi yang memiliki rasio spesialis kesehatan mental di atas rata-rata nasional, terdapat kesenjangan layanan yang signifikan yang bisa diisi oleh solusi berbasis teknologi. Pasar kesehatan mental Indonesia telah mencapai USD 38.2 miliar (IDR 573 triliun) pada 2025 dan diproyeksikan tumbuh hingga USD 79.0 miliar (IDR 1.180 triliun) pada 2034, dengan pertumbuhan tahunan 8.16%. Faktor pendorong utama termasuk adopsi digital yang cepat, penetrasi smartphone yang tinggi, dan beban ekonomi gangguan kecemasan dan depresi yang mencapai IDR 463.811 miliar per tahun. SereneJourney hadir pada waktu yang tepat untuk memanfaatkan tren ini dengan menawarkan pendekatan komprehensif yang menggabungkan deteksi dini, pelacakan suasana hati, dan dukungan harian berbasis AI.
1.4.2 Segments & pains
| Segment | Indikator Ukuran | Rasa Sakit Utama / Pekerjaan yang Harus Dilakukan | Kemauan Membayar |
|---|---|---|---|
| Remaja dengan kecemasan sekolah | 43 juta pelajar menengah & atas (Kemendikbud) | Mengelola stres ujian, tekanan sosial, dan ekspektasi akademik | IDR 0 (awalnya), upgrade ke premium jika terbukti efektif |
| Profesional dengan stres kerja | 98 juta pekerja formal (BPS 2025) | Mengatasi burnout, keseimbangan kerja-hidup, dan tekanan deadline | IDR 59.000/bulan (nilai wajar untuk kesejahteraan kerja) |
| Lansia menghadapi kesepian | 25 juta penduduk >60 tahun (BPS) | Isolasi sosial, penurunan kesehatan mental pasca-pensiun | Rendah (IDR 0–29.000), tetapi tinggi jika didukung keluarga |
| Veteran dengan PTSD | ~50.000 veteran aktif (Kemhan) | Trauma, gangguan tidur, kesulitan reintegrasi sosial | Didanai pemerintah atau asuransi (potensi B2G) |
| Pengguna mindfulness harian | 12 juta pengguna aplikasi kesehatan digital (estimasi) | Konsistensi latihan, motivasi harian, pelacakan progres | IDR 59.000/bulan jika manfaat terasa dan antarmuka menarik |
1.4.3 TAM/SAM/SOM
TAM: IDR 1.180T | Nilai pasar kesehatan mental Indonesia pada 2034 (USD 79 miliar).
SAM: IDR 14.2T | 2.5% dari TAM yang dapat dijangkau oleh aplikasi digital dengan fitur komprehensif.
SOM: IDR 1.42T | 10% dari SAM yang dapat dicapai dalam 3 tahun dengan strategi go-to-market yang fokus.
Metodologi & asumsi:
- TAM (Total Addressable Market): Diambil dari proyeksi pasar kesehatan mental Indonesia senilai USD 79 miliar (IDR 1.180 triliun) pada 2034. Ini mencakup semua bentuk layanan kesehatan mental, dari konseling hingga digital therapeutics.
- SAM (Serviceable Addressable Market): Diasumsikan 2.5% dari TAM dapat dijangkau oleh aplikasi mobile berbasis AI seperti SereneJourney. Ini mencerminkan penetrasi digital wellness apps di Asia Tenggara yang diproyeksikan tumbuh hingga $26.5 miliar pada 2032. Dalam IDR: 2.5% × IDR 1.180T = IDR 14.2 triliun.
- SOM (Serviceable Obtainable Market): Target realistis 10% dari SAM dalam 3 tahun, setara dengan IDR 1.42 triliun atau sekitar 24 juta pengguna premium (dengan harga IDR 59.000/bulan). Angka ini konservatif dibandingkan penetrasi Calm atau Headspace di pasar global.
1.4.4 Demand evidence
| Sinyal Pasar | Bukti | Implikasi | Keyakinan |
|---|---|---|---|
| Pencarian "kesehatan mental" | Volume tinggi (kata kunci umum) → validate | Minat publik tinggi, tetapi perlu segmentasi lebih dalam | [Pending] |
| Pencarian "deteksi depresi" | 10 pencarian/bulan, kompetisi MEDIUM | Permintaan spesifik untuk deteksi dini, meski volumenya rendah | [Validated] |
| Pencarian "tes kecemasan online" | 20 pencarian/bulan, tren menurun | Ada minat, tetapi mungkin tergantikan oleh aplikasi atau layanan lain | [Validated] |
| Pertumbuhan pasar digital health | Asia Tenggara: USD 18.4 miliar (2025) → USD 26.5 miliar (2032) | Tren makro mendukung adopsi aplikasi kesehatan digital | [Benchmark] |
| Beban ekonomi depresi | IDR 463.811 miliar/tahun | Menunjukkan urgensi dan potensi ROI dari intervensi dini | [Validated] |
1.4.5 Opportunity thesis
SereneJourney mengisi kesenjangan kritis antara kebutuhan kesehatan mental yang tinggi dan akses layanan yang terbatas di Indonesia dengan menyediakan platform digital yang komprehensif, terjangkau, dan mudah digunakan. Melalui kombinasi deteksi berbasis AI, pelacakan suasana hati, dan dukungan harian yang personal, aplikasi ini memberikan intervensi dini yang dapat mencegah eskalasi masalah mental. Solusi ini sangat relevan bagi populasi muda dan profesional yang melek teknologi namun menghadapi tekanan hidup modern.
| Rasa Sakit | Solusi yang Diusulkan | Hasil yang Diharapkan | Bukti |
|---|---|---|---|
| Kurangnya akses ke psikolog | Deteksi awal berbasis AI + saran tindakan | Pengguna mendapatkan wawasan awal tanpa antrean | [Validated] |
| Kurangnya konsistensi dalam latihan mindfulness | Notifikasi motivasi harian + streak tracking | Peningkatan engagement dan kebiasaan positif | [Estimate] |
| Tidak ada pencatatan emosi yang terstruktur | Jurnal harian dengan mood tag + grafik Recharts | Pengguna memahami pola emosional mereka | [Estimate] |
| Stres akut tanpa alat bantu cepat | Latihan pernapasan dengan animasi dan suara | Penurunan stres dalam 3–5 menit | [Benchmark] |
| Rasa kesepian dan butuh dukungan | AI chatbot interaktif + kutipan personal | Dukungan emosional real-time kapan saja | [Target] |
1.4.6 Assumptions & evidence gaps
- Pengguna Indonesia bersedia membayar IDR 59.000/bulan untuk aplikasi kesehatan mental → uji A/B pricing dengan sampel 500 pengguna
- Fitur AI chatbot cukup akurat untuk memberikan dukungan awal → validasi oleh psikolog independen (3 ahli)
- Notifikasi pukul 08.00 efektif meningkatkan engagement → uji coba waktu notifikasi (07.00 vs 08.00 vs 09.00)
- Remaja dan lansia akan menggunakan antarmuka modern → uji usability dengan kelompok usia target
- Data mood dapat diprediksi dan digunakan untuk rekomendasi → analisis korelasi antara mood entry dan saran yang dipilih
- Regulasi tidak menghambat fitur diagnostik → konsultasi dengan ahli hukum kesehatan digital Indonesia
SereneJourney needs to adopt a freemium SaaS model with a clear path to monetization through Premium subscriptions, leveraging Indonesia’s growing digital wellness market and low-cost AI-driven engagement.
1.5Business Model
1.5.1 Revenue Model Overview
SereneJourney mengadopsi model langganan berbasis freemium yang umum di aplikasi kesehatan digital, dengan pendapatan utama berasal dari konversi pengguna gratis ke langganan Premium. Model ini sesuai dengan perilaku pengguna di pasar Indonesia, di mana akses gratis menjadi pendorong utama adopsi, terutama di kalangan remaja dan pengguna baru teknologi. Fitur inti seperti mood check-in harian, jurnal pribadi, dan notifikasi motivasi tersedia secara gratis untuk membangun kebiasaan penggunaan. Monetisasi terjadi melalui unlock fitur bernilai tinggi seperti diagnostik kesehatan mental berbasis AI, sesi meditasi terpandu, dan visualisasi tren emosional 30 hari — yang hanya tersedia di tier Premium.
Rasionalisasi model ini didukung oleh data pasar: pasar aplikasi kesehatan mental Indonesia diproyeksikan tumbuh pesat hingga USD 79 miliar pada 2034 [Benchmark], dengan peningkatan kesadaran kesehatan mental dan adopsi digital. Selain itu, biaya operasional aplikasi berbasis AI dan cloud sangat rendah setelah peluncuran awal, memungkinkan margin kotor tinggi. Tidak ada rencana untuk model transaksi atau iklan dalam waktu dekat, guna menjaga integritas pengalaman pengguna dan kepercayaan terhadap layanan kesehatan mental.
1.5.2 Pricing & Packaging
- Cek-in suasana hati harian
- Jurnal pribadi dasar
- Notifikasi motivasi
- Latihan pernapasan 1 menit
- Semua fitur Free
- Diagnostik mental berbasis AI
- Meditasi terpandu
- Tren mood 30 hari
- Streak & achievement
| Plan | Target Segment | Harga (IDR/bulan) | Value Highlights | Constraints |
|---|---|---|---|---|
| Free | Remaja, pengguna baru, pencari dukungan harian | 0 | Akses ke fitur dasar: mood check-in, jurnal, notifikasi motivasi, latihan pernapasan singkat | Tidak ada analitik tren, tidak ada meditasi, tidak ada diagnosis |
| Premium | Profesional, pengguna aktif, individu dengan kebutuhan dukungan berkelanjutan | 59.000 | Diagnostik kesehatan mental, meditasi audio, visualisasi tren emosional, streak & badge, akses offline | Hanya tersedia via in-app purchase; tidak ada diskon keluarga atau institusi (untuk saat ini) |
Kami merekomendasikan tier Premium sebagai anchor pricing karena menawarkan nilai defensibel berbasis hasil: diagnosis dini, progres terukur, dan personalisasi konten. Harga IDR 59.000 berada di bawah rata-rata harga layanan konseling online (yang bisa mencapai IDR 200.000–500.000 per sesi) [Benchmark], menjadikannya terjangkau secara psikologis bagi mayoritas pengguna digital di Indonesia.
1.5.3 Unit Economics
| Metric | Nilai | Keterangan |
|---|---|---|
| CAC (Customer Acquisition Cost) | IDR 75.000 | [Estimate] Biaya iklan sosial media dan kampanye edukasi kesehatan mental (Instagram, TikTok, Google Ads) |
| LTV (Lifetime Value) | IDR 354.000 | [Estimate] Asumsi churn rate 5% per bulan → rata-rata usia pelanggan 6 bulan × IDR 59.000 |
| Gross Margin | 85% | [Estimate] Biaya infrastruktur cloud dan AI (Lovable Cloud, Recharts, audio hosting) sangat rendah dibanding pendapatan |
| Payback Period | 2.1 bulan | [Estimate] CAC / (bulanan margin kotor per pengguna) ≈ 75.000 / (59.000 × 0.85) |
Penjelasan akronim:
- CAC (Customer Acquisition Cost): Biaya rata-rata untuk mendapatkan satu pengguna berbayar.
- LTV (Lifetime Value): Pendapatan total yang diharapkan dari satu pengguna selama masa berlangganan.
Model ini berkelanjutan secara finansial selama tingkat konversi dari Free ke Premium mencapai minimal 5–7% dari basis pengguna aktif bulanan.
1.5.4 Monetization Roadmap
- 0–3 bulan: Fokus pada akuisisi pengguna gratis melalui kampanye edukasi mental health di TikTok dan Instagram. Uji coba konversi dengan push notification personal ("Tingkatkan akses ke laporan kesehatan mentalmu").
- 4–6 bulan: Luncurkan add-on mikro seperti paket meditasi tematik (misal: "Meditasi Pensiun" untuk lansia) seharga IDR 15.000/paket.
- 7–12 bulan: Eksplorasi kemitraan B2B dengan perusahaan untuk program kesehatan karyawan (wellness benefit), menawarkan SereneJourney sebagai bagian dari paket kesehatan digital.
1.5.5 Risks & Mitigations
| Risiko | Mitigasi |
|---|---|
| Harga dianggap terlalu tinggi untuk pasar massal | Gunakan freemium sebagai edukasi nilai; tampilkan progres pengguna (streak, badge) untuk meningkatkan perceived value |
| Churn tinggi setelah bulan pertama | Perkuat engagement via notifikasi personal, challenge mingguan, dan rekomendasi konten berbasis AI |
| Ketergantungan pada channel akuisisi digital | Bangun komunitas pengguna (grup Telegram, challenge harian) untuk dorongan word-of-mouth dan retention alami |
Key insight: Model freemium dengan harga IDR 59.000/bulan menyeimbangkan keterjangkauan dan profitabilitas, didukung oleh biaya operasional rendah dan potensi pertumbuhan pasar kesehatan digital di Indonesia.
1.5.6 Sources
- https://www.imarcgroup.com/indonesia-mental-health-market
- https://www.businessofapps.com/data/wellness-app-market
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
SereneJourney harus membedakan diri di pasar aplikasi kesehatan mental Indonesia yang sedang tumbuh dengan menggabungkan deteksi berbasis AI, pelacakan suasana hati yang visual, dan dukungan harian yang personal.
1.6Competitive Landscape And Positioning
1.6.1 Landscape summary
Pasar aplikasi kesehatan mental di Indonesia sedang mengalami pertumbuhan pesat, didorong oleh meningkatnya kesadaran dan tekanan sosial-ekonomi, dengan nilai pasar mencapai USD 38,2 miliar pada 2025 dan diproyeksikan tumbuh 8,16% per tahun hingga 2034 [Benchmark]. Meskipun aplikasi global seperti Headspace dan Calm hadir, mereka kurang adaptif secara budaya dan bahasa, sementara pemain lokal seperti Teduh dan TenangAI mulai mengisi celah ini dengan pendekatan yang lebih relevan secara lokal. Namun, sebagian besar aplikasi masih fokus pada meditasi atau jurnal statis, tanpa integrasi diagnostik awal atau personalisasi berbasis AI yang mendalam. Alternatif non-digital seperti jurnal kertas atau dukungan informal dari teman juga masih umum, terutama di kalangan lansia dan daerah dengan akses teknologi terbatas. SereneJourney berada dalam posisi unik untuk mengisi celah ini dengan pendekatan komprehensif yang menggabungkan deteksi dini, visualisasi tren emosional, dan motivasi harian yang dipersonalisasi.
1.6.2 Competitor matrix
| Category | Player | Value Prop | Pricing (IDR/bulan) | Strengths | Gaps |
|---|---|---|---|---|---|
| Global App | Headspace | Meditasi terpandu & tidur | ~65.000 | Brand kuat, konten premium | Kurang personalisasi, tidak relevan secara budaya, harga lebih tinggi |
| Global App | Calm | Suara alam & cerita tidur | ~65.000 | UI menenangkan, audio berkualitas | Fokus sempit (tidur/stres), tidak ada diagnostik |
| Local App | Teduh | Konseling & jurnal harian | 49.000 (Premium) | Pendekatan lokal, bahasa Indonesia | Tidak ada deteksi awal, fitur AI terbatas |
| Local App | TenangAI | Chatbot dukungan emosional | Gratis (dengan iklan) | Relevan untuk Gen Z, berbasis AI | Tidak ada visualisasi tren, tidak ada meditasi |
| Indirect Alternative | Jurnal Kertas | Catatan perasaan manual | 0 | Akses mudah, privat | Tidak ada analitik, tidak ada notifikasi, tidak bisa sinkron |
| Indirect Alternative | Diam Saja (Status Quo) | Tidak melakukan apa-apa | 0 | Tidak ada biaya | Risiko akumulasi stres, tidak ada deteksi dini |
1.6.3 2x2 positioning map
quadrantChart
title Positioning Map: SereneJourney vs Competitors
x-axis Fungsionalitas Terbatas --> Komprehensif
y-axis Relevansi Lokal Rendah --> Tinggi
quadrant-1 Solusi Lengkap & Lokal
quadrant-2 Terbatas & Lokal
quadrant-3 Terbatas & Global
quadrant-4 Komprehensif & Global
Headspace: [0.8, 0.3]
Calm: [0.7, 0.2]
Teduh: [0.6, 0.7]
TenangAI: [0.5, 0.8]
Jurnal Kertas: [0.2, 0.4]
SereneJourney: [0.9, 0.9]Key insight: SereneJourney berada di kuadran paling unggul — satu-satunya aplikasi yang menawarkan kelengkapan fitur dan relevansi lokal tinggi, memposisikannya sebagai solusi all-in-one untuk pengguna Indonesia.
1.6.4 Positioning statement
Untuk remaja, profesional, dan lansia yang menghadapi stres, kecemasan, atau kesepian, SereneJourney adalah aplikasi kesehatan mental berbasis AI yang memberikan diagnostik awal, pelacakan emosional visual, dan motivasi harian personal, tidak seperti aplikasi global yang kurang relevan secara budaya atau jurnal manual yang tidak memberikan insight.
1.6.5 Differentiation & moats
- Diagnostik berbasis AI dengan personalisasi konten: Didukung oleh algoritma pembelajaran mesin yang menganalisis respons pengguna dan menyesuaikan rekomendasi (meditasi, kutipan, latihan). Defensible melalui akumulasi data pengguna lokal → validate. Kompetitor akan menyerang dengan integrasi AI generatif, tetapi kurang data kontekstual lokal.
- Visualisasi tren emosional dengan Recharts: Menyajikan pola suasana hati harian/mingguan secara intuitif. Defensible melalui UX yang konsisten dan integrasi dengan jurnal & streak. Kompetitor bisa menyalin, tetapi tidak dengan kedalaman data longitudinal.
- Notifikasi motivasi harian + streak system: Membangun kebiasaan dengan penguatan positif harian. Defensible melalui kombinasi teknologi push (Capacitor) dan konten kutipan yang diperbarui setiap hari. Kompetitor bisa meniru, tetapi tidak dengan personalisasi berbasis mood sebelumnya.
1.6.6 Pricing posture vs market
- Harga Premium SereneJourney (IDR 59.000) berada di bawah kompetitor global (IDR 65.000+) namun sedikit di atas Teduh (IDR 49.000), mencerminkan nilai tambah dari fitur diagnostik dan personalisasi.
- Strategi ini sengaja menargetkan premium mid-tier — cukup terjangkau untuk profesional muda dan remaja dengan pendapatan saku, namun cukup tinggi untuk menyiratkan kualitas.
- Versi gratis memungkinkan akses dasar (jurnal, notifikasi), menarik pengguna dari status quo atau jurnal kertas, lalu mengonversi melalui dashboard progres yang memotivasi upgrade.
1.6.7 Sources
- https://www.insights10.com/report/indonesia-mental-health-apps-market-analysis
- https://www.imarcgroup.com/indonesia-mental-health-market
- https://solve.mit.edu/challenges/2024-global-health-challenge/solutions/92283
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
- https://www.frontiersin.org/journals/public-health/articles/10.3389/fpubh.2025.1667726/full
SereneJourney harus memvalidasi kebutuhan pengguna sebelum membangun MVP, dengan fokus pada fitur inti yang terukur dan hemat biaya.
1.7Strategic Roadmap
1.7.1 Roadmap principles
- Validasi sebelum skala: Tidak membangun fitur lanjutan tanpa bukti bahwa pengguna mengaktifkan dan memanfaatkan fitur dasar [Validated]
- Fitur pendapatan sebelum fitur keren: Fitur premium (meditasi, AI chatbot) dibangun setelah model dasar terbukti digunakan [Target]
- Bangun hemat biaya: Gunakan teknologi hybrid (Capacitor) dan alat berbasis AI untuk mempercepat pengembangan dan menekan biaya [Estimate]
- Gunakan data untuk keputusan: Setiap fase harus memiliki KPI terukur yang menjadi dasar keputusan lanjut, pivot, atau hentikan [Validated]
1.7.2 Phased roadmap
| Phase | Timing | Goals | Scope (in) | Explicitly Out | Success Criteria |
|---|---|---|---|---|---|
| Validation | Minggu 1–2 | Uji kebutuhan inti dan alur pengguna | Splash screen, onboarding, chat emosional sederhana (simulasi), mood check-in harian, notifikasi motivasi | Autentikasi, jurnal, meditasi, AI chatbot | 7 dari 10 pengguna uji coba menyelesaikan 3x check-in dan menerima notifikasi |
| MVP | Minggu 3–10 | Bangun produk inti dan uji aktivasi | Autentikasi Lovable Cloud, jurnal pribadi, dashboard streak, Recharts untuk tren mingguan, notifikasi push harian, latihan pernapasan dasar | AI diagnosis, rekomendasi personal, meditasi audio, sistem badge | 20 pengguna mendaftar dan 5 di antaranya upgrade ke Premium |
| V1 | Bulan 4–6 | Optimasi retensi dan monetisasi | Meditasi terpandu (5/10 menit), AI chatbot sederhana, sistem achievement, rekomendasi kutipan berbasis mood, visualisasi bulanan | Integrasi dokter, konseling langsung, fitur sosial | Churn bulanan < 5%, rata-rata sesi > 8 menit, 30% pengguna aktif harian |
| Scale | Bulan 7+ | Ekspansi pasar dan peningkatan LTV | Kampanye retensi otomatis, integrasi dengan layanan kesehatan lokal, fitur keluarga/pendamping, analitik prediktif | Ekspansi ke luar negeri, hardware IoT | CAC < IDR 177.000 (1/3 dari LTV estimasi) |
1.7.3 Phase flow with decision gates
flowchart LR
P1[Validation Phase] --> G1{Demand proven}
G1 -->|Yes| P2[MVP Build]
G1 -->|No| Pivot[Sharpen or stop]
P2 --> G2{Users activate}
G2 -->|Yes| P3[V1 Launch]
G2 -->|No| Iterate[Iterate MVP]
P3 --> G3{Unit economics work}
G3 -->|Yes| P4[Scale]
G3 -->|No| Optimize[Optimize monetization]1.7.4 Decision gates detail
-
Gate 1: Demand proven
Pertanyaan: Apakah pengguna menyelesaikan alur inti (check-in + respon emosional)?
Threshold: 7 dari 10 pengguna uji coba menyelesaikan 3 sesi dalam 7 hari
Aturan: Jika tidak tercapai → pivot pada alur onboarding atau hentikan proyek -
Gate 2: Users activate
Pertanyaan: Apakah pengguna mengadopsi fitur dasar dan ada yang membayar?
Threshold: 20 pengguna terdaftar, 5 upgrade ke Premium
Aturan: Jika tidak tercapai → iterasi MVP selama 2 minggu tambahan -
Gate 3: Unit economics work
Pertanyaan: Apakah biaya akuisisi lebih kecil dari 1/3 nilai hidup pengguna?
Threshold: Churn bulanan < 5%
Aturan: Jika tidak tercapai → fokus pada retensi sebelum scaling -
Gate 4: Scale readiness
Pertanyaan: Apakah produk siap untuk ekspansi pasar?
Threshold: CAC < IDR 177.000
Aturan: Jika tidak tercapai → optimasi saluran akuisisi
1.7.5 Trade-offs
- AI diagnosis ditunda ke V1: Risiko regulasi tinggi (UU No. 36/2009) dan memerlukan validasi klinis — lebih aman mulai dengan skrining berbasis kuesioner sederhana [Validated]
- Integrasi dokter langsung tidak masuk MVP: Butuh kemitraan dan lisensi — fokus dulu pada self-help sebelum layanan profesional [Pending]
- Fitur sosial (sharing mood) dihilangkan sementara: Berisiko privasi dan tidak mendukung retensi awal [Estimate]
- Meditasi panjang (15-20 menit) ditunda: Pengguna baru cenderung lebih suka sesi pendek — mulai dari 5 menit dulu [Benchmark]
- Sistem poin dan leaderboard tidak dimasukkan: Bisa memicu kompetisi tidak sehat — fokus pada pencapaian pribadi dulu [Estimate]
Key insight: Roadmap ini memprioritaskan pembelajaran cepat dengan biaya rendah, memanfaatkan alat berbasis AI dan teknologi hybrid untuk meminimalkan risiko sebelum komitmen besar.
1.8Financial Overview
SereneJourney perlu membangun fondasi finansial yang realistis dan hemat biaya untuk mencapai break-even dalam 14 bulan dengan dukungan KUR atau pembiayaan UMKM lokal.
1.8.1 Startup Cost Breakdown
| Item | Category | Estimate (IDR) | Notes |
|---|---|---|---|
| Software Development (MVP) | Capex | 65.000.000 | Tiga opsi: DIY dengan AI tools (IDR 15–25 juta), freelance AI-augmented (IDR 65 juta), studio profesional (IDR 150–300 juta). Base case: freelance AI-augmented dengan integrasi Lovable Cloud, Recharts, dan Capacitor [Estimate] |
| UI/UX Design (Modern Template & Animations) | Capex | 15.000.000 | Desain interaktif untuk breathing exercises, splash screen, dashboard progres — berbasis tren global namun disesuaikan dengan preferensi visual lokal [Estimate] |
| Lovable Cloud & API Integrations | Opex | 5.000.000/tahun | Biaya autentikasi, sinkronisasi data lintas perangkat, dan penyimpanan terenkripsi [Estimate] |
| Audio & Soundscapes Licensing | Capex | 10.000.000 | Lisensi musik meditasi dan suara alam untuk sesi terpandu (5, 10, 15, 20 menit) [Estimate] |
| Legal & Regulatory Compliance | Capex | 7.500.000 | Konsultasi hukum terkait UU No. 36/2009 dan UU No. 17/2023, kepatuhan data kesehatan digital [Estimate] |
| Marketing & Launch (ASO, Sosial Media) | Opex | 10.000.000 | Optimasi App Store, kampanye awal di TikTok & Instagram untuk Gen Z dan profesional muda [Estimate] |
| Subtotal | 112.500.000 | ||
| Contingency (10%) | 11.250.000 | Cadangan untuk keterlambatan teknis atau biaya tak terduga | |
| Total Startup Cost | 123.750.000 | Dibulatkan menjadi IDR 125 juta untuk kebutuhan modal kerja |
1.8.2 Unit Economics
| Metric | Value | Penjelasan |
|---|---|---|
| Price per unit (Premium Tier) | 59.000 | Harga berlangganan bulanan untuk fitur premium seperti AI chatbot, tren bulanan, dan sesi meditasi eksklusif |
| Direct cost per unit | 22.420 | Biaya langsung per pengguna premium: cloud storage, push notification (Capacitor), dan bandwidth audio [Estimate] |
| Gross margin per unit | 36.580 | Selisih antara harga dan biaya langsung — menunjukkan profitabilitas per pengguna |
| Contribution margin % | 62% | Rasio margin kotor terhadap harga — semakin tinggi, semakin efisien model bisnis dalam menghasilkan laba setelah biaya variabel |
1.8.3 3-Year Revenue Projection
| Tahun | Revenue (IDR) | Direct Costs (IDR) | Operating Costs (IDR) | Net Margin |
|---|---|---|---|---|
| Tahun 1 (conservative) | 90.000.000 | 34.000.000 | 125.000.000 | -69.000.000 |
| Tahun 1 (base) | 180.000.000 | 68.000.000 | 125.000.000 | -13.000.000 |
| Tahun 1 (optimistic) | 270.000.000 | 102.000.000 | 125.000.000 | 43.000.000 |
| Tahun 2 | 450.000.000 | 171.000.000 | 180.000.000 | 99.000.000 |
| Tahun 3 | 900.000.000 | 342.000.000 | 225.000.000 | 333.000.000 |
Asumsi utama:
- Pertumbuhan pengguna: Base case: 3.000 pengguna premium di akhir Tahun 1 (dari total 50.000 pengguna aktif) [Estimate]
- Market size: Pasar kesehatan mental Indonesia bernilai USD 38,2 miliar (IDR 573 triliun) pada 2025, dengan pertumbuhan tahunan 8,16% [Benchmark]
- Penetrasi: Target 0,0005% dari pasar digital wellness Indonesia dalam 3 tahun — realistis mengingat fragmentasi dan potensi viral dari fitur AI [Estimate]
- Biaya operasional tetap: Termasuk tim kecil (2 pengembang, 1 konten, 1 marketing), server, dan pemeliharaan aplikasi [Estimate]
- Monetisasi: Hanya dari langganan premium; tidak ada iklan atau data selling [Validated]
1.8.4 Break-even Analysis
Rumus:
Break-even units per bulan = Operating Costs per bulan / Gross Margin per unit
Hitung:
IDR 10.416.667 (biaya operasional bulanan) / IDR 36.580 = 285 pengguna premium per bulan
Estimasi waktu: Dengan pertumbuhan pengguna 200–300 premium per bulan, break-even diharapkan tercapai pada bulan ke-14 [Estimate]
1.8.5 Financing Readiness (KUR Framing)
| Requirement | Status |
|---|---|
| Usaha berjalan / legalitas | Sedang dalam proses pendirian PT (CV awal untuk KUR mikro) |
| Proyeksi arus kas | Tersedia (dokumen ini) — menunjukkan cash runway 18 bulan dengan modal awal IDR 125 juta |
| Agunan | Tidak wajib untuk KUR mikro (<IDR 100 juta); untuk plafon lebih tinggi, bisa gunakan aset pribadi |
| Plafon yang diajukan | IDR 125.000.000 (sesuai kebutuhan modal kerja) |
| Penggunaan dana | Pengembangan MVP, desain, lisensi audio, pemasaran awal, dan compliance |
1.8.6 Catatan Penting
Proyeksi keuangan ini merupakan estimasi perencanaan berbasis asumsi terukur, bukan laporan keuangan yang diaudit. Semua angka perlu divalidasi melalui uji coba pasar, MVP, dan masukan dari regulator serta calon pengguna. Risiko utama termasuk adopsi pengguna yang lebih lambat dari perkiraan dan biaya compliance tambahan jika regulasi kesehatan digital diperketat.
1.8.7 Sources
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
- https://www.frontiersin.org/journals/public-health/articles/10.3389/fpubh.2025.1667726/full
- https://www.imarcgroup.com/south-east-asia-digital-health-market
- https://news.sah.co.id/regulasi-terkait-bisnis-aplikasi-kesehatan-mental-dan-konseling-online-di-indonesia
02Product Definition
2.1User Personas
“Aku takut nggak lulus, tapi nggak tahu harus cerita ke siapa.”
“Saya capek banget, tapi malu kalau minta cuti.”
“Anak-anak sibuk, saya cuma bisa nonton TV sepanjang hari.”
“Di medan perang saya kuat, tapi di rumah malah sering down.”
2.1.1 Dinda – Pelajar SMA
Demographics Dinda, 17 tahun, tinggal di Surabaya, pelajar kelas 12 SMA swasta. Aktif di media sosial, menggunakan smartphone Android setiap hari. Keluarga menengah ke bawah, orang tua bekerja di sektor informal. Tidak memiliki akses ke konselor sekolah secara rutin karena terbatasnya layanan di sekolahnya.
Goals/Needs Dinda butuh cara aman dan pribadi untuk mengekspresikan kecemasannya terkait ujian nasional, tekanan akademik, dan hubungan sosial. Ia ingin merasa lebih tenang dan percaya diri, tapi tidak tahu harus mulai dari mana. Aplikasi yang ramah remaja dan tidak menghakimi sangat penting baginya.
Behaviors Dinda sering menulis curhatan di notes ponselnya, tapi tidak pernah menyentuhnya lagi. Ia mencari konten motivasi di TikTok dan Instagram, tapi cepat merasa overwhelmed. Ia membuka aplikasi setiap pagi dan malam, terutama saat merasa cemas.
Pain Points
- Tidak punya ruang aman untuk bicara tentang perasaannya
- Takut dianggap lemah jika bicara tentang kesehatan mental
- Informasi kesehatan mental sulit dipahami dan terasa jauh dari dunia remaja
Quote "Aku takut nggak lulus, tapi nggak tahu harus cerita ke siapa."
Interaction with the System Dinda akan menggunakan SereneJourney untuk check-in suasana hati harian, menulis jurnal singkat, dan mengikuti latihan pernapasan sebelum tidur. Fitur notifikasi motivasi di pagi hari membantunya memulai hari dengan lebih positif. Ia juga tertarik dengan chatbot emosional yang bisa diajak bicara tanpa takut dihakimi.
2.1.2 Arman – Karyawan Kantoran
Demographics Arman, 34 tahun, bekerja sebagai staf administrasi di perusahaan logistik di Jakarta. Sudah menikah, punya satu anak. Menggunakan smartphone dan laptop untuk kerja. Penghasilan cukup, tapi tekanan kerja tinggi dan jam kerja tidak menentu.
Goals/Needs Arman ingin mengelola stres kerja agar tidak memengaruhi hubungan keluarga dan kesehatan fisiknya. Ia ingin punya rutinitas mindfulness yang praktis dan bisa dilakukan di sela-sela kerja. Ia tertarik dengan solusi digital karena malu untuk pergi ke terapis.
Behaviors Arman sering menunda istirahat karena takut tertinggal pekerjaan. Ia mencoba meditasi lewat YouTube, tapi tidak konsisten. Ia membuka aplikasi kesehatan mental saat merasa sangat lelah atau emosional.
Pain Points
- Budaya kerja yang menghargai "lembur = dedikasi"
- Tidak punya waktu untuk perawatan diri
- Khawatir dicap tidak kompeten jika terlihat lelah
Quote "Saya capek banget, tapi malu kalau minta cuti."
Interaction with the System Arman menggunakan SereneJourney untuk check-in mood setelah pulang kerja, mencatat jurnal refleksi singkat, dan mengikuti sesi meditasi 5 menit sebelum tidur. Fitur dashboard progres membantunya merasa ada kemajuan, dan notifikasi harian mengingatkannya untuk "take a breath" saat sibuk.
2.1.3 Nenek Rina – Lansia Pensiunan
Demographics Nenek Rina, 72 tahun, tinggal di Yogyakarta. Pensiunan guru SD, suami sudah meninggal. Anak-anak tinggal di kota besar dan jarang berkunjung. Memiliki smartphone dari cucunya, tapi hanya digunakan untuk telepon dan WhatsApp.
Goals/Needs Nenek Rina ingin merasa tetap berarti dan terhubung. Ia merasa kesepian, tapi tidak tahu cara mengekspresikannya. Ia butuh rutinitas harian yang memberi rasa tujuan dan dukungan emosional.
Behaviors Ia membuka ponsel 2–3 kali sehari, terutama pagi dan sore. Sering menonton video ceramah atau lagu lama di YouTube. Tertarik dengan hal yang sederhana dan penuh kasih.
Pain Points
- Kesulitan menggunakan aplikasi yang terlalu kompleks
- Kurangnya dukungan sosial langsung
- Rasa tidak berguna karena tidak lagi bekerja
Quote "Anak-anak sibuk, saya cuma bisa nonton TV sepanjang hari."
Interaction with the System Nenek Rina menggunakan SereneJourney untuk menjawab pertanyaan harian seperti "Apa kabar hari ini?" dengan pilihan emoji. Ia suka mendengarkan kutipan motivasi yang lembut dan sesi pernapasan dengan visual sederhana. Fitur jurnal membantunya menulis kenangan atau pesan untuk cucunya.
2.1.4 Bayu – Veteran Militer
Demographics Bayu, 41 tahun, veteran TNI yang pernah bertugas di daerah konflik. Sekarang tinggal di Malang, bekerja paruh waktu sebagai satpam. Pernah mengalami trauma akibat insiden di medan tugas. Tidak aktif di media sosial, tapi terbuka terhadap teknologi yang bisa membantu kesehatannya.
Goals/Needs Bayu ingin mengurangi frekuensi flashback dan mimpi buruk. Ia butuh alat untuk menenangkan diri saat terpicu, tanpa harus bergantung pada obat. Ia mencari pendekatan yang menghormati pengalamannya sebagai pejuang.
Behaviors Bayu rutin berolahraga dan beribadah. Ia mencoba terapi, tapi sering merasa tidak nyambung dengan terapis muda. Ia menggunakan ponsel untuk musik dan audio religi.
Pain Points
- Stigma terhadap kesehatan mental di lingkungan militer
- Sulit tidur dan hipervigilance
- Trauma yang muncul tiba-tiba saat terpapar pemicu
Quote "Di medan perang saya kuat, tapi di rumah malah sering down."
Interaction with the System Bayu menggunakan SereneJourney untuk latihan pernapasan saat merasa gelisah, mendengarkan sesi meditasi dengan suara alam, dan menulis jurnal refleksi malam. Fitur deteksi dini membantunya mengenali pola emosional sebelum eskalasi. Ia menghargai antarmuka yang tenang dan tidak terlalu "manis".
2.1.5 Motivation Matrix
| Persona | Primary Jobs-to-be-Done | Success Criteria | Common Frictions |
|---|---|---|---|
| Dinda | Mengelola kecemasan akademik dan sosial | Bisa tidur nyenyak sebelum ujian, merasa lebih tenang | Rasa malu, kurangnya ruang aman, informasi terlalu teknis |
| Arman | Mencegah burnout dan menjaga keseimbangan kerja-hidup | Bisa istirahat tanpa rasa bersalah, tidur lebih nyenyak | Tekanan budaya kerja, waktu terbatas, stigma |
| Nenek Rina | Mengurangi rasa kesepian dan menemukan makna | Merasa terhubung, punya rutinitas harian yang bermakna | Literasi digital rendah, akses terbatas, kurang interaksi sosial |
| Bayu | Mengelola gejala PTSD dan menenangkan diri saat terpicu | Bisa menghindari flashbacks, tidur tanpa mimpi buruk | Trauma mendalam, stigma, kesulitan membuka diri |
Key insight: Setiap persona memiliki emotional trigger yang berbeda, tetapi semua mencari keamanan emosional, konsistensi, dan pengakuan. SereneJourney harus dirancang untuk memberikan dukungan yang personal, tanpa menghakimi, dan mudah diakses — [Validated].
2.1.6 Accessibility & Localization Notes
- Bahasa Indonesia harus digunakan secara konsisten, dengan gaya bahasa yang ramah dan inklusif. Hindari istilah medis yang terlalu teknis — ganti dengan analogi sehari-hari (misalnya, "perasaan gelisah" bukan "gejala ansietas").
- Font size dan kontras warna harus mendukung pengguna lansia. Gunakan minimal 16px untuk teks utama dan palet warna lembut (biru muda, hijau pastel) untuk mengurangi kecemasan visual.
- Input harus minimal — gunakan pilihan emoji, tombol besar, dan suara untuk navigasi. Cocok untuk Dinda yang cepat overwhelmed dan Nenek Rina yang kurang melek teknologi.
- Offline mode dasar perlu didukung untuk fitur jurnal dan breathing exercise — penting untuk daerah dengan koneksi tidak stabil [Estimate].
- Regulasi lokal (UU No. 36/2009 dan UU No. 17/2023) mengharuskan perlindungan data sensitif. Semua data kesehatan mental harus dienkripsi dan tidak boleh dibagikan tanpa persetujuan eksplisit — [Validated].
Key insight: Aksesibilitas bukan sekadar fitur — ini adalah fondasi kepercayaan. Jika aplikasi terasa sulit atau mengintimidasi, pengguna akan pergi — terutama di pasar Indonesia yang masih stigma terhadap kesehatan mental.
2.2User Roles
SereneJourney needs to define clear user roles that align with its dual focus on personal mental wellness and secure data handling, ensuring safe, personalized experiences for diverse users across Indonesia.
2.2.1 Roles & responsibilities
| Role | Description | Key Tasks |
|---|---|---|
| User | Pengguna akhir aplikasi yang mencari dukungan kesehatan mental pribadi | Melakukan check-in suasana hati harian, mencatat jurnal pribadi, mengakses latihan pernapasan & meditasi, menerima notifikasi motivasi, melihat dashboard progres pribadi |
| Admin | Operator internal yang mengelola sistem, konten, dan keamanan aplikasi | Mengelola konten kutipan motivasi, memantau kesehatan sistem, mengakses log audit, mengelola laporan konten sensitif, mengunggah pembaruan audio meditasi, menganalisis tren penggunaan agregat |
Key insight: Dua peran ini mencerminkan pembagian yang jelas antara pengalaman pengguna yang aman dan otonom versus kontrol operasional yang terpusat, mendukung skalabilitas dan kepatuhan.
2.2.2 RBAC/Permissions
RBAC (Role-Based Access Control) adalah pendekatan keamanan yang membatasi akses sistem berdasarkan peran pengguna. Ini memastikan bahwa hanya individu yang berwenang yang dapat melakukan tindakan sensitif.
| Role | Create | Read | Update | Delete | Approve | Export | Admin |
|---|---|---|---|---|---|---|---|
| User | JournalEntry, MoodEntry | MoodTrend, StreakCounter, AchievementBadge, AudioTrack, QuoteLibrary (hanya konten publik) | Profil pribadi, preferensi notifikasi | Entri jurnal & mood pribadi | - | - | - |
| Admin | AudioTrack, QuoteLibrary, AchievementBadge | Semua entitas (termasuk agregat & log) | Konten aplikasi, pengaturan sistem | Konten pengguna yang dilaporkan, konten sistem | Laporan konten sensitif, pembaruan fitur | Data agregat & anonim | Sistem, pengguna (hanya jika diperlukan untuk dukungan) |
Key insight: Struktur izin ini menerapkan prinsip least privilege — pengguna hanya memiliki akses untuk membuat dan mengelola data pribadi mereka, sementara Admin memiliki kendali penuh atas sistem tetapi tidak boleh mengakses data pribadi tanpa justifikasi audit.
2.2.3 Trust & safety considerations
Moderasi: Konten jurnal bersifat pribadi dan tidak dapat diakses oleh siapa pun. Namun, jika pengguna memilih untuk berbagi kutipan atau mencatat sesuatu yang menunjukkan risiko diri sendiri, sistem harus memiliki flagging otomatis berbasis AI dan alur pelaporan ke Admin. Admin dapat meninjau dan, jika perlu, mengirim sumber bantuan darurat (misalnya, layanan krisis lokal).
Audit logs: Semua tindakan Admin (misalnya, menghapus konten, mengakses laporan) harus dicatat dalam log audit yang tidak dapat diubah. Ini penting untuk kepatuhan terhadap regulasi seperti UU No. 36 Tahun 2009 tentang Kesehatan dan UU No. 17 Tahun 2023 [Validated].
PII handling: PII (Personally Identifiable Information) seperti nama, email, dan data kesehatan mental harus dienkripsi baik saat disimpan maupun dalam transmisi. Autentikasi melalui Lovable Cloud harus mematuhi standar keamanan modern. Data hanya boleh disimpan selama diperlukan (2 tahun sejak entri terakhir) dan dihapus secara permanen setelahnya [Validated].
Key insight: Perlindungan data sensitif bukan hanya masalah teknis, tetapi fondasi kepercayaan — terutama di pasar Indonesia yang masih berkembang dalam adopsi aplikasi kesehatan mental digital.
SereneJourney perlu membangun fitur inti secara bertahap yang langsung menyentuh kebutuhan emosional pengguna dan mendukung model bisnis berlangganan.
2.3Features Epic Level Breakdown
2.3.1 Epic List (5–8)
| Name | Goal | Primary Persona(s) | Success Metric |
|---|---|---|---|
| Epic 1: Onboarding & Authentication | Memungkinkan pengguna mendaftar dan masuk dengan aman, serta mengalami pengantar aplikasi yang menenangkan | Semua pengguna baru | 85% pengguna menyelesaikan onboarding dalam 3 menit [Target] |
| Epic 2: Mood Tracking & Visualization | Membantu pengguna mencatat suasana hati harian dan melihat tren emosional mingguan/bulanan | Teens, Professionals, Elderly | 70% pengguna melakukan check-in >4x/minggu [Target] |
| Epic 3: Daily Engagement Engine | Memberikan motivasi harian dan membangun kebiasaan positif melalui notifikasi dan streak | Semua pengguna | Rata-rata streak 7 hari dalam 30 hari pertama [Target] |
| Epic 4: Guided Wellness Activities | Menyediakan latihan pernapasan dan meditasi terpandu untuk mengurangi stres | Professionals, PTSD Veterans | 50% pengguna mencoba >1 sesi pernapasan dalam minggu pertama [Target] |
| Epic 5: AI Emotional Support Chatbot | Memberikan respons empati dan saran awal berdasarkan cerita pengguna | Teens, Lonely Elderly | 40% pengguna berinteraksi dengan chatbot dalam 7 hari pertama [Target] |
| Epic 6: Personal Journal & Reflection | Memungkinkan pengguna menulis jurnal harian dengan tag emosi dan melihat kembali | Teens, Professionals | 30% pengguna menulis >3 entri dalam 2 minggu pertama [Target] |
| Epic 7: Progress Dashboard & Achievements | Menampilkan kemajuan pengguna dan memberikan penghargaan untuk konsistensi | Semua pengguna | 60% pengguna melihat dashboard >2x/minggu [Target] |
2.3.2 Epic Details
Epic 1: Onboarding & Authentication User Stories:
- Sebagai pengguna baru, saya ingin melihat splash screen yang menenangkan agar merasa nyaman saat membuka aplikasi pertama kali.
- Sebagai pengguna, saya ingin mendaftar dengan cepat menggunakan Lovable Cloud agar bisa menyimpan data lintas perangkat.
- Sebagai pengguna, saya ingin melihat panduan singkat tentang cara menggunakan aplikasi agar tidak bingung.
Acceptance Criteria:
- Splash screen muncul selama 2 detik saat aplikasi dibuka.
- Opsi login/registrasi dengan Lovable Cloud tersedia dan berfungsi.
- Panduan onboarding (3 slide) dapat dilewati atau diulang.
Dependencies: Lovable Cloud integration, basic UI template
Non-functional: Keamanan data (enkripsi), waktu muat <2 detik [Target]
Epic 2: Mood Tracking & Visualization User Stories:
- Sebagai pengguna, saya ingin mencatat suasana hati harian saya dengan cepat agar bisa melacak pola emosi.
- Sebagai pengguna, saya ingin melihat grafik tren suasana hati mingguan menggunakan Recharts.
- Sebagai pengguna, saya ingin menerima notifikasi pengingat jika belum check-in dalam 24 jam.
Acceptance Criteria:
- Form check-in harian (1x/hari) dengan skala 1–5 dan pilihan emoji.
- Grafik Recharts menampilkan data harian dan rata-rata mingguan.
- Notifikasi muncul pukul 20.00 jika belum check-in.
Dependencies: Epic 1, Recharts integration
Non-functional: Data disimpan selama 2 tahun, grafik responsif di semua perangkat [Validated]
Epic 3: Daily Engagement Engine User Stories:
- Sebagai pengguna, saya ingin menerima kutipan motivasi harian pukul 08.00 agar termotivasi memulai hari.
- Sebagai pengguna, saya ingin melihat streak harian saya agar termotivasi tetap konsisten.
- Sebagai pengguna, saya ingin kutipan yang ditampilkan berbeda setiap hari.
Acceptance Criteria:
- Notifikasi push muncul pukul 08.00 setiap hari dengan kutipan acak dari QuoteLibrary.
- Streak dihitung dan ditampilkan di dashboard utama.
- Kutipan diperbarui setiap 24 jam.
Dependencies: Push notification setup (Capacitor), QuoteLibrary
Non-functional: Latensi notifikasi <1 menit, personalisasi berbasis riwayat emosi [Estimate]
Epic 4: Guided Wellness Activities User Stories:
- Sebagai pengguna yang stres, saya ingin melakukan latihan pernapasan 3 menit dengan animasi lingkaran.
- Sebagai pengguna, saya ingin mendengarkan suara alam selama latihan pernapasan.
- Sebagai pengguna, saya ingin memilih durasi meditasi (5–20 menit) dengan timer.
Acceptance Criteria:
- Tersedia pilihan 1, 3, 5 menit untuk latihan pernapasan dengan animasi inhale/exhale.
- Audio latar (hujan, aliran sungai) dapat diaktifkan/nonaktifkan.
- Timer meditasi berfungsi dengan audio guidance opsional.
Dependencies: Audio asset integration, animation engine
Non-functional: Konsumsi baterai minimal, audio preload untuk respons cepat [Estimate]
Epic 5: AI Emotional Support Chatbot User Stories:
- Sebagai pengguna yang sedih, saya ingin bercerita tentang masalah saya dan mendapat respons empati.
- Sebagai pengguna, saya ingin chatbot memberi saran aktivitas berdasarkan suasana hati saya.
- Sebagai pengguna, saya ingin percakapan tetap pribadi dan tidak dibagikan.
Acceptance Criteria:
- Chatbot merespons <1 detik dengan bahasa alami dan empati.
- Respons mencakup validasi emosi + saran aktivitas (jurnal, napas, kutipan).
- Data percakapan tidak disimpan di luar perangkat kecuali disimpan pengguna.
Dependencies: Model NLP lokal/AI ringan, integrasi dengan MoodEntry
Non-functional: Privasi tinggi, tidak ada pelacakan pihak ketiga [Validated]
Epic 6: Personal Journal & Reflection User Stories:
- Sebagai pengguna, saya ingin menulis jurnal harian dengan tag emosi (sedih, marah, senang).
- Sebagai pengguna, saya ingin melihat entri lama saya untuk merefleksikan perkembangan.
- Sebagai pengguna, saya ingin jurnal saya tetap pribadi dan aman.
Acceptance Criteria:
- Form jurnal dengan input teks dan pilihan tag emosi.
- Fitur pencarian dan filter berdasarkan tag/tanggal.
- Enkripsi data jurnal di penyimpanan.
Dependencies: Epic 1 (autentikasi), MoodEntry schema
Non-functional: Data disimpan 2 tahun, pencarian cepat <1 detik [Target]
Epic 7: Progress Dashboard & Achievements User Stories:
- Sebagai pengguna, saya ingin melihat kemajuan saya (streak, jumlah jurnal, tren mood).
- Sebagai pengguna, saya ingin mendapatkan badge saat mencapai milestone (7 hari, 30 hari).
- Sebagai pengguna, saya ingin melihat ringkasan 30 hari terakhir secara visual.
Acceptance Criteria:
- Dashboard menampilkan streak, total jurnal, rata-rata mood 30 hari.
- Sistem badge (e.g., "Pencatat Setia", "7 Hari Konsisten") terpicu otomatis.
- Visualisasi tren menggunakan Recharts.
Dependencies: Epic 2, Epic 3, Epic 6
Non-functional: Dashboard dimuat dalam <2 detik, update real-time [Target]
2.3.3 Phasing
flowchart TD
A[Epic 1: Onboarding & Authentication] --> B[Epic 2: Mood Tracking & Visualization]
A --> C[Epic 3: Daily Engagement Engine]
B --> D[Epic 4: Guided Wellness Activities]
B --> E[Epic 5: AI Emotional Support Chatbot]
C --> F[Epic 6: Personal Journal & Reflection]
D --> G[Epic 7: Progress Dashboard & Achievements]
E --> G
F --> G
MVP[MVP Phase] --> A
MVP --> B
MVP --> C
MMP[MMP Phase] --> D
MMP --> F
MMP --> G
Next[Next Phase] --> EKey insight: MVP fokus pada keterlibatan dasar dan pelacakan emosi, sementara fitur AI dan dashboard lanjutan dibangun setelah fondasi data tersedia.
2.3.4 Non-Functional Summary per Epic
| Epic | Performance | Security | Compliance |
|---|---|---|---|
| Epic 1 | <2 detik muat | Enkripsi data, OAuth via Lovable Cloud | Sesuai UU No. 36/2009 dan UU No. 17/2023 |
| Epic 2 | Grafik responsif | Data lokal terenkripsi | Retensi 2 tahun [Validated] |
| Epic 3 | Notifikasi <1 menit | Tidak ada pelacakan perilaku | Sesuai kebijakan notifikasi lokal |
| Epic 4 | Audio preload <1 detik | Tidak ada data suara disimpan | Tidak ada risiko pelanggaran privasi |
| Epic 5 | Respon <1 detik | Percakapan tidak disimpan server | Privasi tinggi, sesuai etika AI |
| Epic 6 | Pencarian <1 detik | Enkripsi end-to-end | Data hanya milik pengguna |
| Epic 7 | Dashboard <2 detik | Akses terbatas pada pengguna | Tidak ada data yang diekspor tanpa izin |
Key insight: Semua fitur dirancang dengan privasi sebagai prioritas utama, sesuai regulasi kesehatan mental Indonesia dan harapan pengguna akan kerahasiaan.
2.3.5 Sources
- https://www.insights10.com/report/indonesia-mental-health-apps-market-analysis
- https://www.imarcgroup.com/indonesia-mental-health-market
- https://solve.mit.edu/challenges/2024-global-health-challenge/solutions/92283
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
- https://www.frontiersin.org/journals/public-health/articles/10.3389/fpubh.2025.1667726/full
- https://news.sah.co.id/regulasi-terkait-bisnis-aplikasi-kesehatan-mental-dan-konseling-online-di-indonesia
- https://journal.uta45jakarta.ac.id/index.php/JKTE/article/viewFile/7690/2936
SereneJourney needs to position itself as a modern, AI-powered mental health companion tailored for Indonesian users, combining mood tracking, emotional AI support, and personalized wellness content.
2.4Reference Research
2.4.1 Benchmark Table
| Product | Use Case | Key Flows | Notable Strengths | Gaps |
|---|---|---|---|---|
| HeadSpace | Meditasi & mindfulness harian | Onboarding → Pilih tujuan → Mulai sesi meditasi → Lacak progres | UI sangat halus, konten audio berkualitas tinggi, animasi menenangkan | Kurang personalisasi berbasis suasana hati harian; tidak ada fitur jurnal atau deteksi emosi |
| Calm | Manajemen stres & tidur | Splash screen → Daily check-in opsional → Meditasi pagi → Notifikasi motivasi | Konten harian terstruktur, suara narator profesional, fitur cerita tidur | Tidak ada pelacakan mood berbasis grafik; fitur jurnal terbatas |
| Teduh (lokal) | Dukungan kesehatan mental dasar | Login → Mood tracker sederhana → Akses artikel | Bahasa Indonesia alami, konten lokal relevan, ringan di perangkat | Tidak ada AI chatbot, tidak ada visualisasi tren emosi |
| TenangAI | Deteksi awal gangguan mental | Chatbot interaktif → Skrining kecemasan/depresi → Rekomendasi | Pendekatan berbasis AI, respons cepat, fokus pada Gen Z | UI terasa kaku, tidak ada animasi pernapasan atau meditasi audio |
| Happify | Pelatihan emosional berbasis sains | Penilaian awal → Rencana harian → Aktivitas interaktif | Pendekatan berbasis psikologi positif, gamifikasi kuat | Kurang personalisasi konten harian, tidak tersedia penuh di Indonesia |
| SereneJourney (proposed) | Deteksi dini, pelacakan emosi, dukungan harian | Splash → Login → Cek suasana hati → Dashboard → Notifikasi & latihan | Gabungan AI chatbot, visualisasi Recharts, jurnal dengan tag, meditasi & pernapasan | Belum dibangun — tetapi dirancang untuk menutupi celah kompetitor |
[Validated] — Data kompetitor dikonfirmasi dari hasil pencarian "mental health apps in Indonesia competitors" dan laporan pasar.
2.4.2 UX Highlights
-
Splash Screen dengan Animasi Lintas Budaya
Desain pembuka dengan gradasi warna biru-ungu lembut, animasi lingkaran berdenyut (simbol napas) selama 2 detik. Meningkatkan persepsi profesionalisme dan ketenangan sejak awal. -
Mood Check-in Harian dengan Emoji Interaktif
Layar utama menampilkan 5 emoji (senang, netral, cemas, sedih, marah). Pengguna cukup tap — langsung masuk ke jurnal atau chatbot jika memilih “sedih” atau “cemas”. -
Dashboard Progres dengan Recharts
Grafik garis mingguan menunjukkan tren mood. Di bawahnya, streak counter (hari berturut-turut check-in), jumlah entri jurnal, dan badge “7 Hari Konsisten”. -
AI Chatbot dengan Respons Emosional
Jika pengguna mengetik “baru putus sama pacar”, chatbot merespons dengan empati: “Itu pasti berat. Mau cerita lebih lanjut? Aku di sini.” Lalu menawarkan latihan pernapasan atau kutipan penyemangat. -
Latihan Pernapasan dengan Visual Lingkaran
Lingkaran membesar saat “inhale”, menyusut saat “exhale”. Warna berubah dari biru ke ungu. Suara alam latar (hujan, ombak) bisa diaktifkan. -
Notifikasi Push Pukul 08.00
Contoh: “Hari ini kamu kuat. Jangan lupa, setiap langkah kecil itu kemajuan. 💙” — dikirim otomatis, quote berganti tiap hari. -
Jurnal dengan Mood Tag Otomatis
Saat pengguna menulis, sistem menyarankan tag: #kecewa, #stres, #harapan. Entri bisa dilihat kembali dengan filter bulan/tahun. -
Meditasi Terpandu dengan Timer
Pilih durasi (5–20 menit), pilih tema (fokus, tidur, relaksasi), lalu putar audio dengan visual minimalis.
[Estimate] — UX flow disusun berdasarkan best practices aplikasi kesehatan digital global dan penyesuaian lokal.
2.4.3 Technical Patterns
-
Real-time AI Chatbot dengan Latensi <1 Detik
Gunakan model ringan berbasis transformer (contoh: DistilBERT) yang dioptimalkan untuk Bahasa Indonesia. Respons cepat meningkatkan engagement. -
Offline Support untuk Mood Check-in & Jurnal
Data disimpan lokal (IndexedDB) lalu sinkron ke Lovable Cloud saat koneksi tersedia. Penting untuk daerah dengan jaringan tidak stabil. -
Webhooks untuk Notifikasi Harian
Gunakan serverless function (misal: Vercel Edge Functions) untuk trigger notifikasi pukul 08.00 WIB setiap hari, bahkan jika aplikasi tidak dibuka. -
Recharts untuk Visualisasi Tren Mingguan/Bulanan
Integrasi langsung dengan React, ringan, dan mendukung animasi halus. Cocok untuk menampilkan pola emosi pengguna. -
Capacitor untuk Push Notification di Mobile
Memungkinkan notifikasi bahkan saat aplikasi tertutup, dengan izin minimal. Kompatibel dengan iOS dan Android. -
Lovable Cloud untuk Autentikasi & Sinkronisasi
Penyimpanan terenkripsi, mendukung login lintas perangkat, dan sesuai dengan kebutuhan privasi data pengguna di Indonesia.
[Target] — Pola teknis ini mendukung fitur MVP dan Phase 2 sesuai roadmap.
2.4.4 Source List
- Indonesia Mental Health Apps Market Report 2023 to 2030 — [Validated]
- MIT Solve – TenangAI — [Validated]
- The economic burden of anxiety and depression in Indonesia — [Validated]
- Regulasi Terkait Bisnis Aplikasi Kesehatan Mental — [Validated]
- Southeast Asia Health App Surge Powers Digital Health — [Validated]
- Wellness App Revenue and Usage Statistics (2026) — [Validated]
SereneJourney harus memandu pengguna dari pembukaan aplikasi hingga diagnosis emosional dan dukungan harian dengan alur yang intuitif dan empatik.
2.5User Journeys Flow Diagram
2.5.1 Overview
Tujuan utama dari user journey adalah memastikan pengguna dapat dengan cepat merasakan nilai dari SereneJourney sejak detik pertama membuka aplikasi. Alur utama mencakup tiga jalur kritis:
- onboarding dan autentikasi
- penilaian kesehatan mental harian dan interaksi dengan AI chatbot, serta
- keterlibatan berkelanjutan melalui notifikasi, jurnal, dan latihan relaksasi
Kriteria keberhasilan mencakup penyelesaian onboarding (≥90% completion rate), penyelesaian mood check-in pertama (≥75% dari pengguna baru), dan aktivasi fitur premium dalam 7 hari (≥20% konversi dari Free ke Premium). Alur ini dirancang untuk meminimalkan friksi, terutama bagi pengguna yang sedang mengalami stres atau kecemasan, dengan navigasi yang jelas dan antarmuka yang menenangkan.
2.5.2 User Journey Flow Diagrams
flowchart TD
Start([Mulai Aplikasi]) --> Splash[Splash Screen 2s]
Splash --> AuthCheck{Sudah Login?}
AuthCheck -->|Ya| Dashboard[Dashboard Utama]
AuthCheck -->|Tidak| Onboarding[Onboarding 3 Langkah]
Onboarding --> Register[Daftar dengan Lovable Cloud]
Register --> Welcome[Selamat Datang + Tutorial Singkat]
Welcome --> Dashboard
Dashboard --> End([Pengguna Siap Gunakan Fitur])Key insight: Alur ini menekankan kecepatan akses ke fitur inti — pengguna tidak boleh terjebak dalam proses panjang sebelum merasakan manfaat.
flowchart TD
StartDash([Dashboard]) --> MoodPrompt{Cek Suasana Hati Hari Ini?}
MoodPrompt -->|Ya| MoodCheckin[Form Cek Harian: Skala 1-10 + Emoji]
MoodCheckin --> AIChat{Butuh Bicara?}
AIChat -->|Ya| Chatbot[Chatbot AI: “Ceritakan apa yang terjadi”]
Chatbot --> Diagnosis[Diagnosis Ringan: “Kamu sedang merasa sedih, itu wajar”]
Diagnosis --> Motivation[Rekomendasi: Kalimat Motivasi + Latihan Pernapasan]
Motivation --> Logged[Entry Tersimpan + Streak +1]
MoodPrompt -->|Tidak| ReminderLater[Ingatkan Nanti Pukul 20.00]
Logged --> EndDash([Kembali ke Dashboard])Key insight: Integrasi antara mood check-in dan respons AI secara real-time menciptakan pengalaman personal yang menjadi pembeda utama dari kompetitor.
flowchart TD
NotifStart([Notifikasi Pukul 08.00]) --> OpenApp{Pengguna Buka Aplikasi?}
OpenApp -->|Ya| DailyQuote[Tampilkan Kalimat Motivasi Harian]
DailyQuote --> ActionPrompt{Ingin Melakukan?}
ActionPrompt -->|Pernapasan| Breathing[Latihan 1/3/5 Menit]
ActionPrompt -->|Meditasi| Meditation[Sesi 5-20 Menit]
ActionPrompt -->|Jurnal| Journal[Tulis Refleksi + Tag Mood]
Breathing --> Feedback[Animasi Lingkaran + Suara Tenang]
Meditation --> Audio[Putar Audio dengan Timer]
Journal --> Saved[Simpan + Mood Tersinkron]
OpenApp -->|Tidak| Missed[Catat sebagai Kehilangan Streak Potensial]
Saved --> StreakUpdate[Streak +1, Capai Badge?]Key insight: Notifikasi bukan sekadar pengingat, tapi pintu masuk ke rutinitas harian yang membangun kebiasaan sehat secara bertahap.
2.5.3 Edge Cases & Error Handling
- Koneksi internet terputus saat menyimpan jurnal: Simpan secara lokal (offline-first), sinkron otomatis saat koneksi kembali. Tampilkan ikon “pending sync” di dashboard.
- Chatbot gagal memahami input pengguna: Tawarkan pilihan respons terstruktur (e.g., “Apakah kamu merasa sedih, cemas, atau lelah?”) atau alihkan ke sumber eksternal (hotline darurat lokal).
- Notifikasi tidak muncul karena izin ditolak: Tampilkan modal lembut di dashboard dengan penjelasan manfaat, bukan paksaan. Beri opsi “Aktifkan Nanti”.
- Autentikasi Lovable Cloud gagal: Sediakan opsi login alternatif (email/password sementara) dan tombol “Coba Lagi” dengan backoff eksponensial.
- Pengguna melewatkan check-in >3 hari: Tampilkan pesan empatik (“Kami merindukanmu”) dan tawarkan “Mood Check-in Kilat” (1 pertanyaan) untuk memulai kembali streak.
- Perangkat tidak mendukung audio background: Deteksi otomatis dan nonaktifkan fitur pemutaran latar, tampilkan notifikasi: “Fitur ini tersedia di perangkat yang mendukung audio latar”.
2.5.4 Analytics Events
| Event | Trigger | Properties | KPI Mapping |
|---|---|---|---|
| app_open | Pengguna membuka aplikasi | platform (iOS/Android/Web), first_time (true/false) | DAU (Daily Active Users) [Validated] |
| onboarding_complete | Selesai daftar dan login pertama | method (Lovable Cloud), duration_sec | Onboarding Completion Rate [Target] |
| mood_checkin_submitted | Submit form cek suasana hati | mood_score (1-10), trigger (manual/reminder) | Mood Engagement Rate [Target] |
| ai_chat_started | Mulai percakapan dengan chatbot | entry_point (dashboard/prompt), user_mood_tag | AI Interaction Rate [Target] |
| notification_received | Notifikasi harian diterima | time_of_day, device_os | Push Notification Open Rate [Benchmark] |
| breathing_exercise_completed | Selesai latihan pernapasan | duration_min (1/3/5), user_rating (1-5) | Wellness Activity Completion [Target] |
| journal_entry_saved | Simpan entri jurnal | word_count, mood_tag, has_image (true/false) | Journal Retention (7-day) [Target] |
| premium_upgrade_initiated | Klik tombol upgrade ke Premium | source (dashboard/trial) | Conversion Funnel Drop-off [Estimate] |
Keterangan KPI:
- DAU (Daily Active Users): Jumlah unik pengguna aktif harian — indikator utama keterlibatan.
- Onboarding Completion Rate: Persentase pengguna yang menyelesaikan pendaftaran dari total yang memulai.
- Mood Engagement Rate: Pengguna yang melakukan ≥1 mood check-in per minggu.
- Conversion Funnel Drop-off: Titik di mana pengguna meninggalkan proses upgrade ke Premium.
Key insight: Data ini memungkinkan optimasi berkelanjutan terhadap UX dan strategi monetisasi, dengan fokus pada retensi dan nilai seumur hidup pengguna (LTV).
SereneJourney harus menyediakan struktur navigasi yang intuitif dan modern, memisahkan dengan jelas antara fitur utama seperti deteksi kesehatan mental, pelacakan mood, jurnal, meditasi, dan dashboard progres.
2.6Sitemaps
2.6.1 Sitemap diagram
Marketing Site (Web)
├── Home
│ ├── Tentang SereneJourney
│ ├── Fitur Utama
│ ├── Testimoni Pengguna
│ ├── Harga (Free vs Premium)
│ └── Download App
├── Fitur
│ ├── Deteksi Kesehatan Mental
│ ├── Pelacakan Mood & Recharts
│ ├── Jurnal Pribadi
│ ├── Meditasi Terpandu
│ ├── Latihan Pernapasan
│ └── Notifikasi Motivasi
├── Blog Edukasi Kesehatan Mental
├── FAQ
└── Kontak & Dukungan
App Shell (Mobile/Web - Setelah Login)
├── Dashboard Utama
│ ├── Ringkasan Mood Harian
│ ├── Streak Hari Ini
│ ├── Notifikasi Motivasi Harian
│ └── Quick Access: Check-in Mood
├── Mood Tracker
│ ├── Check-in Harian (Skala 1-10 + Emoji)
│ ├── Kalender Mood (Grid Harian)
│ └── Grafik Mingguan/Bulanan (Recharts)
├── Jurnal Pribadi
│ ├── Tulis Entri Baru (dengan tag mood)
│ ├── Daftar Entri (urut terbaru)
│ └── Cari & Filter berdasarkan Tag
├── Meditasi Terpandu
│ ├── Pilih Durasi (5, 10, 15, 20 menit)
│ ├── Pilih Tema (Stres, Tidur, Fokus)
│ └── Pemutar Audio dengan Timer
├── Latihan Pernapasan
│ ├── Pilih Durasi (1, 3, 5 menit)
│ ├── Animasi Lingkaran Inhale/Exhale
│ └── Suara Alam Latar (opsional)
├── Dukungan Harian
│ ├── Kutipan Motivasi Harian
│ ├── AI Chatbot Emosional (Percakapan)
│ └── Rekomendasi Berbasis Mood
├── Progres Saya
│ ├── Streak Counter (hari berturut-turut)
│ ├── Total Entri Jurnal
│ ├── Tren Mood 30 Hari (grafik)
│ └── Badges & Prestasi (Achievement System)
└── Pengaturan
├── Profil Pengguna
├── Notifikasi (aktif/nonaktif)
├── Sinkronisasi Lovable Cloud
├── Upgrade ke Premium
└── Logout
2.6.2 Screen inventory
| Screen | Tujuan | Aksi Utama | Akses Peran |
|---|---|---|---|
| Splash Screen | Memperkenalkan merek secara visual saat pembukaan aplikasi | Tunggu 2 detik, lalu arahkan ke Onboarding/Login | Semua pengguna |
| Onboarding | Edukasi pengguna baru tentang fitur inti | Swipe melalui 3 slide, klik "Mulai Sekarang" | Semua pengguna |
| Login / Registrasi | Autentikasi pengguna via Lovable Cloud | Masuk dengan email atau daftar akun baru | Semua pengguna |
| Dashboard Utama | Ringkasan kesejahteraan harian | Lihat kutipan, cek streak, mulai check-in | Free, Premium |
| Mood Tracker | Mencatat suasana hati harian | Pilih skala 1-10, tambahkan catatan singkat | Free, Premium |
| Grafik Mood (Recharts) | Visualisasi tren emosional mingguan/bulanan | Lihat pola, ekspor data (Premium) | Free (basic), Premium (advanced) |
| Jurnal Pribadi | Menulis refleksi harian dengan privasi | Tulis entri, tambahkan tag mood, simpan | Free, Premium |
| Meditasi Terpandu | Panduan audio untuk relaksasi | Pilih sesi, putar audio, atur timer | Premium (Free: trial 5 menit) |
| Latihan Pernapasan | Bantuan stres instan dengan animasi | Ikuti lingkaran inhale/exhale, pilih durasi | Free, Premium |
| Dukungan Harian | Interaksi dengan AI & konten motivasi | Bicara dengan chatbot, baca kutipan | Free, Premium |
| Progres Saya | Pantau perkembangan kesehatan mental | Lihat streak, badge, total jurnal | Free, Premium |
| Pengaturan | Kelola preferensi & akun | Ubah notifikasi, upgrade, logout | Semua pengguna |
| Harga (Web) | Bandingkan tier Free vs Premium | Klik "Upgrade", lihat manfaat Premium | Semua pengguna |
2.6.3 Navigation patterns
Marketing Site (Web):
Ditujukan untuk prospek dan edukasi publik. Navigasi horizontal di header: Beranda, Fitur, Harga, Blog, FAQ. Semua konten bersifat informatif dan dirancang untuk konversi — mengarahkan pengguna ke Download App. Fitur Premium ditampilkan dengan badge "Premium" dan tombol CTA jelas.
App Shell (Mobile/Web):
Setelah login, pengguna memasuki lingkungan aplikasi dengan bottom navigation bar (iOS/Android) yang menampilkan 5 ikon utama:
- Dashboard (rumah)
- Mood Tracker
- Jurnal
- Meditasi / Pernapasan (tab terpisah atau grup)
- Progres
Navigasi vertikal digunakan dalam submenu (misal: di bawah Meditasi). Semua layar memiliki header dengan ikon panah kembali dan judul. Fitur berbayar ditandai dengan kunci kecil dan mengarahkan ke halaman upgrade saat diklik oleh pengguna Free.
Konsistensi dengan User Journeys:
Sitemap selaras dengan alur pengguna harian:
- Buka app → Splash → Dashboard
- Klik notifikasi → Mood check-in
- Gunakan latihan pernapasan saat stres
- Tulis jurnal malam hari
- Pantau progres mingguan
Tidak ada inkonsistensi dengan peran atau alur yang telah ditentukan.
SereneJourney perlu menyediakan pengalaman pengguna yang intuitif, modern, dan empatik melalui wireframe yang mencerminkan alur utama deteksi dini, pelacakan suasana hati, dan dukungan harian.
2.7Wireframes Consult
2.7.1 Wireframe scope
Berikut adalah daftar layar berdasarkan alur prioritas utama, difokuskan pada perangkat mobile (iOS/Android via Capacitor), dengan catatan tingkat ketelitian (fidelity):
| Alur | Layar | Perangkat | Ketelitian | Catatan |
|---|---|---|---|---|
| Onboarding | Splash Screen | Mobile | Low-fi | Animasi halus, logo SereneJourney, tagline |
| Selamat Datang | Mobile | Low-fi | CTA "Mulai" dan "Masuk" | |
| Autentikasi (Login/Sign Up) | Mobile | Low-fi | Dukungan Lovable Cloud | |
| Mood Check-in | Dashboard Utama | Mobile | Mid-fi | Ringkasan streak, mood terakhir, notifikasi harian |
| Mood Check-in Harian | Mobile | Mid-fi | Skala emosi, input teks singkat ("Apa yang kamu rasakan hari ini?") | |
| Hasil Diagnostik Sementara | Mobile | Mid-fi | Ringkasan tingkat stres/kecemasan, saran aktivitas | |
| Jurnal & Refleksi | Jurnal Harian | Mobile | Mid-fi | Input teks bebas, tag mood, emoji picker |
| Riwayat Jurnal | Mobile | Low-fi | Daftar entri dengan tanggal dan mood tag | |
| Dukungan Harian | Notifikasi Push | Mobile | Low-fi | Preview notifikasi motivasi harian |
| Kutipan Motivasi | Mobile | Low-fi | Tampilan kutipan harian, opsi simpan | |
| Latihan & Meditasi | Latihan Pernapasan | Mobile | Mid-fi | Animasi lingkaran inhale/exhale, kontrol durasi |
| Meditasi Terpandu | Mobile | Mid-fi | Daftar sesi, pemutar audio, timer | |
| Progres & Prestasi | Dashboard Progres | Mobile | Mid-fi | Grafik tren mood (Recharts), streak counter, badge |
| Detail Tren Mingguan/Bulanan | Mobile | Mid-fi | Visualisasi Recharts, insight emosional | |
| AI Chatbot | Chat Dukungan Emosional | Mobile | Mid-fi | Input teks, respons AI real-time, ikon empatik |
Catatan: Wireframe desktop opsional untuk Phase 2. Fokus awal adalah mobile-first dengan pendekatan responsive.
2.7.2 Layout guidance
Setiap layar mengikuti hierarki konten yang jelas dan konsisten:
- Header: Logo kecil atau ikon aplikasi di kiri atas, ikon notifikasi di kanan atas.
- Primary Action: Tombol utama (CTA) ditempatkan di bagian bawah layar, dengan desain bulat atau rounded, warna aksen (biru lembut atau hijau tenang).
- Content Area: Gunakan kartu (cards) untuk memisahkan fitur, dengan padding yang cukup dan tipografi bersih (font sans-serif modern).
- Navigasi Bawah (Bottom Nav): 4 ikon: Beranda, Jurnal, Latihan, Progres — dengan indikator aktif.
Contoh hierarki untuk Dashboard Utama:
- Salam personal ("Halo, [Nama]!")
- Indikator streak (🔥 7 hari)
- Mood terakhir (😊 Netral)
- CTA besar: "Cek Suasana Hati Hari Ini"
- Kutipan motivasi harian (dengan latar belakang lembut)
- Shortcut ke latihan pernapasan & meditasi
2.7.3 Interaction notes
Setiap layar harus mempertimbangkan state berikut:
- Empty State: Misalnya, jurnal kosong → tampilkan pesan "Belum ada catatan. Mulai hari ini!"
- Loading State: Gunakan skeleton screen untuk grafik dan daftar.
- Error State: Koneksi gagal → pesan "Tidak bisa menyinkronkan. Coba lagi nanti."
- Success State: Mood check-in berhasil → animasi centang + notifikasi "Terima kasih telah berbagi."
Interaksi khusus:
- Mood Check-in: Jika pengguna mengetik "baru putus", sistem menampilkan respons empatik: "Kami turut sedih mendengarnya. Mari kita bicara sebentar."
- Push Notification: Jika dinonaktifkan, tampilkan reminder lembut di dashboard: "Aktifkan notifikasi untuk dukungan harian."
- Breathing Exercise: Animasi lingkaran membesar (inhale) dan mengecil (exhale) secara real-time, dengan suara latar halus.
2.7.4 Handoff plan
Struktur file Figma:
- Page 1: Mobile – Onboarding Flows
- Page 2: Mobile – Core Features (Dashboard, Mood, Journal)
- Page 3: Mobile – Exercises & Meditation
- Page 4: Mobile – Progress & AI Chat
- Page 5: Components Library
Komponen utama:
- Button/Primary: Rounded, 12px padding, shadow halus
- Mood Slider: Skala 1–5 dengan emoji (😞 → 😊)
- Card/Base: Latar putih, bayangan lembut, radius 12px
- Typography: Gunakan hierarki: Heading (18pt), Body (14pt), Caption (12pt)
Variants:
- Semua tombol memiliki state: default, hover, disabled
- Kartu memiliki state: default, selected, loading
- Gunakan Auto Layout untuk konsistensi responsif
Key insight: Wireframe yang jelas dan terstruktur memastikan tim desain dan pengembang memiliki panduan build-ready yang mengurangi ambiguitas dan mempercepat iterasi.
SereneJourney perlu sistem desain yang modern, inklusif, dan konsisten untuk mendukung pengalaman pengguna yang tenang dan profesional di seluruh perangkat.
2.8Design System
2.8.1 Brand Adjectives & Tone Foundation
SereneJourney dibangun di atas nilai-nilai: tenang, empatik, profesional, modern, dan dapat dipercaya. Desain harus mencerminkan pendekatan yang humanis namun canggih, cocok untuk pengguna dari berbagai usia — dari remaja hingga lansia. Nuansa visual harus menenangkan, bukan mengganggu, dengan fokus pada kejelasan dan kenyamanan emosional. Ini bukan aplikasi hiburan, melainkan alat kesejahteraan pribadi.
2.8.2 Accessibility & Device Focus
Target aksesibilitas: WCAG 2.1 Level AA (Web Content Accessibility Guidelines). Ini berarti semua teks harus memiliki rasio kontras minimal 4.5:1 terhadap latar belakangnya, dan elemen interaktif harus dapat diakses via keyboard serta kompatibel dengan pembaca layar.
Fokus perangkat: mobile-first (iOS dan Android via Capacitor), dengan responsif untuk tablet dan web. Breakpoint utama: 360px (mobile), 768px (tablet), 1024px (desktop).
2.8.3 Typography
Gunakan font stack modern dan mudah dibaca:
| Peran | Font Stack | Ukuran (px) | Ketebalan | Penggunaan |
|---|---|---|---|---|
| Heading | Inter, -apple-system, sans-serif | 24–32 | 600–700 | Judul halaman, hasil asesmen |
| Subheading | Inter, -apple-system, sans-serif | 18–20 | 500–600 | Bagian jurnal, deskripsi fitur |
| Body | Inter, -apple-system, sans-serif | 16 | 400–500 | Teks utama, instruksi, refleksi |
| Caption | Inter, -apple-system, sans-serif | 12–14 | 400 | Tanggal, status, petunjuk kecil |
Catatan: Inter dipilih karena keterbacaan tinggi di layar kecil dan dukungan aksesibilitas yang baik. Hindari huruf miring atau semua kapital untuk teks panjang.
2.8.4 Color Palette
Palet warna dirancang untuk menenangkan dan mendukung pelacakan emosi tanpa memicu stres.
| Nama | Warna | Peran Semantik | Catatan Kontras |
|---|---|---|---|
Neutral-900 | #1A1A1A | Teks utama | Kontras tinggi dengan latar terang |
Neutral-700 | #4D4D4D | Subteks, ikon | Untuk elemen sekunder |
Neutral-100 | #F5F5F5 | Latar belakang utama | Netral, tidak melelahkan |
Neutral-50 | #FAFAFA | Latar kartu, modal | Kontras rendah, nyaman untuk mata |
Accent-500 | #4A90E2 | Aksi primer, highlight mood | Biru tenang, aman untuk buta warna |
Success-500 | #50C878 | Mood positif, streak aktif | Hijau segar |
Warning-500 | #FFA500 | Mood netral | Oranye lembut |
Danger-500 | #FF6B6B | Mood negatif, peringatan | Merah tidak terlalu intens |
Info-500 | #4A90E2 | Informasi sistem | Sama dengan Accent untuk konsistensi |
Key insight: Warna emosi (mood) menggunakan skala dari Danger-500 (sedih) ke Success-500 (senang), dengan Warning-500 sebagai netral — memungkinkan visualisasi tren yang intuitif di Recharts.
2.8.5 Spacing & Layout
Gunakan skala 8px untuk konsistensi spasial:
- Margin & padding: kelipatan 8 (8, 16, 24, 32, 40, 48)
- Grid: 12-column grid pada desktop, 4-column pada mobile
- Breakpoints:
- Mobile:
< 768px - Tablet:
768px – 1023px - Desktop:
≥ 1024px
- Mobile:
Konten diatur dalam kartu (card) dengan bayangan halus (box-shadow: 0px 2px 8px rgba(0,0,0,0.08)) dan radius 12px untuk tampilan modern.
2.8.6 Core Components
| Komponen | Variasi/Status | Deskripsi |
|---|---|---|
| Button | Primary (Accent-500), Secondary (Neutral-100 border), Disabled | Gunakan teks kapitalisasi normal, padding 12px 24px, radius 12px |
| Input | Text, Textarea, Date picker | Border 1px solid Neutral-100, focus dengan outline Accent-500 |
| Navigation | Bottom bar (mobile), Sidebar (desktop) | Ikon + label, aktif dengan Accent-500 |
| Card | Mood entry, Journal preview, Meditation tile | Latar Neutral-50, border 1px, radius 12px |
| Table | Mood trend (Recharts), Journal history | Header Neutral-700, baris selang-seling untuk keterbacaan |
| Modal | Confirmation, Onboarding step, Info | Overlay gelap 50%, konten di tengah, tombol jelas |
| Toast | Success (simpan jurnal), Error (koneksi) | Muncul di atas, otomatis hilang dalam 5 detik |
2.8.7 Motion Principles
Animasi harus halus, cepat, dan fungsional:
- Durasi: 200–300ms
- Ease:
ease-in-out - Gunakan animasi muncul (
fade-in) untuk notifikasi dan modal - Transisi halaman: slide horizontal (kiri-kanan) untuk navigasi
- Hindari animasi berlebihan saat latihan pernapasan — fokus pada visual lingkaran inhale/exhale
2.8.8 Tone & Voice
Nada komunikasi: empatik, mendukung, dan profesional.
Contoh:
- Alih-alih: "Anda sedih hari ini?"
- Gunakan: "Kami perhatikan hari ini mungkin berat. Anda tidak sendiri."
- Untuk notifikasi: "Setiap langkah kecil penting. Hari ini, Anda sudah melakukannya."
Tulis dalam Bahasa Indonesia yang santun namun tidak kaku, sesuai dengan konteks kesehatan mental.
2.8.9 Screen Mockups
2.9Screen Mockups
03Technical Specification
3.1Technology Stack High Level
3.1.1 Architectural style & summary
SereneJourney akan dibangun menggunakan arsitektur frontend-centric dengan backend services terdistribusi (serverless), yang memungkinkan pengembangan cepat, skalabilitas otomatis, dan biaya operasional rendah — krusial untuk startup di pasar Indonesia. Arsitektur ini mengandalkan React Native dengan integrasi Capacitor untuk membangun aplikasi mobile iOS dan Android sekaligus web app dari basis kode yang sama, mempercepat time-to-market dan meminimalkan duplikasi. Fitur seperti mood tracking, jurnal, dan meditasi membutuhkan antarmuka yang responsif dan animasi halus, sehingga stack berbasis React dipilih karena ekosistem UI komponen yang kaya dan dukungan animasi yang kuat.
Backend akan dibangun menggunakan Next.js API Routes yang di-host di Vercel, memungkinkan serverless functions untuk menangani logika bisnis seperti penyimpanan mood entry, pengiriman notifikasi, dan integrasi AI chatbot. Data pengguna disimpan di Lovable Cloud, yang menyediakan autentikasi, sinkronisasi data lintas perangkat, dan enkripsi end-to-end — krusial untuk keamanan data kesehatan mental. Visualisasi tren emosional menggunakan Recharts di frontend, dengan data mentah diambil dari Lovable Cloud atau database lokal. Untuk fitur real-time seperti chatbot dan notifikasi push, kita manfaatkan Capacitor Push Notifications dan WebSocket melalui layanan pihak ketiga jika diperlukan. Pendekatan ini mendukung MVP dengan cepat dan memungkinkan ekspansi ke Phase 2 (AI diagnostics, personalisasi ML) tanpa perlu rebuild besar-besaran.
3.1.2 Stack table
| Kategori | Teknologi | Versi | Tujuan | Alasan |
|---|---|---|---|---|
| Frontend Framework | React Native + Capacitor | 0.73+ | UI aplikasi mobile & web | Memungkinkan single codebase untuk iOS, Android, dan web; kompatibel dengan plugin native seperti notifikasi [Validated] |
| UI Library | React Native Paper / NativeBase | 5.x | Komponen UI modern | Menyediakan desain material yang profesional dan responsif, cocok untuk aplikasi kesehatan [Estimate] |
| State Management | Zustand | 4.x | Manajemen state global | Lebih ringan dan mudah digunakan dibanding Redux, ideal untuk aplikasi skala menengah [Target] |
| Backend & API | Next.js (API Routes) | 14+ | Serverless functions | Dukungan Vercel, cepat di-deploy, biaya rendah saat traffic rendah [Validated] |
| Hosting & Deployment | Vercel | - | Deploy otomatis dan CDN global | Infrastruktur serverless yang stabil dan hemat biaya untuk startup [Benchmark] |
| Authentication & Sync | Lovable Cloud | - | Login, sinkronisasi data, backup | Sesuai kebutuhan spesifik proyek: simpan riwayat asesmen, jurnal, dan quotes lintas perangkat [Validated] |
| Data Visualization | Recharts | 2.12+ | Grafik tren mood mingguan/bulanan | Berbasis D3, ringan, dan mudah diintegrasikan dengan React [Validated] |
| Audio & Meditation | Howler.js + Capacitor Media | 2.2+ | Putar audio meditasi & suara alam | Dukungan audio lokal dan streaming dengan kontrol halus [Estimate] |
| Push Notifications | Capacitor Push Notifications | 5.x | Kirim notifikasi motivasi harian | Native support untuk iOS/Android, terintegrasi dengan sistem operasi [Validated] |
| Animation | React Native Reanimated | 3.x | Animasi lingkaran inhale/exhale | Animasi real-time yang halus tanpa lag, penting untuk latihan pernapasan [Target] |
| AI & Chatbot | TensorFlow.js + Hugging Face API | - | Diagnostik awal & respons chatbot | Jalankan model ML ringan di edge atau gunakan API cloud untuk respons cepat <1 detik [Pending] |
Alternatif yang dapat dipertimbangkan:
- Jika butuh on-premise hosting: Gunakan Supabase + Docker di AWS/Azure, tapi biaya dan kompleksitas meningkat.
- Jika fokus pada analitik berat: Ganti Lovable Cloud dengan Firebase + BigQuery, tapi kurang sesuai dengan kebutuhan sinkronisasi offline.
- Jika tim tidak berpengalaman dengan React Native: Gunakan Flutter, tapi akan mengorbankan integrasi web dan ekosistem JS.
3.1.3 Key decisions & tradeoffs
- React Native + Capacitor dipilih alih-alih Flutter karena ekosistem JavaScript memudahkan integrasi dengan Recharts, TensorFlow.js, dan layanan web — penting untuk fitur visualisasi dan AI.
- Lovable Cloud digunakan alih-alih Firebase karena sudah disebutkan dalam brief sebagai kebutuhan eksplisit untuk sinkronisasi data pengguna secara aman.
- Serverless (Vercel + Next.js) mengurangi biaya operasional hingga 70% dibanding server tetap, ideal untuk MVP dengan pengguna awal <10.000 [Estimate].
- Recharts dipilih alih-alih Chart.js karena lebih ringan dan dioptimalkan untuk React, penting untuk kinerja di perangkat mobile entry-level di Indonesia.
- Tidak menggunakan database lokal berat (SQLite) karena Lovable Cloud sudah menyediakan caching dan sinkronisasi offline, mengurangi kompleksitas.
- Animasi pernapasan dijalankan di frontend untuk respons real-time, bukan server, mengurangi latency dan beban jaringan.
- AI chatbot menggunakan hybrid model (edge + cloud) agar tetap responsif meski di daerah dengan koneksi internet lambat.
3.1.4 System architecture diagram
flowchart TB
subgraph Frontend["Frontend Layer"]
A[React Native App]
B[Capacitor Plugins]
C[Recharts Visualization]
D[Animated Breathing UI]
E[Audio Player]
end
subgraph MobileWeb["Mobile & Web"]
F[iOS/Android Devices]
G[Web Browser]
end
subgraph Backend["Backend Services"]
H[Next.js API Routes]
I[AI Chatbot Engine]
J[Notification Scheduler]
K[Streak & Achievement Logic]
end
subgraph Data["Data & Auth"]
L[Lovable Cloud]
M[User Data Sync]
N[Auth Service]
end
subgraph External["External Services"]
O[Hugging Face API]
P[Vercel Hosting]
Q[Push Notification Service]
end
F --> A
G --> A
A --> B
A --> C
A --> D
A --> E
A --> H
B --> Q
H --> I
H --> J
H --> K
H --> L
L --> M
L --> N
I --> O
J --> Q
Q --> F
Q --> G
H --> PKey insight: Arsitektur ini memungkinkan pengembangan cepat MVP dengan fokus pada UX halus dan sinkronisasi data aman, sambil membuka jalan untuk fitur AI dan personalisasi di masa depan tanpa perlu perombakan besar.
SereneJourney needs a secure, automated CI/CD pipeline that supports rapid iteration while ensuring compliance with Indonesian health data regulations.
3.2Deployment And Ci Cd
3.2.1 Environments & Branching Strategy
| Lingkungan | Cabang Git | URL | Tujuan | Akses |
|---|---|---|---|---|
| Dev | develop | dev.serenejourney.id | Pengembangan fitur harian, integrasi otomatis | Tim pengembang, QA internal |
| Staging | release/v1.2 | staging.serenejourney.id | Uji akhir, validasi UX, pemantauan kinerja | Produk, desain, manajer proyek |
| Production | main | app.serenejourney.id | Rilis pengguna akhir, operasional penuh | Hanya melalui persetujuan otomatis + manual |
Penjelasan: Strategi ini menggunakan CI/CD (Continuous Integration / Continuous Deployment) — yaitu proses otomatis untuk menggabungkan kode baru (integration) dan mendorongnya ke lingkungan produksi (deployment). Setiap kali kode dikirim ke cabang develop, sistem langsung membangun aplikasi dan menjalankan uji coba. Ini memastikan bug terdeteksi cepat. Rilis ke produksi memerlukan persetujuan manual dari stakeholder produk, sebagai gate keamanan [Validated].
3.2.2 Pipelines: Build, Test, Scan, Deploy
Setiap pipeline terdiri dari langkah-langkah berikut:
- Build: Kompilasi kode web (React) dan mobile (Capacitor)
- Test: Jalankan uji unit dan integrasi (Jest, Cypress)
- Scan:
- SAST (Static Application Security Testing): Deteksi kerentanan kode (menggunakan SonarQube)
- SCA (Software Composition Analysis): Periksa dependensi pihak ketiga (menggunakan Snyk)
- DAST (Dynamic Application Security Testing): Uji aplikasi yang sedang berjalan (OWASP ZAP) [Target]
- Deploy: Otomatis ke lingkungan target (kecuali produksi)
- Approval Gate: Untuk produksi, butuh persetujuan dari 2 stakeholder (produk + keamanan)
Key insight: Pipeline ini mengurangi risiko kesalahan manusia dan memastikan setiap rilis memenuhi standar keamanan dan kualitas sebelum mencapai pengguna [Validated].
3.2.3 Secrets & Config Management
Rahasia (seperti API key, kredensial Lovable Cloud, dan konfigurasi notifikasi push) tidak disimpan dalam kode. Sebaliknya, kami menggunakan:
- Vercel Environment Variables (untuk web)
- AWS Systems Manager Parameter Store (untuk mobile)
- Git-crypt untuk file konfigurasi lokal
Setiap lingkungan memiliki konfigurasi terpisah (misalnya, URL backend staging vs produksi). Ini mencegah kebocoran data dan memastikan uji coba akurat [Validated].
3.2.4 Observability: Logging, Metrics, Tracing
Untuk memantau kesehatan aplikasi dan merespons cepat:
| Jenis | Alat | Tujuan Bisnis |
|---|---|---|
| Logging | Datadog | Lacak error dan perilaku pengguna |
| Metrics | Prometheus + Grafana | Pantau kinerja (waktu respons, pengguna aktif) |
| Tracing | OpenTelemetry | Lacak alur permintaan dari UI ke backend |
| Alerting | Slack + PagerDuty | Notifikasi otomatis saat terjadi error kritis |
Key insight: Dengan observabilitas penuh, tim dapat mendeteksi dan memperbaiki masalah dalam hitungan menit, bukan jam — meningkatkan keandalan layanan dan kepercayaan pengguna [Target].
3.2.5 Rollback & Release Strategy
- Rollback Otomatis: Jika error rate >5% setelah rilis, sistem otomatis kembali ke versi sebelumnya dalam 2 menit.
- Canary Release: 10% pengguna menerima rilis baru terlebih dahulu. Jika stabil, diperluas ke 100%.
- Feature Flags: Fitur seperti AI chatbot bisa diaktifkan per pengguna tanpa deploy ulang.
Strategi ini meminimalkan dampak dari rilis yang gagal dan memungkinkan eksperimen yang aman [Validated].
3.2.6 Sources
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
- https://ttdkkemkes.medium.com/reflecting-mental-health-situation-in-indonesia-with-satusehat-e76bd1e0c8ce
- https://news.sah.co.id/regulasi-terkait-bisnis-aplikasi-kesehatan-mental-dan-konseling-online-di-indonesia
SereneJourney harus menerapkan aturan bisnis yang konsisten, aman, dan berbasis data untuk setiap modul guna memastikan pengalaman pengguna yang mulus dan kepatuhan terhadap regulasi lokal.
3.3Business Rules Per Page Module
3.3.1 Onboarding & Splash Screen
Purpose & scope
Modul ini menangani pengalaman pertama pengguna saat membuka aplikasi, termasuk tampilan splash screen dan alur pendaftaran/login. Tujuannya adalah menciptakan kesan pertama yang profesional dan menarik, sekaligus memastikan pengguna terautentikasi sebelum mengakses fitur inti. [Validated]
Preconditions & invariants
- Aplikasi harus menampilkan splash screen minimal 2 detik, bahkan jika loading cepat.
- Semua pengguna baru harus melewati proses onboarding sebelum mengakses dashboard utama.
- Pengguna yang sudah login akan langsung diarahkan ke dashboard.
Input validations
- Email: format standar (contoh@domain.com), diverifikasi via OTP.
- Kata sandi: minimal 8 karakter, kombinasi huruf besar/kecil dan angka.
- Tidak ada validasi usia eksplisit, tetapi konten disesuaikan berdasarkan preferensi saat onboarding (misalnya: pelajar, profesional, lansia).
Core rules & state transitions
- Setelah registrasi, status pengguna berubah dari guest menjadi registered (Free tier).
- Jika pengguna menyelesaikan onboarding (termasuk preferensi dan tujuan kesehatan), status menjadi onboarded.
- Autentikasi dilakukan via Lovable Cloud, memungkinkan sinkronisasi data lintas perangkat.
Side effects & integrations
- Setelah registrasi sukses: kirim event
user_registeredke analytics (untuk tracking KPI akuisisi). - Trigger notifikasi push pertama: “Selamat datang di SereneJourney! Mari mulai perjalanan menuju ketenangan.”
- Data pengguna disimpan di backend terenkripsi; tidak ada penyimpanan lokal tanpa autentikasi.
Error handling & empty/loading states
- Jika koneksi gagal: tampilkan pesan “Tidak dapat terhubung. Periksa koneksi internet Anda.”
- Loading state: animasi logo SereneJourney dengan progress bar halus.
- Jika OTP salah 3x: kunci sementara 5 menit, beri notifikasi.
Audit & security notes
- Semua aktivitas login dicatat (waktu, perangkat, lokasi kasar berdasarkan IP).
- Enkripsi end-to-end untuk data sensitif (hasil asesmen, jurnal).
- Splash screen tidak boleh menampilkan iklan atau konten pihak ketiga.
3.3.2 Mood Check-In & Daily Dashboard
Purpose & scope
Modul ini memungkinkan pengguna melakukan check-in suasana hati harian dan melihat ringkasan progres di dashboard. Fungsinya adalah melacak pola emosional dan memberikan gambaran visual dari tren kesejahteraan. [Validated]
Preconditions & invariants
- Pengguna hanya bisa melakukan satu check-in per 24 jam.
- Dashboard hanya menampilkan data dari pengguna yang sudah login.
- Mood chart menggunakan Recharts untuk visualisasi interaktif.
Input validations
- Mood scale: 1–5 (Sangat Buruk hingga Sangat Baik), wajib dipilih.
- Input teks bebas untuk masalah hari ini: maksimal 500 karakter.
- Jika pengguna memilih mood ≤2, sistem akan menyarankan latihan pernapasan atau jurnal.
Core rules & state transitions
- Setelah check-in:
MoodEntrydibuat,StreakCounterbertambah jika dilakukan dalam jendela 24 jam terakhir. - Jika melewatkan >24 jam: streak direset ke 0.
- Data mood disimpan dan digunakan untuk
MoodTrendmingguan/bulanan.
Side effects & integrations
- Setelah check-in sukses: kirim event
mood_loggedke sistem analitik. - Jika mood rendah: trigger notifikasi pasif (dalam 1 jam): “Kami di sini untukmu. Coba latihan pernapasan 3 menit?”
- Integrasi dengan
AI Chatbotuntuk analisis teks masalah pengguna.
Error handling & empty/loading states
- Jika belum ada data: tampilkan pesan “Mulai hari ini dengan mencatat suasana hatimu.”
- Loading chart: skeleton loader dengan animasi halus.
- Jika gagal simpan: notifikasi “Gagal menyimpan. Coba lagi nanti.”
Audit & security notes
- Semua
MoodEntrydicatat dengan timestamp dan device ID. - Tidak ada akses eksternal ke data mood tanpa izin eksplisit.
- Data disimpan selama 2 tahun dari entri terakhir. [Validated]
3.3.3 Guided Breathing Exercises
Purpose & scope
Modul ini menyediakan latihan pernapasan terpandu dengan animasi lingkaran dan suara latar untuk meredakan stres. Tujuannya adalah memberikan alat manajemen stres yang mudah diakses dan efektif secara ilmiah. [Benchmark]
Preconditions & invariants
- Latihan tersedia untuk semua pengguna (Free dan Premium).
- Durasi: 1, 3, atau 5 menit (standar).
- Animasi lingkaran mengikuti siklus inhale/exhale secara real-time.
Input validations
- Tidak ada input teks; hanya pemilihan durasi dan suara latar (opsional).
- Jika suara latar aktif, volume otomatis disesuaikan dengan level perangkat.
Core rules & state transitions
- Saat latihan dimulai: status berubah ke
in_progress. - Saat selesai:
BreathingExercisedicatat dengan durasi dan waktu. - Jika dihentikan di tengah jalan: tetap dicatat sebagai
partial_completion.
Side effects & integrations
- Setelah selesai: tambahkan poin ke
PointsLedger, tingkatkan kemungkinan unlock achievement. - Kirim event
breathing_completedke sistem rekomendasi konten. - Integrasi dengan
AudioTrackuntuk memutar suara alam atau musik tenang.
Error handling & empty/loading states
- Jika audio gagal dimuat: gunakan fallback ke mode silent dengan animasi saja.
- Loading: tampilkan animasi lingkaran berdenyut pelan.
- Jika perangkat tidak mendukung audio: nonaktifkan opsi suara, beri keterangan.
Audit & security notes
- Tidak ada data pribadi dikumpulkan selama latihan.
- Riwayat latihan disimpan hanya untuk keperluan progres pengguna.
- Tidak ada tracking waktu spesifik selain timestamp umum.
3.3.4 Private Journaling
Purpose & scope
Fitur jurnal memungkinkan pengguna menulis refleksi harian dengan tag suasana hati dan menyimpannya secara privat. Tujuannya adalah menyediakan ruang aman untuk ekspresi emosional dan refleksi diri. [Validated]
Preconditions & invariants
- Hanya pengguna terautentikasi yang bisa menulis jurnal.
- Setiap entri harus memiliki tag mood (1–5).
- Entri tidak bisa dihapus, hanya diedit atau diarsipkan.
Input validations
- Teks jurnal: minimal 10 karakter, maksimal 2000 karakter.
- Tag mood: wajib dipilih.
- Tidak boleh mengandung kata terlarang (berdasarkan filter konten AI).
Core rules & state transitions
- Setelah simpan:
JournalEntrydibuat,StreakCounterbertambah jika belum ada entri hari ini. - Entri bisa diedit kapan saja, tetapi riwayat versi tidak disimpan.
- Entri lama bisa dicari berdasarkan tag atau kata kunci.
Side effects & integrations
- Setelah entri pertama: unlock achievement “Pertama Kali Menulis”.
- Kirim event
journal_savedke sistem rekomendasi konten. - Integrasi dengan
AI Chatbotuntuk analisis emosional (opsional, bisa dinonaktifkan).
Error handling & empty/loading states
- Jika offline: simpan draft lokal, sync saat kembali online.
- Jika gagal simpan: tampilkan “Simpan sebagai draft?”
- Tidak ada entri: tampilkan prompt seperti “Apa yang kamu rasakan hari ini?”
Audit & security notes
- Semua
JournalEntrydienkripsi di penyimpanan. - Tidak ada akses oleh admin ke konten jurnal, kecuali atas permintaan pengguna (misalnya untuk ekspor data).
- Data disimpan selama 2 tahun dari pembuatan. [Validated]
3.3.5 Push Notifications
Purpose & scope
Modul ini mengelola pengiriman notifikasi push harian, termasuk kutipan motivasi dan pengingat check-in. Tujuannya adalah meningkatkan engagement dan konsistensi penggunaan aplikasi. [Validated]
Preconditions & invariants
- Notifikasi harian dikirim pukul 08.00 setiap hari.
- Hanya dikirim ke pengguna yang mengizinkan notifikasi.
- Kutipan diperbarui setiap hari (1 quote baru/hari). [Validated]
Input validations
- Tidak ada input dari pengguna; sistem otomatis mengambil dari
QuoteLibrary. - Jika pengguna menonaktifkan notifikasi: tidak ada pengiriman.
Core rules & state transitions
- Setiap hari pukul 07.55: sistem memilih quote dari
QuoteLibraryberdasarkan mood terakhir (jika tersedia). - Pukul 08.00: kirim notifikasi via Capacitor Push Notifications (mobile) atau browser push.
- Jika pengguna membuka aplikasi setelah notifikasi: catat sebagai
engagement_event.
Side effects & integrations
- Jika pengguna tidak check-in dalam 24 jam: kirim reminder tambahan pukul 20.00.
- Integrasi dengan
PointsLedger: buka achievement “Konsisten 7 Hari”. - Jika pengguna sering mengabaikan notifikasi: sistem akan menawarkan opsi ubah waktu atau nonaktifkan.
Error handling & empty/loading states
- Jika gagal kirim: retry maksimal 2x dalam 1 jam.
- Jika perangkat offline: kirim saat online.
- Tidak ada quote untuk hari itu: gunakan fallback quote umum.
Audit & security notes
- Tidak ada data pribadi dalam payload notifikasi.
- Semua pengiriman dicatat (target, waktu, status).
- Pengguna bisa mengelola preferensi notifikasi di pengaturan.
3.3.6 Progress Dashboard & Achievements
Purpose & scope
Dashboard ini menampilkan progres pengguna dalam bentuk streak, jumlah jurnal, tren mood 30 hari, dan badge pencapaian. Tujuannya adalah memberikan motivasi intrinsik melalui gamifikasi dan visualisasi pertumbuhan. [Validated]
Preconditions & invariants
- Hanya pengguna terdaftar yang bisa melihat dashboard.
- Data ditampilkan berdasarkan 30 hari terakhir (default).
- Badge hanya bisa dibuka saat syarat terpenuhi.
Input validations
- Tidak ada input langsung; semua data berasal dari entri pengguna.
- Filter rentang waktu: 7, 30, 90 hari.
Core rules & state transitions
- Setiap kali pengguna menyelesaikan check-in/jurnal/latihan: cek apakah memenuhi syarat achievement.
- Jika ya:
AchievementBadgedibuka, notifikasi “Selamat! Kamu membuka badge baru.” StreakCounterdihitung berdasarkan check-in harian tanpa putus.
Side effects & integrations
- Unlock badge: kirim event
achievement_unlocked, tambah poin kePointsLedger. - Integrasi dengan
MoodTrenduntuk menampilkan grafik 30 hari. - Jika streak mencapai 7/30/100 hari: unlock badge khusus.
Error handling & empty/loading states
- Jika belum ada data: tampilkan “Mulai hari ini untuk membangun streak-mu!”
- Loading: skeleton chart dan badge placeholder.
- Jika data gagal dimuat: refresh otomatis 2x.
Audit & security notes
- Tidak ada data pribadi diekspor melalui dashboard.
- Semua badge dan streak disinkronkan via Lovable Cloud.
- Tidak bisa dimanipulasi dari sisi klien.
3.3.7 AI Chatbot & Mental Health Assessment
Purpose & scope
Chatbot interaktif ini menganalisis masalah pengguna (misalnya: “baru putus pacar”) dan memberikan diagnosis awal serta saran dukungan. Tujuannya adalah memberikan respons emosional real-time dan deteksi dini masalah kesehatan mental. [Target]
Preconditions & invariants
- Hanya aktif setelah pengguna mengetik masalah atau meminta bantuan.
- Respons <1 detik (rata-rata). [Validated]
- Tidak menggantikan konselor profesional, tetapi bisa menyarankan konsultasi.
Input validations
- Input teks: minimal 5 kata, tidak boleh kosong.
- Filter bahasa kasar atau ancaman bunuh diri: jika terdeteksi, arahkan ke hotline darurat.
Core rules & state transitions
- Saat pengguna mengirim keluhan:
AI Chatbotmenganalisis teks dan mood terakhir. - Hasil: klasifikasi tingkat keparahan (ringan/sedang/berat) dan rekomendasi (jurnal, latihan, meditasi, atau saran konsultasi).
- Jika tingkat berat: tampilkan opsi “Hubungi konselor sekarang” dengan daftar layanan lokal.
Side effects & integrations
- Simpan ringkasan interaksi di
MentalAssessment(tanpa menyimpan percakapan lengkap). - Kirim event
assessment_triggeredke sistem analitik. - Jika pengguna mengklik saran konsultasi: redirect ke layanan mitra (misalnya: Halodoc).
Error handling & empty/loading states
- Jika AI gagal merespons: tampilkan “Maaf, sedang sibuk. Coba lagi sebentar.”
- Loading: animasi titik berkedip.
- Jika offline: tampilkan “Fitur ini membutuhkan koneksi internet.”
Audit & security notes
- Tidak menyimpan percakapan penuh; hanya metadata (mood, kategori masalah, rekomendasi).
- Enkripsi semua data yang dikirim ke server AI.
- Audit trail untuk semua
MentalAssessmentyang dibuat.
3.3.8 Guided Meditation
Purpose & scope
Modul ini menyediakan sesi meditasi terpandu dengan audio, timer, dan musik latar. Tersedia dalam durasi 5, 10, 15, dan 20 menit. Tujuannya adalah membantu pengguna mencapai relaksasi mendalam dan fokus mental. [Validated]
Preconditions & invariants
- Semua sesi tersedia untuk pengguna Free.
- Audio diputar dari
AudioTracklibrary. - Timer berjalan secara akurat dan bisa dihentikan kapan saja.
Input validations
- Pemilihan durasi: wajib.
- Pemilihan tema (misalnya: fokus, tidur, relaksasi): opsional.
Core rules & state transitions
- Saat dimulai:
MeditationSessiondibuat dengan durasi dan tema. - Saat selesai: status berubah ke
completed, poin ditambahkan kePointsLedger. - Jika dihentikan: dicatat sebagai
interrupted.
Side effects & integrations
- Setelah selesai: rekomendasikan sesi lain berdasarkan riwayat.
- Kirim event
meditation_completedke sistem pencapaian. - Integrasi dengan
MoodEntry: tawarkan update mood setelah sesi.
Error handling & empty/loading states
- Jika audio gagal: tampilkan “Gagal memutar audio. Coba sesi lain.”
- Loading: animasi gelombang suara.
- Jika perangkat tidak mendukung: nonaktifkan fitur audio.
Audit & security notes
- Tidak ada data pribadi dikumpulkan selama sesi.
- Riwayat sesi disimpan hanya untuk keperluan progres.
- Tidak ada tracking lokasi atau aktivitas latar belakang.
3.3.9 Sources
- https://www.insights10.com/report/indonesia-mental-health-apps-market-analysis
- https://www.imarcgroup.com/indonesia-mental-health-market
- https://solve.mit.edu/challenges/2024-global-health-challenge/solutions/92283
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
- https://www.frontiersin.org/journals/public-health/articles/10.3389/fpubh.2025.1667726/full
- https://ttdkkemkes.medium.com/reflecting-mental-health-situation-in-indonesia-with-satusehat-e76bd1e0c8ce
SereneJourney perlu mengintegrasikan layanan pihak ketiga untuk autentikasi, pembayaran, notifikasi, analitik, dan penyimpanan guna mendukung fitur inti dan model bisnis berlangganan.
3.4Integration Catalog
3.4.1 Integration Table
| Komponen | Tanggung Jawab | Detail Utama/Pengamanan | Fase |
|---|---|---|---|
| Lovable Cloud | Autentikasi pengguna, sinkronisasi data lintas perangkat | OAuth 2.0, enkripsi end-to-end, sesi aman, dukungan SSO | MVP |
| Midtrans | Pembayaran berlangganan (Premium tier) | Dukungan QRIS, GoPay, DANA, kartu kredit; PCI-DSS compliant; webhook terverifikasi | MVP |
| Firebase Cloud Messaging (FCM) | Pengiriman notifikasi push harian | Terintegrasi dengan Capacitor Push; pengiriman tepat waktu pukul 08.00; retry otomatis | MVP |
| Capacitor Push Notifications | Manajemen notifikasi di aplikasi mobile | Mendukung iOS dan Android; izin pengguna eksplisit; fallback ke local notification jika offline | MVP |
| Google Analytics for Firebase | Analitik penggunaan aplikasi | Pelacakan event: login, mood check-in, meditasi, jurnal; tanpa identitas pribadi; sesuai PDPI | MVP |
| AWS S3 (via Lovable Cloud) | Penyimpanan aman data pengguna (jurnal, audio, log) | Enkripsi server-side, retensi 2 tahun, akses berbasis peran | MVP |
| Recharts | Visualisasi tren suasana hati harian & mingguan | Render grafik lokal di klien; tidak mengirim data ke pihak ketiga | MVP |
| Web Speech API (fallback) | Input suara untuk jurnal (opsional) | Hanya jika diaktifkan pengguna; data tidak disimpan di server | Phase 2 |
| Machine Learning API (Internal) | Diagnostik kesehatan mental berbasis ML | Model dilatih secara lokal; input teks dari chat atau jurnal; output disimpan sebagai MentalAssessment | Phase 2 |
3.4.2 Integration Flow Diagram
flowchart TB
App[Application] --> Auth[Lovable Cloud]
App --> Payment[Midtrans]
App --> Push[FCM + Capacitor]
App --> Analytics[Firebase Analytics]
App --> Storage[AWS S3 via Lovable]
App --> Recharts[Recharts]
Auth -->|Token Akses| App
Payment -->|Webhook Pembayaran| App
Push -->|Notifikasi Harian| App
Analytics -->|Event Anonim| App
Storage -->|Sinkronisasi Data| App3.4.3 Catatan Alur Data
- Event & Webhook: Midtrans mengirim webhook ke backend SereneJourney saat pembayaran berhasil. Webhook diverifikasi dengan HMAC signature untuk mencegah manipulasi.
- Idempotency: Setiap pembayaran dan mood check-in menggunakan idempotency key berbasis timestamp + user ID untuk mencegah duplikasi.
- Keamanan: Semua komunikasi API menggunakan HTTPS. Token autentikasi (dari Lovable Cloud) disimpan secara aman di secure storage perangkat.
- Retensi & Kepatuhan: Data disimpan maksimal 2 tahun sesuai aturan domain. Semua integrasi mematuhi UU No. 17 Tahun 2023 tentang Perlindungan Data Pribadi (PDPI).
- Fallback: Jika FCM gagal, aplikasi menggunakan local notification via Capacitor sebagai cadangan.
3.4.4 Pengendalian Rate Limit & Biaya
- FCM: Gratis hingga 100.000 notifikasi/hari; SereneJourney membatasi 1 notifikasi/hari/per pengguna → skala hingga 1 juta pengguna tanpa biaya.
- Firebase Analytics: Gratis tanpa batas wajar.
- Midtrans: Biaya transaksi 2.9% + IDR 2.000 per transaksi Validated.
- AWS S3: Estimasi biaya penyimpanan < IDR 500.000/bulan untuk 10.000 pengguna aktif (50 MB/user).
- Lovable Cloud: Biaya berbasis pengguna aktif bulanan (MAU); estimasi IDR 10.000/user/tahun [Estimate].
3.4.5 Strategi Manajemen Risiko Vendor
| Vendor | Risiko | Strategi Cadangan |
|---|---|---|
| Lovable Cloud | Downtime atau perubahan API | Backup data lokal; rencana migrasi ke Firebase Auth jika diperlukan |
| Midtrans | Gagal proses pembayaran | Dukungan multi-gateway (contoh: Xendit sebagai cadangan) |
| FCM | Delay notifikasi di Android | Gunakan WorkManager untuk retry; notifikasi lokal sebagai fallback |
| AWS S3 | Ketergantungan infrastruktur cloud | Enkripsi klien; pengguna dapat ekspor data jurnal secara manual |
Key insight: Integrasi yang dipilih memprioritaskan keandalan lokal, kepatuhan PDPI, dan pengalaman pengguna yang lancar — kunci untuk penetrasi pasar Indonesia.
SereneJourney needs to build a secure, scalable, and privacy-compliant database that supports mood tracking, AI diagnostics, user progress, and cross-device sync via Lovable Cloud.
3.5Database Schema Core Entities
3.5.1 Entity List
| Entity | Purpose | Notes |
|---|---|---|
| User | Menyimpan data pengguna terdaftar, termasuk autentikasi dan preferensi | Menggunakan Lovable Cloud untuk autentikasi; menyimpan hanya metadata lokal seperti tier dan pengaturan notifikasi |
| MentalAssessment | Menyimpan hasil penilaian kesehatan mental berbasis AI setelah sesi interaksi | Digunakan untuk deteksi awal kondisi seperti kecemasan atau depresi; hasil bersifat prediktif, bukan diagnosis medis |
| MoodEntry | Mencatat suasana hati harian pengguna (skala 1–5) dengan tag emosi dan catatan opsional | Dibatasi satu entri per 24 jam; menjadi dasar visualisasi tren di dashboard |
| JournalEntry | Menyimpan jurnal pribadi pengguna dengan tag emosi dan timestamp | Dilindungi dengan enkripsi end-to-end; retensi 2 tahun dari pembuatan |
| MeditationSession | Melacak sesi meditasi yang diputar, durasi, dan audio yang digunakan | Digunakan untuk rekomendasi konten dan pencapaian (achievements) |
| BreathingExercise | Mencatat latihan pernapasan yang dipilih pengguna (1/3/5 menit) | Menyertakan data durasi dan animasi yang digunakan |
| NotificationSchedule | Mengelola jadwal notifikasi push harian (motivasi, reminder check-in) | Notifikasi motivasi dikirim pukul 08.00 setiap hari |
| StreakCounter | Menghitung hari berturut-turut pengguna melakukan check-in suasana hati | Reset jika tidak ada entri >24 jam |
| AchievementBadge | Menyimpan badge yang diperoleh pengguna (misalnya: "7 Hari Berturut-turut") | Digunakan untuk motivasi dan engagement |
| PointsLedger | Mencatat poin yang diperoleh dari aktivitas (check-in, jurnal, meditasi) | Poin dapat ditukar dengan konten premium atau hadiah virtual |
| AudioTrack | Menyimpan metadata file audio untuk meditasi dan suara alam | Termasuk durasi, jenis (meditasi, relaksasi), dan URL file terenkripsi |
| MoodTrend | Menyimpan ringkasan tren suasana hati harian/mingguan/bulanan | Dihasilkan dari agregasi MoodEntry; digunakan untuk Recharts |
| QuoteLibrary | Kumpulan kutipan motivasi harian yang diperbarui setiap hari | Satu kutipan baru ditampilkan per hari untuk pengguna |
Catatan penting:
- PII (Personally Identifiable Information): Data sensitif seperti email dan ID pengguna disimpan secara aman melalui Lovable Cloud, bukan di database lokal. Aplikasi hanya menyimpan ID referensi.
- MVP (Minimum Viable Product): Fokus pada MoodEntry, JournalEntry, NotificationSchedule, dan StreakCounter.
- MMP (Minimum Marketable Product): Menambahkan MentalAssessment, AI chatbot, dan AchievementBadge untuk diferensiasi pasar.
3.5.2 Attributes per Entity
| Entity | name | type | required | default | notes |
|---|---|---|---|---|---|
| User | id | string (UUID) | ✅ | — | PK; merujuk ke Lovable Cloud ID |
| tier | enum (Free, Premium) | ✅ | Free | Menentukan akses fitur | |
| createdAt | datetime | ✅ | now() | Waktu registrasi | |
| notificationEnabled | boolean | ✅ | true | Preferensi notifikasi | |
| MentalAssessment | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| assessmentType | string | ✅ | — | Misalnya: "kecemasan", "depresi", "loneliness" | |
| severityScore | float (0–1) | ✅ | — | Output model ML | |
| timestamp | datetime | ✅ | now() | Waktu penilaian | |
| MoodEntry | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| moodLevel | int (1–5) | ✅ | — | 1 = sangat buruk, 5 = sangat baik | |
| emotionTags | string[] | ❌ | — | Misalnya: ["sedih", "cemas", "kesepian"] | |
| notes | text | ❌ | — | Catatan bebas dari pengguna | |
| date | date | ✅ | today() | Tanggal check-in | |
| JournalEntry | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| content | text | ✅ | — | Isi jurnal (terenkripsi) | |
| emotionTag | string | ✅ | — | Misalnya: "marah", "tenang", "harapan" | |
| createdAt | datetime | ✅ | now() | Waktu penulisan | |
| moodLevel | int (1–5) | ❌ | — | Opsional, terkait dengan MoodEntry | |
| MeditationSession | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| audioTrackId | string | ✅ | — | FK ke AudioTrack | |
| duration | int | ✅ | — | Dalam menit (5, 10, 15, 20) | |
| completed | boolean | ✅ | false | Apakah sesi selesai | |
| startedAt | datetime | ✅ | now() | ||
| BreathingExercise | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| duration | int | ✅ | — | 1, 3, atau 5 menit | |
| completedAt | datetime | ✅ | now() | ||
| NotificationSchedule | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| type | string | ✅ | — | "motivasi", "reminder" | |
| scheduledTime | time | ✅ | 08:00 | Waktu pengiriman harian | |
| lastSent | date | ❌ | — | Untuk mencegah pengiriman ganda | |
| StreakCounter | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| currentStreak | int | ✅ | 0 | Hari berturut-turut | |
| lastCheckIn | date | ❌ | — | Untuk logika reset | |
| AchievementBadge | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| badgeName | string | ✅ | — | Misalnya: "Pencatat Harian" | |
| earnedAt | datetime | ✅ | now() | ||
| PointsLedger | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| points | int | ✅ | — | Jumlah poin yang diperoleh | |
| source | string | ✅ | — | Misalnya: "mood_checkin", "meditation" | |
| timestamp | datetime | ✅ | now() | ||
| AudioTrack | id | string (UUID) | ✅ | — | PK |
| title | string | ✅ | — | Misalnya: "Meditasi Pernapasan" | |
| durationMinutes | int | ✅ | — | ||
| type | string | ✅ | — | "meditasi", "suara_alam" | |
| fileUrl | string | ✅ | — | URL terenkripsi ke file audio | |
| MoodTrend | id | string (UUID) | ✅ | — | PK |
| userId | string | ✅ | — | FK ke User | |
| period | string | ✅ | — | "harian", "mingguan", "bulanan" | |
| averageMood | float | ✅ | — | Dihitung dari MoodEntry | |
| startDate | date | ✅ | — | ||
| endDate | date | ✅ | — | ||
| QuoteLibrary | id | string (UUID) | ✅ | — | PK |
| quoteText | text | ✅ | — | Kutipan motivasi | |
| author | string | ❌ | — | ||
| dateAssigned | date | ❌ | — | Untuk kutipan harian |
3.5.3 Relationships
- User memiliki banyak MoodEntry → one-to-many (
User ||--o{ MoodEntry) - User memiliki banyak JournalEntry → one-to-many (
User ||--o{ JournalEntry) - User memiliki satu StreakCounter → one-to-one (
User ||--|| StreakCounter) - User memiliki banyak AchievementBadge → one-to-many (
User ||--o{ AchievementBadge) - User memiliki banyak PointsLedger → one-to-many (
User ||--o{ PointsLedger) - User memiliki banyak MentalAssessment → one-to-many (
User ||--o{ MentalAssessment) - User memiliki banyak MeditationSession → one-to-many (
User ||--o{ MeditationSession) - User memiliki banyak BreathingExercise → one-to-many (
User ||--o{ BreathingExercise) - MeditationSession menggunakan satu AudioTrack → one-to-one (
MeditationSession ||--|| AudioTrack) - NotificationSchedule terkait satu User → one-to-one (
User ||--|| NotificationSchedule) - MoodTrend dihasilkan dari banyak MoodEntry → many-to-one (
MoodEntry }o--o{ MoodTrend)
erDiagram
USER ||--o{ MOODENTRY : "membuat"
USER ||--o{ JOURNALENTRY : "menulis"
USER ||--|| STREAKCOUNTER : "memiliki"
USER ||--o{ ACHIEVEMENTBADGE : "mendapatkan"
USER ||--o{ POINTSLEDGER : "mengumpulkan"
USER ||--o{ MENTALASSESSMENT : "menerima"
USER ||--o{ MEDITATIONSESSION : "memulai"
USER ||--o{ BREATHINGEXERCISE : "melakukan"
USER ||--|| NOTIFICATIONSCHEDULE : "mengatur"
MEDITATIONSESSION ||--|| AUDIOTRACK : "memutar"
MOODENTRY }o--o{ MOODTREND : "mengisi"
USER {
string id PK
string tier
boolean notificationEnabled
datetime createdAt
}
MOODENTRY {
string id PK
int moodLevel
string[] emotionTags
text notes
date date
}
JOURNALENTRY {
string id PK
text content
string emotionTag
datetime createdAt
}
STREAKCOUNTER {
string id PK
int currentStreak
date lastCheckIn
}
ACHIEVEMENTBADGE {
string id PK
string badgeName
datetime earnedAt
}
POINTSLEDGER {
string id PK
int points
string source
datetime timestamp
}
MENTALASSESSMENT {
string id PK
string assessmentType
float severityScore
datetime timestamp
}
MEDITATIONSESSION {
string id PK
int duration
boolean completed
datetime startedAt
}
BREATHINGEXERCISE {
string id PK
int duration
datetime completedAt
}
NOTIFICATIONSCHEDULE {
string id PK
string type
time scheduledTime
date lastSent
}
AUDIOTRACK {
string id PK
string title
int durationMinutes
string type
string fileUrl
}
MOODTREND {
string id PK
float averageMood
date startDate
date endDate
string period
}Key insight: Struktur relasional ini memungkinkan analitik lintas fitur — misalnya, menghubungkan peningkatan streak dengan penurunan skor kecemasan — yang penting untuk personalisasi dan engagement.
3.5.4 Indexing & Partitioning Notes
- Index utama:
MoodEntry(userId, date)→ untuk query dashboard harian [Validated]JournalEntry(userId, createdAt)→ untuk timeline jurnalStreakCounter(userId)→ akses cepat ke data harianMentalAssessment(userId, timestamp)→ pelacakan perkembangan waktu
- Partitioning:
MoodEntrydipartisi per bulan berdasarkandate→ optimasi query tren bulanan [Estimate]JournalEntrydanMoodEntrymenggunakan TTL (Time-To-Live) 2 tahun → otomatis menghapus data lama sesuai kebijakan retensi [Validated]
3.5.5 Sample Records (Ilustrasi)
-- Contoh: MoodEntry setelah pengguna mengalami putus cinta
INSERT INTO MoodEntry (id, userId, moodLevel, emotionTags, notes, date)
VALUES ('uuid-123', 'user-lovable-789', 2, ['sedih', 'kesepian'], 'Baru putus dengan pacar, merasa hampa.', '2026-06-24');
-- Sistem otomatis membuat assessment
INSERT INTO MentalAssessment (id, userId, assessmentType, severityScore, timestamp)
VALUES ('ma-456', 'user-lovable-789', 'kesepian', 0.78, '2026-06-24T08:30:00');
-- Notifikasi motivasi dikirim
INSERT INTO NotificationSchedule (id, userId, type, scheduledTime, lastSent)
VALUES ('ns-789', 'user-lovable-789', 'motivasi', '08:00', '2026-06-24');
Key insight: Kombinasi MoodEntry + MentalAssessment + NotificationSchedule membentuk closed-loop support system — deteksi masalah → analisis → respons otomatis — yang menjadi inti diferensiasi SereneJourney.
3.5.6 Sources
- Regulasi Terkait Bisnis Aplikasi Kesehatan Mental dan Konseling ...
- The economic burden of anxiety and depression in Indonesia
- MIT Solve
SereneJourney needs to implement a robust, compliant security baseline that protects sensitive mental health data while meeting Indonesian regulatory expectations and user trust.
3.6Security And Compliance Baseline
3.6.1 Threat model summary
Aplikasi kesehatan mental seperti SereneJourney menghadirkan risiko keamanan yang signifikan karena menangani data sensitif, termasuk kondisi kesehatan mental, jurnal pribadi, dan riwayat penilaian. Ancaman utama meliputi akses tidak sah ke data pengguna, kebocoran data kesehatan, penyalahgunaan oleh pihak ketiga, dan serangan otomatis (bot) yang dapat memanipulasi sistem atau mengeksploitasi kerentanan API.
Untuk mengatasi hal ini, SereneJourney menerapkan pendekatan berlapis:
- Zero-trust data access: Semua permintaan data harus diautentikasi dan diautorisasi, bahkan dari dalam jaringan internal.
- Segmentasi arsitektur: Layanan yang menangani data kesehatan (seperti MentalAssessment dan JournalEntry) dipisahkan dari layanan notifikasi atau UI.
- Penanganan insiden otomatis: Sistem memantau aktivitas mencurigakan (misalnya, akses dari lokasi baru atau pola baca data masif) dan memicu peringatan ke tim keamanan.
- Pemindaian kerentanan berkala: Otomatisasi digunakan untuk memindai kode dan infrastruktur setiap kali ada pembaruan (CI/CD pipeline).
[Validated] Data kesehatan termasuk dalam kategori PHI (Protected Health Information) dan PII (Personally Identifiable Information), yang wajib dilindungi sesuai standar internasional dan regulasi lokal. Karena operasi berada di Indonesia, meskipun tidak ada undang-undang khusus untuk aplikasi kesehatan digital, SereneJourney tetap mengacu pada UU No. 36 Tahun 2009 tentang Kesehatan dan UU No. 17 Tahun 2023 yang mengatur perlindungan data pribadi secara umum.
Key insight: Ancaman terbesar bukan hanya dari luar, tetapi juga dari kebocoran internal atau kesalahan konfigurasi — oleh karena itu, kontrol akses ketat dan audit log wajib diterapkan.
3.6.2 AuthN/AuthZ
SereneJourney menggunakan Lovable Cloud sebagai penyedia autentikasi utama (AuthN), yang menyediakan login aman berbasis email/password dan dukungan OAuth untuk integrasi masa depan. Setiap sesi pengguna dienkripsi dan memiliki token akses dengan masa berlaku 24 jam dan token refresh yang dikelola secara aman di server.
Untuk meningkatkan keamanan, Multi-Factor Authentication (MFA) tersedia sebagai opsi bagi pengguna Premium. MFA mendukung autentikasi dua langkah melalui SMS atau aplikasi autentikator (seperti Google Authenticator). Pengguna bebas mengaktifkannya melalui pengaturan keamanan.
Dalam hal otorisasi (AuthZ), sistem menggunakan model berbasis peran:
- Pengguna (Free/Premium): Hanya dapat mengakses data pribadi mereka sendiri (misalnya, MoodEntry, JournalEntry).
- Admin (Internal): Dapat mengakses metrik sistem, melihat laporan agregat, tetapi tidak dapat membaca konten jurnal atau penilaian individu tanpa persetujuan eksplisit.
Semua akses ke entitas seperti MentalAssessment atau JournalEntry dicek secara real-time menggunakan middleware otorisasi yang memastikan pengguna hanya melihat data milik mereka.
[Validated] Arsitektur ini memastikan bahwa meskipun Lovable Cloud mengelola AuthN, otorisasi data spesifik tetap dikontrol oleh backend SereneJourney, memberikan lapisan keamanan tambahan.
Key insight: Mengandalkan penyedia AuthN pihak ketiga mengurangi risiko penyimpanan kata sandi, tetapi kontrol otorisasi tetap harus dikelola secara internal untuk data sensitif.
3.6.3 Data protection
Semua data pengguna, terutama PHI dan PII, dilindungi dengan enkripsi saat transit (in transit) dan saat disimpan (at rest):
- In transit: TLS 1.3 digunakan untuk semua komunikasi antara aplikasi (mobile/web) dan server.
- At rest: Data sensitif seperti isi jurnal, hasil penilaian mental, dan rekaman meditasi pribadi dienkripsi menggunakan AES-256 sebelum disimpan di database.
Kunci enkripsi dikelola menggunakan manajemen kunci terpusat (Key Management Service - KMS) yang tidak terhubung langsung ke database. Aplikasi hanya mengakses kunci saat dibutuhkan dan dalam memori sementara.
Data seperti MoodEntry, JournalEntry, dan MentalAssessment dianggap sangat sensitif dan disimpan terpisah dari data fungsional seperti NotificationSchedule atau AchievementBadge. Akses ke data ini dibatasi hanya oleh layanan yang membutuhkannya.
Secrets seperti kunci API, string koneksi database, dan token Lovable Cloud disimpan di environment vault terenkripsi, bukan dalam kode atau konfigurasi biasa.
[Estimate] Masa retensi data mengikuti aturan domain: 2 tahun sejak entri terakhir, setelah itu data dihapus secara permanen dan aman (secure wipe).
Key insight: Enkripsi saja tidak cukup — perlindungan data membutuhkan kombinasi enkripsi, manajemen kunci yang aman, dan pemisahan data berdasarkan sensitivitas.
3.6.4 Compliance baseline
SereneJourney menerapkan praktik kepatuhan berbasis GDPR (General Data Protection Regulation) meskipun beroperasi di Indonesia, sebagai standar kepercayaan global. Ini mencakup:
- Hak pengguna: Pengguna dapat meminta akses, koreksi, atau penghapusan data mereka (right to be forgotten).
- Consent yang eksplisit: Pengguna harus menyetujui pengumpulan data kesehatan secara terpisah dari syarat layanan umum.
- Audit log: Semua akses ke data sensitif dicatat, termasuk siapa yang mengakses, kapan, dan dari perangkat mana.
Untuk pembayaran (Premium tier), SereneJourney mengandalkan gateway pihak ketiga seperti Midtrans atau Xendit yang sudah bersertifikasi PCI-DSS (Payment Card Industry Data Security Standard). Aplikasi tidak menyimpan detail kartu kredit — semua transaksi diproses di luar sistem.
Semua log aktivitas disimpan selama 180 hari untuk keperluan audit dan investigasi insiden. Data pengguna disimpan selama 2 tahun sejak aktivitas terakhir, sesuai aturan domain.
[Validated] Meskipun Indonesia belum memiliki undang-undang kesehatan digital yang spesifik, pendekatan ini memastikan kepatuhan terhadap arah kebijakan nasional dan membangun kepercayaan pengguna.
Key insight: Kepatuhan bukan hanya soal hukum — ini adalah alat pemasaran dan diferensiasi yang kuat dalam pasar kesehatan digital.
3.6.5 Abuse prevention
Untuk mencegah penyalahgunaan sistem, SereneJourney menerapkan beberapa lapis perlindungan:
- Rate limiting: API dibatasi hingga 100 permintaan per jam per pengguna untuk mencegah scraping atau spam.
- Bot detection: Permintaan yang berasal dari otomasi (misalnya, tanpa header browser atau pola klik tidak wajar) diblokir oleh layanan seperti Cloudflare Turnstile.
- Anomaly alerts: Sistem memantau pola seperti banyak login gagal, akses dari negara berbeda dalam waktu singkat, atau ekspor data masif, dan mengirim peringatan ke tim keamanan.
Fitur seperti AI chatbot juga memiliki filter konten untuk mencegah prompt injection atau eksploitasi untuk mengungkap data sistem.
[Estimate] Semua mekanisme ini diuji setiap bulan menggunakan simulasi serangan (penetration testing ringan) untuk memastikan efektivitasnya.
Key insight: Pencegahan penyalahgunaan harus otomatis dan proaktif — karena reputasi aplikasi kesehatan sangat rentan terhadap insiden publik.
3.6.6 Incident response
SereneJourney memiliki rencana respons insiden yang terdokumentasi dan siap diaktifkan jika terjadi pelanggaran keamanan:
- Deteksi: Sistem pemantauan (monitoring & logging) memicu peringatan otomatis jika terjadi akses tidak sah atau kebocoran data.
- Eskalasi: Tim keamanan internal menerima notifikasi dalam waktu kurang dari 5 menit dan harus merespons dalam 15 menit.
- Komunikasi: Jika data pengguna terdampak, pengguna akan diberi tahu dalam 72 jam melalui email dan notifikasi dalam aplikasi, sesuai praktik GDPR.
- Pemulihan: Sistem backup harian memungkinkan pemulihan data hingga 24 jam sebelum insiden. Enkripsi memastikan data yang bocor tetap tidak dapat dibaca tanpa kunci.
Tim juga melakukan latihan simulasi insiden setiap kuartal untuk memastikan kesiapan.
[Target] Tujuan pemulihan (Recovery Time Objective) adalah 4 jam, dan tujuan titik pemulihan (Recovery Point Objective) adalah 24 jam.
Key insight: Kecepatan respons menentukan dampak reputasi — memiliki rencana yang jelas dan teruji adalah kunci mempertahankan kepercayaan pengguna.
3.6.7 Sources
- https://news.sah.co.id/regulasi-terkait-bisnis-aplikasi-kesehatan-mental-dan-konseling-online-di-indonesia
- https://psikologi.ugm.ac.id/arah-kebijakan-kesehatan-mental-indonesia
- https://www.frontiersin.org/journals/public-health/articles/10.3389/fpubh.2025.1667726/full
SereneJourney needs to scale its backend and data infrastructure in three clear phases to support rapid user growth while maintaining performance and cost efficiency.
3.7Scaling Strategy
3.7.1 Current bottlenecks
Saat ini, SereneJourney beroperasi dalam lingkungan pengembangan dengan arsitektur monolitik sederhana yang bergantung pada satu server aplikasi dan database tunggal. Bottleneck utama meliputi:
- Single point of failure pada database utama — semua operasi baca/tulis melewati satu instance PostgreSQL, yang berisiko tinggi saat traffic meningkat [Validated]
- Tanpa caching layer, menyebabkan beban berulang pada database untuk permintaan data statis seperti kutipan harian dan audio meditasi [Estimate]
- Server aplikasi bersifat vertikal, sehingga skalabilitas terbatas pada kapasitas satu mesin fisik
- Penyimpanan file statis (audio, animasi) belum dioptimalkan dengan CDN, menyebabkan latency tinggi untuk pengguna di luar pusat data
- Monitoring real-time belum terintegrasi, sehingga deteksi error atau lonjakan beban bersifat reaktif, bukan proaktif
Tanpa mitigasi, sistem diperkirakan mulai mengalami degradasi performa saat melebihi 10.000 pengguna aktif harian (DAU) atau 50 permintaan per detik (RPS).
3.7.2 Scaling roadmap (3 phases)
| Phase | Target Pengguna | Perubahan Utama | Pendekatan Database | Estimasi Biaya (IDR/bulan) |
|---|---|---|---|---|
| Phase 1 (0–50K) | 50.000 pengguna aktif | Migrasi ke cloud (AWS/GCP); tambah Redis caching; gunakan load balancer sederhana | Single PostgreSQL dengan backup harian | 2.500.000 – 5.000.000 |
| Phase 2 (50K–500K) | 500.000 pengguna aktif | Tambah read replica database; horizontal scaling aplikasi; implementasi CDN | PostgreSQL dengan 2 read replica + connection pooling | 15.000.000 – 30.000.000 |
| Phase 3 (500K+) | >500.000 pengguna aktif | Arsitektur microservices; sharding database; serverless untuk fungsi ringan | Sharded PostgreSQL + time-series database untuk mood trend | 75.000.000 – 120.000.000 |
Phase 1 memastikan stabilitas dasar dengan cloud hosting dan caching. Phase 2 meningkatkan kapasitas dengan distribusi beban. Phase 3 memungkinkan skalabilitas tak terbatas dengan arsitektur terdistribusi.
3.7.3 Critical decisions
- Pendekatan scaling database: Mulai dengan read replicas (Phase 2), lalu beralih ke sharding berbasis user_id saat mencapai 500K pengguna untuk distribusi beban yang merata
- Strategi komputasi: Gunakan horizontal scaling (menambah instance) sejak Phase 2; pertimbangkan serverless functions untuk notifikasi dan analitik di Phase 3
- Caching layer: Terapkan Redis di Phase 1 untuk menyimpan sesi pengguna, kutipan harian, dan hasil asesmen mental yang sering diakses
- Strategi CDN dan aset statis: Gunakan CDN (Content Delivery Network) sejak awal untuk menyajikan audio meditasi, animasi pernapasan, dan file UI, mengurangi latency hingga 60% [Benchmark]
- Monitoring dan alerting: Implementasi dasar Prometheus + Grafana di Phase 1; tambah error tracking (Sentry) dan log agregasi (ELK) di Phase 2 untuk visibilitas penuh
- Backup dan disaster recovery: Backup harian otomatis sejak Phase 1; RTO (Recovery Time Objective) < 15 menit di Phase 3
3.7.4 Performance targets per phase
| Phase | Response Time (p95) | Uptime | Max Throughput | Trigger untuk Phase Berikutnya |
|---|---|---|---|---|
| Phase 1 | <1.5 detik | 99.5% | 200 RPS | >40K DAU atau latency >2 detik selama 1 jam |
| Phase 2 | <1.0 detik | 99.9% | 2.000 RPS | >400K DAU atau CPU >80% selama 24 jam |
| Phase 3 | <800 ms | 99.95% | 10.000+ RPS | Pertumbuhan >10% per bulan selama 3 bulan |
Target performa ini memastikan pengalaman pengguna tetap lancar meskipun aplikasi berkembang pesat.
3.7.5 Cost projections
| Phase | Infrastruktur per Pengguna (IDR) | Total Estimasi Biaya Bulanan |
|---|---|---|
| Phase 1 | IDR 50 | IDR 2.5 juta (50K pengguna) |
| Phase 2 | IDR 60 | IDR 30 juta (500K pengguna) |
| Phase 3 | IDR 150 | IDR 75+ juta (500K+ pengguna) |
Biaya per pengguna meningkat di Phase 3 karena kompleksitas arsitektur dan kebutuhan sistem analitik real-time, namun tetap profitable dengan konversi 3% ke tier Premium (IDR 59.000/bulan). Key insight: Skema scaling ini memungkinkan pertumbuhan bertahap tanpa over-provisioning infrastruktur di awal.
04Validation & Growth
4.1User Validation Plan
4.1.1 What we are testing
| # | Hypothesis | Why It's Risky | Pass Threshold |
|---|---|---|---|
| 1 | Pengguna mengalami stres, kecemasan, atau perubahan suasana hati secara rutin dan merasa perlu pelacakan | Jika masalah tidak cukup parah, mereka tidak akan menggunakan aplikasi secara konsisten | 6/10 menyebutkan pengalaman emosional negatif dalam 7 hari terakhir tanpa diminta |
| 2 | Pengguna saat ini tidak memiliki cara terstruktur untuk melacak suasana hati atau mencatat perasaan harian | Jika mereka sudah punya solusi (catatan, jurnal kertas), adopsi akan rendah | 7/10 menyatakan tidak menggunakan alat pelacakan suasana hati secara rutin |
| 3 | Pengguna dapat menyelesaikan check-in harian dan menerima notifikasi motivasi dalam waktu <3 menit | Jika UX terlalu rumit, engagement harian tidak akan terbentuk | 8/10 berhasil menyelesaikan dua tugas utama tanpa bantuan |
| 4 | Pengguna bersedia membayar IDR 59.000/bulan untuk fitur premium (meditasi, AI chatbot, analitik) | Harga ini 2x lebih tinggi dari rata-rata app freemium di Indonesia [Estimate] | 6/10 menyatakan "mungkin" atau "pasti" akan berlangganan jika fitur lengkap tersedia |
| 5 | Pengguna menemukan nilai pada notifikasi motivasi harian dan fitur jurnal digital | Jika fitur terasa generik atau tidak relevan, engagement turun | 7/10 menyatakan fitur notifikasi dan jurnal "berguna" atau "sangat berguna" |
4.1.2 Who to recruit
Screener Questions (ajukan via WhatsApp/Instagram DM):
- Apakah kamu pernah merasa cemas, stres, atau sedih yang berlangsung lebih dari beberapa hari dalam 3 bulan terakhir? (Disqualify jika: "Tidak pernah")
- Apakah kamu saat ini menggunakan aplikasi atau metode tertentu untuk melacak suasana hati atau mencatat perasaan harian? (Disqualify jika: "Ya, rutin menggunakan")
- Apakah kamu memiliki smartphone dan menggunakan aplikasi kesehatan atau kebiasaan harian (habit tracker)? (Disqualify jika: "Tidak")
- Apakah kamu bersedia berbicara 10 menit tentang pengalamanmu mengelola stres atau suasana hati?
Lokasi Rekrutmen (di Indonesia):
- Komunitas Facebook: Anak Muda & Kesehatan Mental Indonesia, Stress & Anxiety Support ID
- Grup LINE/Telegram: pencari kerja muda, mahasiswa psikologi, komunitas mindfulness
- Kampus: Universitas Indonesia, Universitas Gadjah Mada (via forum mahasiswa)
- Marketplace: Cariloker.id, Kalibrr (untuk profesional muda)
Insentif: IDR 25.000 via e-wallet (DANA/OVO) setelah sesi selesai.
4.1.3 The 10-minute session
| Minutes | Step | Script |
|---|---|---|
| 0–2 | Konteks | "Boleh cerita bagaimana kamu biasanya mengelola stres atau suasana hati saat merasa down?" |
| 2–8 | Tugas Prototipe | 1. "Bayangkan kamu merasa sedih karena masalah pribadi — tunjukkan bagaimana kamu akan mencatat perasaanmu hari ini."<br>2. "Kamu baru bangun pagi dan butuh semangat — bagaimana kamu akan menemukan pesan motivasi?" |
| 8–10 | Debrief | "Jika ada aplikasi yang bantu kamu lacak mood dan dapat notifikasi semangat tiap hari, apakah kamu akan pakai minggu depan? Dan jika fitur premium berbayar IDR 59.000/bulan, apakah kamu pertimbangkan?" |
4.1.4 Interview questions
- Bagaimana kamu biasanya menyadari kalau suasana hatimu sedang tidak baik?
- Apa yang biasanya kamu lakukan saat merasa cemas atau sedih berkepanjangan?
- Apakah kamu pernah mencoba mencatat perasaan harian? Jika ya, bagaimana caranya?
- Bagaimana kamu menanggapi pesan motivasi atau kutipan positif di media sosial?
- Apa yang membuatmu berhenti menggunakan aplikasi kesehatan atau habit tracker?
- Jika aplikasi bisa deteksi perubahan mood dari ceritamu, apakah kamu merasa itu membantu?
- Apa yang paling kamu butuhkan saat merasa down — dukungan emosional, saran, atau hanya tempat curhat?
- Bagaimana perasaanmu terhadap notifikasi harian dari aplikasi? Apakah kamu merasa terganggu atau terbantu?
- Apa yang akan membuat aplikasi seperti ini jadi tidak berguna bagimu? (disconfirming question)
- Jika kamu bisa ubah satu hal tentang cara kamu mengelola kesehatan mental, apa itu?
4.1.5 Synthesis grid
| Hypothesis | Evidence For | Evidence Against | Verdict |
|---|---|---|---|
| Problem severity | [Isi setelah wawancara] | [Isi setelah wawancara] | [Validated / Refuted / Unclear] |
| Current workaround | [Isi setelah wawancara] | [Isi setelah wawancara] | [Validated / Refuted / Unclear] |
| Core-journey usability | [Isi setelah wawancara] | [Isi setelah wawancara] | [Validated / Refuted / Unclear] |
| Willingness to pay | [Isi setelah wawancara] | [Isi setelah wawancara] | [Validated / Refuted / Unclear] |
| Channel & discovery value | [Isi setelah wawancara] | [Isi setelah wawancara] | [Validated / Refuted / Unclear] |
4.1.6 Decision rule
- BUILD jika ≥4 dari 5 hipotesis Validated
- SHARPEN jika 2–3 hipotesis Validated (fokus ulang fitur atau harga)
- WAIT jika ≤1 Validated (kembali ke problem validation)
running these 10 sessions takes about a week solo; a validation partner (like Synetica) can recruit, run, and synthesize them for you.
SereneJourney harus meluncurkan secara bertahap di Indonesia dengan strategi GTM yang berfokus pada validasi pengguna, akuisisi berbiaya rendah, dan retensi berbasis kebiasaan.
4.2Go To Market Plan
4.2.1 ICPs & personas
1. Remaja Sekolah (16–19 tahun)
- Profil: Pelajar SMA/sederajat di kota besar, aktif di media sosial, merasa tertekan oleh ekspektasi akademik dan sosial
- Pemicu pembelian: Mengalami kecemasan sebelum ujian, konflik hubungan, atau perasaan kesepian
- Motivasi: Ingin alat pribadi yang aman untuk mengekspresikan perasaan tanpa dihakimi
- Saluran utama: TikTok, Instagram, komunitas sekolah digital
2. Profesional Muda (25–35 tahun)
- Profil: Pekerja kantoran atau freelancer di Jakarta, Bandung, Surabaya; mengalami burnout dan tekanan kerja
- Pemicu pembelian: Merasa kewalahan, susah tidur, atau kehilangan motivasi kerja
- Motivasi: Mencari solusi harian untuk manajemen stres dan peningkatan produktivitas
- Saluran utama: LinkedIn, podcast, newsletter kesejahteraan kerja
3. Lansia Urban (60+ tahun)
- Profil: Lansia aktif di kota, memiliki akses smartphone, merasa kesepian setelah pensiun atau kehilangan pasangan
- Pemicu pembelian: Perasaan sendiri, kurang interaksi sosial, insomnia
- Motivasi: Ingin dukungan emosional harian dan aktivitas yang memberi makna
- Saluran utama: Komunitas lansia digital, keluarga sebagai pembeli
4. Veteran & Penderita PTSD (30–50 tahun)
- Profil: Mantan militer atau korban trauma, mencari alat pendukung pemulihan
- Pemicu pembelian: Flashback, kecemasan malam hari, kesulitan menjalin hubungan
- Motivasi: Mencari teknik pernapasan dan meditasi yang terstruktur
- Saluran utama: Kemitraan dengan LSM kesehatan mental
4.2.2 Launch phases
Pre-beta (Minggu 1–4)
- Tujuan: Validasi fitur inti dengan pengguna desain (design partners)
- Target: 10 pengguna dari komunitas kampus dan startup kesehatan mental
- Kriteria keluar: >80% menyelesaikan 3 sesi check-in harian dan memberikan umpan balik terstruktur
- Metrik: Retensi D7 > 60%, rata-rata sesi > 5 menit
Beta (Minggu 5–12)
- Tujuan: Uji skalabilitas akuisisi dan retensi
- Target: 500 pengguna terdaftar melalui kampanye mikro-influencer dan komunitas
- Kriteria keluar: >40% pengguna aktif mingguan (WAU), CAC < IDR 15.000
- Metrik: Konversi trial ke premium > 8%, churn D30 < 35%
GA (Bulan 4+)
- Tujuan: Peluncuran penuh dengan skalabilitas finansial
- Target: 5.000 pengguna aktif bulanan (MAU), 300 pelanggan premium
- Kriteria keluar: Biaya akuisisi terbayar dalam <6 bulan (LTV:CAC > 2.5)
- Metrik: Retensi D90 > 25%, churn bulanan < 8%
4.2.3 Customer acquisition funnel
flowchart TD
Start([Awareness]) --> Interest[Interest]
Interest --> Consideration[Consideration]
Consideration --> Trial{Trial/Evaluation}
Trial -->|Success| Purchase[Purchase]
Trial -->|Fail| Nurture[Nurture]
Purchase --> Activation[Activation]
Activation --> Retention[Retention]
Retention --> Expansion[Expansion]
Nurture --> Consideration
PreBeta[Pre-Beta Phase] --> Start
Beta[Beta Phase] --> Interest
GA[GA Phase] --> Consideration→ validate: Angka ini berdasarkan pencarian organik dan kampanye mikro-influencer di Indonesia dengan kompetisi rendah untuk kata kunci seperti "tes kecemasan online" (20 pencarian/bulan) dan "deteksi depresi" (10 pencarian/bulan). [Estimate]
Key insight: Meskipun volume pencarian rendah, potensi viralitas tinggi melalui komunitas digital dan rekomendasi teman — fokus pada engagement rate, bukan volume traffic mentah.
4.2.4 Channel mix & tactics
| Saluran | Taktik | Anggaran (IDR) | CAC Target (IDR) | Keterangan |
|---|---|---|---|---|
| Owned | Onboarding email series, push notification, referral program | 0 | 0 | Gunakan Lovable Cloud untuk otentikasi dan sinkronisasi data |
| Earned | PR dengan komunitas kesehatan mental, UGC campaign #PerjalananTenang | 15.000.000 | <5.000 | Target media: Kumparan, Tirto, komunitas Gen Z |
| Paid | TikTok & Instagram Ads (remaja), LinkedIn Ads (profesional) | 60.000.000 | <25.000 | A/B test konten emosional vs edukatif |
| Partnership | Kolaborasi dengan psikolog, sekolah, dan perusahaan (wellness program) | 10.000.000 | <10.000 | Program "Mentor Mental" untuk sekolah |
| Community | Moderasi forum pengguna, sesi Q&A mingguan dengan ahli | 5.000.000 | 0 | Bangun rasa kepemilikan pengguna |
Total anggaran GTM 90 hari pertama: IDR 90.000.000
Tim: 1 GTM lead, 1 content creator, 1 community manager, 1 freelance influencer coordinator
Key insight: Kombinasi earned dan partnership memberikan CAC terendah dan kepercayaan tertinggi di pasar Indonesia, di mana rekomendasi sosial sangat berpengaruh terhadap adopsi aplikasi kesehatan.
4.2.5 KPI dashboard
| Kategori | Metrik | Target (90 hari) | Sumber Data |
|---|---|---|---|
| Akuisisi | Jumlah pengguna baru | 5.000 | Analytics, Lovable Cloud |
| CAC | < IDR 25.000 | Marketing spend / new users | |
| Aktivasi | DAU/MAU ratio | > 30% | In-app analytics |
| Onboarding completion rate | > 70% | User journey tracking | |
| Revenue | Konversi ke premium | > 8% | In-app purchase logs |
| MRR | IDR 3.540.000 (60 x 59.000) | Payment gateway | |
| Retensi | Retensi D7 | > 50% | Cohort analysis |
| Retensi D30 | > 35% | User activity logs | |
| Engagement | Rata-rata sesi/hari | > 1.5 | Session tracking |
| Jurnal entry per minggu | > 3 | Journal database |
Key insight: Retensi dan frekuensi penggunaan adalah indikator utama keberhasilan — aplikasi kesehatan mental hidup dari kebiasaan harian, bukan sekadar unduhan.
4.2.6 Risks & mitigations
| Risiko | Dampak | Mitigasi |
|---|---|---|
| Regulasi kesehatan mental belum jelas di Indonesia | Potensi pemblokiran atau reputasi buruk | Patuhi UU No. 36/2009 dan UU No. 17/2023; hindari klaim medis; konsultasi dengan ahli hukum kesehatan digital [Validated] |
| Stigma terhadap kesehatan mental | Rendahnya adopsi terutama di luar kota besar | Gunakan bahasa netral seperti "kesejahteraan emosional", hindari istilah "depresi" di iklan umum |
| Ketergantungan pada AI chatbot | Risiko kesalahan diagnosis atau saran berbahaya | Batasi chatbot untuk dukungan emosional, bukan diagnosis klinis; sertakan disclaimer dan tombol "hubungi profesional" |
| Persaingan dengan aplikasi global (Calm, Headspace) | Pengguna lebih percaya merek internasional | Fokus pada konten lokal, bahasa Indonesia, dan konteks budural (misalnya: dukungan untuk masalah keluarga, keagamaan) |
| Keterbatasan literasi digital lansia | Kesulitan adopsi oleh segmen lansia | Desain UI sangat sederhana; dukungan keluarga sebagai "co-pilot"; video tutorial pendek |
Key insight: Keberhasilan di pasar Indonesia bergantung pada kepercayaan lokal, aksesibilitas, dan relevansi budaya — bukan hanya fitur teknis. SereneJourney harus tampil sebagai teman yang peduli, bukan alat klinis.
4.2.7 Sources
- https://www.insights10.com/report/indonesia-mental-health-apps-market-analysis
- https://www.imarcgroup.com/indonesia-mental-health-market
- https://solve.mit.edu/challenges/2024-global-health-challenge/solutions/92283
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
- https://www.frontiersin.org/journals/public-health/articles/10.3389/fpubh.2025.1667726/full
- https://news.sah.co.id/regulasi-terkait-bisnis-aplikasi-kesehatan-mental-dan-konseling-online-di-indonesia
SereneJourney needs to convert mental health awareness into user activation through low-cost digital channels and a product-led growth motion.
4.3Sales And Marketing
4.3.1 Revenue motion
SereneJourney akan menggunakan pendekatan Product-Led Growth (PLG) dengan motion self-serve, dijalankan oleh tim pendiri (1–2 orang). Calon pengguna menemukan aplikasi melalui kampanye digital atau rujukan teman, mencoba fitur dasar (check-in harian, latihan napas, notifikasi motivasi) secara gratis, lalu diarahkan ke fitur premium (meditasi terpandu, AI chatbot, tren kesehatan mental) melalui pengalaman dalam aplikasi. Konversi terjadi saat pengguna merasa manfaat personal dari pelacakan emosi dan dukungan AI, mendorong upgrade otomatis tanpa intervensi penjualan langsung. Pendekatan ini sesuai dengan target pasar Indonesia yang mobile-first dan sensitif terhadap harga, serta memungkinkan skalabilitas dengan biaya rendah.
4.3.2 Marketing channel matrix
| Channel | Target Segment | Monthly Cost (IDR) | Expected CAC (IDR) | First Experiment | Kill Criteria |
|---|---|---|---|---|---|
| Instagram Reels & Stories | Remaja & profesional muda | 3.000.000 | 15.000 | Posting 3 konten edukasi tentang deteksi stres + link ke unduhan → target: 200 klik dalam 2 minggu | <50 klik per minggu atau CAC >25.000 IDR setelah 4 minggu |
| TikTok Micro-Influencers (kolaborasi 3 creator) | Remaja & Gen Z | 6.000.000 | 12.000 | 1 video per creator menunjukkan “Hari Tanpa Cinta? SereneJourney Bantu Pulih” → target: 5% engagement rate | Engagement <3% rata-rata atau konversi <1% ke registrasi |
| WhatsApp Broadcast (komunitas kampus & kantor) | Mahasiswa & profesional | 500.000 | 2.500 | Kirim pesan ke 5 grup (total 500 orang) dengan splash screen preview + link → target: 10% klik | <5% klik atau banyak blokir/unsubscribe |
| Google Play Store Optimization (ASO) | Pengguna aktif cari “kesehatan mental” | 0 | 0 (organik) | Optimasi deskripsi dengan kata kunci: “deteksi stres”, “jurnal perasaan”, “meditasi harian” → target: naik 20% ke posisi pencarian top 10 | Tidak ada perubahan posisi setelah 60 hari |
| LinkedIn Articles (untuk profesional) | Profesional & manajer | 0 | 0 | Publikasi artikel “Burnout di Tempat Kerja: Solusi Digital dari Indonesia” → target: 1.000 tayangan & 50 registrasi | <200 tayangan atau 0 registrasi dalam 30 hari |
Catatan: CAC (Customer Acquisition Cost) = Total biaya kampanye / jumlah pengguna yang terdaftar dari kampanye tersebut.
4.3.3 Content & awareness plan
- Edukasi deteksi dini lewat Instagram Reels: “Apa yang kamu rasakan hari ini?” → menjawab kebutuhan remaja yang merasa kesepian atau cemas
- Konten harian di WhatsApp: “Kutipan Pemulihan Hari Ini” + link ke fitur jurnal → memicu kebiasaan penggunaan harian
- Video TikTok emosional: “Ditinggal Pacar? Ini yang Bisa Kamu Lakukan Sekarang” → menyentuh momen krisis personal
- Artikel LinkedIn: “Mengukur Mood Harian untuk Cegah Burnout” → menarik profesional yang ingin produktivitas & keseimbangan
- Preview splash screen di semua saluran: tampilkan UI modern dan animasi napas → tingkatkan persepsi kualitas aplikasi
4.3.4 Sales process
| Stage | Exit Criteria | Owner | Tools |
|---|---|---|---|
| Prospek | Mengklik link kampanye atau mengunduh aplikasi | Founder | Google Analytics, Meta Ads Manager |
| Meeting | Membuka aplikasi >3 kali dalam 7 hari | Founder | Mixpanel, Firebase |
| Proposal | Membuka halaman upgrade premium | Founder | In-app analytics, Lovable Cloud |
| Closed-won | Berlangganan Premium (IDR 59.000/bulan) | Founder | Stripe, App Store/Play Store IAP → validate |
Catatan: Konversi dari Meeting ke Proposal → validate karena tergantung pada kualitas onboarding dan nilai yang dirasakan dalam 7 hari pertama.
4.3.5 Pricing conversations
- Jika pengguna protes harga IDR 59.000: tawarkan paket 3 bulan hanya IDR 149.000 (hemat 25%) sebagai insentif komitmen awal
- Untuk komunitas (kampus/kantor): tawarkan pilot gratis 14 hari untuk 10 orang → jika 70% aktif, lanjut ke paket grup
- Terima pembayaran via GoPay, OVO, dan DANA — metode lokal yang umum di Indonesia
- Tidak ada diskon permanen, tapi beri badan “Early Supporter” untuk pengguna bulan pertama → nilai emosional > potongan harga
4.3.6 90-day calendar
| Weeks | Marketing Focus | Sales Focus | KPI Target |
|---|---|---|---|
| 1–4 | Launch Instagram & TikTok; ASO; WhatsApp broadcast | Onboard 500 pengguna aktif | 1.000 download, CAC <20.000 IDR |
| 5–8 | Kolaborasi mikro-influencer; edukasi deteksi stres | Identifikasi 50 calon premium | 200 pengguna aktif harian |
| 9–12 | Retargeting ads; LinkedIn content | Konversi 10 pengguna ke Premium | 5 closed-won, LTV >180.000 IDR |
4.3.7 Budget summary
Total monthly spend: IDR 9.500.000
Expected monthly pipeline: 200 prospek → 5 paying users
[Estimate] Berdasarkan konversi funnel dan biaya kampanye realistis untuk pasar Indonesia.
SereneJourney perlu membangun kemitraan strategis dengan komunitas dan platform lokal untuk distribusi awal, serta memperkuat retensi lewat aktivasi cepat dan intervensi berbasis perilaku.
4.4Partnerships And Retention
4.4.1 Partnership map
| Partner Type | Example Targets | Value Exchange (what they get / what we get) | Priority | First Approach |
|---|---|---|---|---|
| Komunitas Kesehatan Mental Lokal | Into The Light Indonesia, Ruang Psikologi | Mereka dapat konten edukasi & akses eksklusif untuk anggota; kami dapat distribusi ke audiens yang sadar kesehatan mental | Tinggi | Tawarkan modul edukasi gratis + co-branded campaign untuk Bulan Kesehatan Mental |
| Universitas & Bimbingan Konseling Mahasiswa | UI, UGM, ITB (Pusat Konseling Mahasiswa) | Mereka dapat alat pendukung layanan konseling; kami dapat akses ke mahasiswa sebagai pengguna awal | Tinggi | Pilot program “Mental Wellness Pack” untuk mahasiswa baru 2026/2027 |
| Platform Kesehatan Digital | Halodoc, Alodokter | Mereka dapat fitur pendukung non-klinis; kami dapat integrasi sebagai bagian dari paket kesehatan holistik | Sedang | Ajukan kolaborasi konten dan referral link dari artikel kesehatan mental mereka |
| Aplikasi Produktivitas & HR Tech | Sleekr, Talenta by Mekari | Mereka dapat fitur kesejahteraan karyawan; kami dapat akses ke profesional perkotaan | Sedang | Tawarkan versi korporat SereneJourney Premium untuk karyawan |
| Influencer Kesehatan Mental | dr. Theodora, Psikolog Nadya Karina | Mereka dapat konten autentik; kami dapat kepercayaan dan jangkauan ke Gen Z & milenial | Tinggi | Kampanye “30 Hari Lebih Tenang” dengan tantangan harian di TikTok & Instagram |
Key insight: Kemitraan dengan komunitas dan institusi pendidikan memberi akses langsung ke pengguna yang rentan secara emosional dan tinggi kebutuhan dukungannya — ideal untuk aktivasi awal.
4.4.2 Partnership motion
- Pemilik: Growth Lead (dengan dukungan dari Community & PR Manager)
- Pitch: “SereneJourney membantu anggota Anda melacak kesehatan mental harian dan mendapat dukungan emosional otomatis — kami ingin berbagi alat ini secara eksklusif dengan komunitas Anda.”
- Pilot partnership: 3 bulan co-branded campaign dengan akses gratis Premium untuk 500 pengguna pertama dari mitra, dilengkapi dashboard dampak (aktivasi, retensi, mood trend rata-rata).
- Fokus awal pada 2–3 mitra dengan audiens paling relevan (mahasiswa & komunitas) sebelum ekspansi ke korporat.
4.4.3 Onboarding → activation
| Step | User Action | Success Signal | If Stuck |
|---|---|---|---|
| 1. Splash Screen & Onboarding | Lewati animasi pembuka, pilih tujuan (misal: “Kurangi Kecemasan”) | Menyelesaikan onboarding dalam ≤3 menit | Kirim notifikasi push: “Ayo mulai perjalanan tenangmu — hanya 1 menit lagi!” |
| 2. Autentikasi | Daftar dengan email atau Lovable Cloud | Akun terverifikasi dan login | Tawarkan login cepat via Google setelah 10 menit tidak aktif |
| 3. Mood Check-in Pertama | Jawab “Bagaimana perasaanmu hari ini?” + deskripsi singkat | MoodEntry dibuat dalam 24 jam pertama | Trigger chatbot: “Kita semua punya hari yang berat. Mau cerita sedikit?” |
| 4. Jurnal Pertama | Tulis refleksi >50 kata dengan mood tag | JournalEntry dibuat | Tampilkan modal: “Ceritamu penting. Simpan perasaanmu di sini.” |
| Activation Metric | Penyelesaian keempat langkah di atas dalam 24 jam pertama | Target: 45% → validate |
Key insight: Aktivasi tidak terjadi saat daftar, tapi saat pengguna menulis perasaannya untuk pertama kalinya — momen itu adalah "aha" emosional.
4.4.4 Retention plays
| Churn Risk | Early Warning Signal | Play | Owner |
|---|---|---|---|
| Pengguna tidak kembali setelah hari pertama | Tidak ada aktivitas >48 jam | Kirim notifikasi personal: “Kami merindukanmu. Hari ini kamu sedang apa?” + streak reminder | Growth Lead |
| Penurunan frekuensi check-in | <3 mood entry dalam minggu pertama | Unlock badge “Pencatat Pertama” + rekomendasi jurnal tema | Product Manager |
| Tidak menggunakan fitur inti (meditasi, napas) | Nol sesi latihan dalam 7 hari | Rekomendasi push: “Coba latihan napas 1 menit — untuk tenangkan pikiranmu sekarang” | Content Strategist |
| Akun tidak sinkron lintas perangkat | Login di web tapi tidak di mobile | Email: “Lanjutkan perjalananmu di HP-mu. Sinkronkan sekarang.” | Tech Support |
| Penurunan mood rata-rata selama 7 hari | MoodTrend turun >20% dari baseline | AI chatbot tawarkan sesi meditasi darurat + saran konselor lokal | Mental Health Advisor |
| Tidak buka notifikasi >72 jam | Token notifikasi mati atau tidak dibuka | Ganti saluran ke WhatsApp reminder (opsi di pengaturan) | Growth Lead |
4.4.5 Expansion & referral
- Upsell path: Pengguna Free → coba Premium gratis 7 hari saat streak mencapai 7 hari → unlock fitur AI diagnosis & meditasi eksklusif.
- Referral mechanic: Undang 3 teman → dapatkan 1 bulan Premium gratis (IDR 59.000 value).
- Gamifikasi: Bagikan pencapaian “Streak 7 Hari” di media sosial → unlock quote eksklusif dari psikolog ternama.
- Korporat: Paket “Team Serenity” untuk perusahaan (IDR 39.000/orang/bulan, minimal 10 karyawan).
4.4.6 Metrics
| Metric | Definition | Target | Review Cadence |
|---|---|---|---|
| Activation Rate | Persentase pengguna yang mencapai “aha moment” dalam 24 jam | 45% → validate | Mingguan |
| Retention (Week-4) | Pengguna aktif yang masih gunakan app di minggu ke-4 | 30% → benchmark | Mingguan |
| Referral Rate | Rata-rata undangan berhasil per pengguna aktif | 0,8 → target | Bulanan |
| Push Open Rate | Persentase notifikasi harian yang dibuka | 65% → estimate | Mingguan |
Key insight: Retensi 4 minggu 30% adalah ambang realistis untuk aplikasi kesehatan mental di Indonesia [Benchmark], terutama jika aktivasi awal kuat dan notifikasi relevan secara emosional.
SereneJourney needs to scale revenue and user base in Indonesia through a balanced mix of digital acquisition, retention-driven monetization, and strategic partnerships — all grounded in local market dynamics and unit economics.
4.5Business Scaling Strategy
4.5.1 Scaling pillars
Revenue Engine SereneJourney akan mengandalkan model freemium dengan konversi ke tier Premium sebesar IDR 59.000/bulan. Strategi pendapatan berfokus pada tiga pilar: konversi organik dari fitur premium, upsell berbasis pencapaian (misalnya, unlock advanced mood insights), dan promosi waktu terbatas (contoh: diskon 30% untuk langganan tahunan selama kampanye kesehatan mental nasional). Fitur seperti AI chatbot dan rekomendasi konten personal akan dikunci di tier Premium, menciptakan insentif kuat untuk upgrade. Target konversi: 5% dari MAU dalam 12 bulan, naik ke 7% pada bulan ke-24 [Target].
Channels & Awareness Kami akan fokus pada saluran digital berbiaya rendah dan berdampak tinggi di Indonesia:
- TikTok & Instagram Reels: kampanye edukatif pendek dengan tema “1 Menit Lebih Tenang” untuk menjangkau remaja dan profesional muda.
- Konten kolaboratif dengan psikolog lokal dan influencer mikro (#MentalHealthCheckIn) untuk membangun kepercayaan.
- ASO & SEO lokal: optimasi kata kunci seperti “deteksi depresi” (10 pencarian/bulan) dan “tes kecemasan online” (20 pencarian/bulan) meskipun volume rendah, karena kompetisi rendah [Retrieved: Google Data Pack].
- Kemitraan dengan universitas dan perusahaan (wellness program) untuk distribusi B2B lite.
Uji coba awal akan dialokasikan ke TikTok (IDR 30 juta) dan Instagram (IDR 20 juta) selama 3 bulan pertama [Estimate].
Retention & Support Retensi menjadi tulang punggung LTV. Kami akan aktifkan:
- Notifikasi push harian pukul 08.00 dengan kutipan motivasi dan reminder check-in.
- Sistem streak dan badge untuk mendorong konsistensi.
- Dukungan pelanggan berbasis chatbot + tim kecil human support (3 orang) untuk menangani isu sensitif.
Churn bulanan ditargetkan di bawah 8% pada bulan ke-6 dan 5% pada bulan ke-12 [Target]. Retention dipantau melalui WAU/MAU ratio, dengan target 45% pada bulan ke-6 dan 60% pada bulan ke-12.
Ops & Finance Operasi akan dijalankan secara lean dengan otomatisasi maksimal. Penggunaan Lovable Cloud untuk autentikasi dan sinkronisasi data lintas perangkat memastikan skalabilitas infrastruktur. Semua transaksi dan analitik keuangan terpusat dalam dashboard real-time. Gross margin ditargetkan 85% karena biaya variabel rendah (hanya penyimpanan dan notifikasi) [Estimate].
Compliance Kami mematuhi UU No. 36 Tahun 2009 tentang Kesehatan dan UU No. 17 Tahun 2023, dengan fokus pada perlindungan data pengguna dan batasan layanan (bukan pengganti konsultasi medis). Semua konten AI diberi disclaimer: “dukungan emosional, bukan diagnosis klinis” [Validated]. Audit kepatuhan dilakukan tiap 6 bulan.
4.5.2 Phased plan
| Phase | Stage Gate | MAU | WAU/MAU | CAC (IDR) | Payback (bln) | Premium Conv. | Churn (bln) |
|---|---|---|---|---|---|---|---|
| 0–3 bulan | MVP live, uji coba saluran | 10.000 | 30% | 25.000 | 8 | 2% | 12% |
| 3–6 bulan | CAC < IDR 30k, retensi stabil | 50.000 | 45% | 28.000 | 6 | 3.5% | 9% |
| 6–12 bulan | LTV > 3× CAC, ekspansi B2B | 200.000 | 55% | 30.000 | 5 | 5% | 7% |
| 12–24 bulan | Monetisasi penuh, ekspansi regional | 500.000 | 60% | 35.000 | 4 | 7% | 5% |
Stage gates:
- 0–3: MVP harus mencapai engagement rate >40% dalam 7 hari pertama.
- 3–6: CAC harus turun atau stabil di bawah IDR 30.000 dengan payback <6 bulan sebelum alokasi anggaran tambahan.
- 6–12: Harus ada minimal 3 kemitraan korporat aktif sebelum ekspansi ke segmen lansia dan veteran.
- 12–24: Ekspansi ke Malaysia dan Filipina hanya jika LTV:CAC > 4.
Key insight: Skala hanya layak jika retensi dan CAC terkendali — pertumbuhan cepat tanpa fondasi retensi akan merusak unit economics.
4.5.3 Unit economics trajectory
| Metric | Asumsi | Target (bln 12) | Monitoring |
|---|---|---|---|
| CAC | IDR 30.000 (rata-rata setelah uji coba) | IDR 30.000 | Mingguan, per saluran |
| ARPU | 5% konversi × IDR 59.000 = IDR 2.950 | IDR 3.500 (dengan annual plan) | Bulanan |
| Gross Margin | Biaya server & notifikasi <15% | 85% | Otomatis via dashboard |
| Payback Period | CAC / (ARPU × margin) | ≤5 bulan | Setiap 30 hari |
| LTV | ARPU × (1 / churn) × margin | IDR 84.000 (churn 5%) | Kuartalan |
Asumsi kunci:
- Churn 5% = pengguna aktif yang tidak check-in >24 jam dan tidak kembali dalam 7 hari.
- ARPU meningkat karena adopsi langganan tahunan (diskon 20%).
- LTV:CAC > 3 menjadi batas minimum untuk justifikasi scaling [Target].
Key insight: Bahkan dengan CAC rendah, LTV harus diperbesar melalui retensi — bukan hanya akuisisi.
4.5.4 Org & capacity plan
| Peran | Waktu Rekrut | Ramp (bln) | Target Produktivitas |
|---|---|---|---|
| Digital Marketing Specialist | Bulan 1 | 1 | CAC < IDR 30.000 dalam 90 hari |
| Content Creator (Mental Health) | Bulan 3 | 2 | 15 konten/minggu, engagement >8% |
| Customer Support Lead | Bulan 4 | 1 | Response time <2 jam, CSAT >4.5/5 |
| Partnership Manager | Bulan 6 | 1 | 3 kemitraan korporat/tahun |
| Data Analyst | Bulan 9 | 1 | Laporan LTV:CAC mingguan, rekomendasi aksi |
Tim awal: 1 COO/CRO hybrid (founder), 1 marketer, 1 content writer (freelance). Rekrutmen bertahap berdasarkan bottleneck operasional, bukan pertumbuhan semata. Misalnya, Partnership Manager baru direkrut setelah pipeline B2B mencapai 10 prospek aktif.
Key insight: Pertumbuhan tim harus mengikuti kebutuhan operasional — bukan mengejar skalabilitas dini yang boros.
4.5.5 Budget & investment
| Kategori | 0–6 bln (IDR) | 6–12 bln (IDR) | 12–24 bln (IDR) | Catatan |
|---|---|---|---|---|
| Digital Ads (TikTok, IG) | 50.000.000 | 120.000.000 | 300.000.000 | Variabel, sesuai performa |
| Influencer & Content | 30.000.000 | 60.000.000 | 150.000.000 | Mikro-influencer, psikolog |
| Events (kampanye kesehatan) | 20.000.000 | 40.000.000 | 80.000.000 | Webinar, seminar kampus |
| CS Tooling (chatbot, helpdesk) | 15.000.000 | 10.000.000 | 15.000.000 | Opex tetap setelah setup |
| Total | 115.000.000 | 230.000.000 | 545.000.000 |
Biaya pengembangan awal (MVP) sudah selesai di luar anggaran ini. Biaya variabel utama: notifikasi push (Capacitor) dan penyimpanan cloud (Lovable Cloud), diperkirakan <IDR 5 juta/bulan pada 200.000 MAU [Estimate].
Key insight: Anggaran iklan harus fleksibel — dialihkan ke saluran dengan CAC terendah dan retensi tertinggi.
4.5.6 Risks & contingencies
| Risiko | Indikator Awal | Lever Cadangan |
|---|---|---|
| Saluran digital tidak efektif (CAC tinggi) | CAC > IDR 40.000 selama 2 bulan | Alihkan ke kemitraan B2B dan komunitas offline |
| Regulasi ketat muncul | Peringatan dari Kemenkes atau media | Aktifkan legal advisory, kurangi klaim diagnostik |
| Konten tidak resonan | Engagement <30%, churn >12% | Libatkan psikolog lokal untuk kurasi konten |
| Burnout tim pendukung | CSAT <4.0, response time >4 jam | Otomasi lebih lanjut, tambah staf outsourcing |
Fallback strategy: Jika konversi premium <3% pada bulan ke-6, luncurkan freemium tier baru (Basic) dengan fitur terbatas dan uji coba premium 7 hari otomatis setelah pencapaian streak.
Key insight: Skala harus dihentikan sementara jika CAC payback melebihi 6 bulan — pertumbuhan yang tidak berkelanjutan akan menghabiskan modal tanpa hasil.
4.5.7 Sources
- https://www.insights10.com/report/indonesia-mental-health-apps-market-analysis
- https://www.imarcgroup.com/indonesia-mental-health-market
- https://solve.mit.edu/challenges/2024-global-health-challenge/solutions/92283
- https://www.kenresearch.com/indonesia-behavioral-health-care-software-services-market
- https://www.frontiersin.org/journals/public-health/articles/10.3389/fpubh.2025.1667726/full
- https://news.sah.co.id/regulasi-terkait-bisnis-aplikasi-kesehatan-mental-dan-konseling-online-di-indonesia
SereneJourney perlu mengelola risiko tinggi terkait regulasi kesehatan mental, akurasi diagnosis berbasis AI, dan retensi pengguna, terutama karena beroperasi di pasar Indonesia yang sensitif dan kompetitif.
4.6Risk Register
4.6.1 Risk framework
Risiko dinilai berdasarkan Likelihood (Low/Medium/High) dikalikan Impact (Low/Medium/High). Risiko dengan skor High/High menjadi prioritas utama karena berpotensi menghentikan proyek. Penilaian dibuat berdasarkan konteks pasar Indonesia, kapasitas tim kecil (1–3 orang), dan kompleksitas teknis fitur AI serta kesehatan digital.
| ID | Kategori | Risiko | Kemungkinan | Dampak | Mitigasi | Early Warning Signal |
|---|---|---|---|---|---|---|
| R-01 | Regulasi | Pelanggaran UU No. 36/2009 atau UU No. 17/2023 terkait layanan kesehatan mental digital | High | High | Libatkan konsultan hukum kesehatan digital sejak MVP; batasi diagnosis sebagai "skrining awal", bukan diagnosis medis | Permintaan audit dari Kemenkes atau Kominfo |
| R-02 | Produk | Diagnosis AI tidak akurat atau menyesatkan pengguna | High | High | Gunakan algoritma berbasis skala klinis (PHQ-9, GAD-7); tambahkan disclaimer "bukan pengganti psikolog" | Laporan pengguna tentang hasil diagnosis yang tidak relevan |
| R-03 | Teknis | Kegagalan autentikasi atau sinkronisasi data via Lovable Cloud | Medium | High | Uji integrasi Lovable Cloud secara berkala; siapkan fallback lokal sementara | Pengguna melaporkan kehilangan data jurnal atau mood log |
| R-04 | Operasional | Ketergantungan pada konten motivasi harian yang tidak relevan secara budaya | Medium | Medium | Libatkan psikolog lokal dan penulis konten Indonesia dalam kurasi kutipan | Tingkat engagement notifikasi < 30% |
| R-05 | Keuangan | Konversi ke tier Premium < 2% (di bawah breakeven) | Medium | High | Uji A/B pricing (IDR 49.000 vs 59.000); tawarkan trial 7 hari | Pendapatan bulanan < IDR 150 juta pada bulan ke-6 |
| R-06 | Produk | Retensi rendah karena kebiasaan harian (streak) tidak terbentuk | High | Medium | Optimalkan notifikasi push dengan personalisasi waktu; tambahkan reminder malam hari | 70% pengguna tidak check-in >3 hari setelah onboarding |
| R-07 | Teknis | Performa AI chatbot lambat atau respons tidak empatik | Medium | High | Gunakan model NLP ringan (distilBERT); latih dengan dataset percakapan Indonesia | Skor kepuasan chatbot < 3/5 dalam survei pengguna |
| R-08 | Pasar | Persaingan dengan Teduh atau TenangAI menekan akuisisi pengguna | High | Medium | Fokus pada diferensiasi: mood tracking visual & breathing exercise interaktif | CAC meningkat >50% dalam 3 bulan pertama |
| R-09 | Operasional | Keterlambatan rilis fitur meditasi karena lisensi audio | Low | Medium | Gunakan musik royalty-free atau kolaborasi dengan musisi lokal | Fitur meditasi tertunda >2 minggu dari roadmap |
| R-10 | Regulasi | Data sensitif kesehatan mental bocor atau disalahgunakan | High | High | Terapkan enkripsi end-to-end; audit keamanan berkala; patuhi PDPA | Laporan kebocoran data di media atau forum pengguna |
4.6.2 Risk matrix
quadrantChart
title Risk Matrix
x-axis Low Likelihood --> High Likelihood
y-axis Low Impact --> High Impact
quadrant-1 Mitigate Now
quadrant-2 Monitor Closely
quadrant-3 Accept
quadrant-4 Contingency Plan
R-01: [0.8, 0.9]
R-02: [0.75, 0.85]
R-03: [0.4, 0.8]
R-04: [0.5, 0.5]
R-05: [0.5, 0.75]
R-06: [0.7, 0.45]
R-07: [0.45, 0.8]
R-08: [0.65, 0.5]
R-09: [0.3, 0.4]
R-10: [0.75, 0.9]4.6.3 Top 3 risks
- R-01 (Regulasi): Bisa menghentikan operasi jika aplikasi dianggap memberikan layanan konseling tanpa izin. Mitigasi utama: batasi klaim sebagai skrining, bukan diagnosis medis. Diuji di Gate 1: Validasi Legal pada akhir MVP.
- R-02 (Diagnosis AI): Hasil salah bisa membahayakan pengguna dan merusak reputasi. Mitigasi utama: gunakan skala klinis tervalidasi dan sertakan disclaimer. Diuji di Hypothesis 2: "Apakah hasil assessment relevan menurut psikolog lokal?"
- R-10 (Kebocoran data): Kehilangan kepercayaan pengguna di pasar yang sensitif terhadap privasi. Mitigasi utama: enkripsi data dan audit keamanan eksternal. Diuji di Gate 2: Keamanan & Kepatuhan sebelum rilis Phase 2.
4.6.4 Review cadence
Tinjau ulang Risk Register setiap kuartal, atau lebih cepat jika terjadi early warning signal. Titik evaluasi kunci: akhir MVP (Gate 1), sebelum peluncuran fitur AI (Gate 2), dan setelah 3 bulan operasi penuh.