Kembali ke galeri
ClientBahasa Indonesia

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

DimensionDetail
ProductSereneJourney — Aplikasi kesehatan mental dengan deteksi dini, pelacakan suasana hati, dan dukungan harian berbasis AI
Market & geographyKesehatan digital di Indonesia
Primary segmentRemaja dan profesional muda yang mengalami stres, kecemasan, atau kesepian
Revenue modelFreemium (Free + Premium subscription)
StagePre-MVP
Headline target10.000 pengguna aktif bulanan dalam 6 bulan setelah peluncuran

1.2Idea Scorecard

72STRONG
Opportunity
64PROMISING
Problem Severity
81STRONG
Feasibility
70STRONG
Timing
SereneJourney taps into Indonesia’s growing digital mental health demand, but low search volumes suggest awareness is still nascent — early mover advantage exists with education-led GTM.

1.2.1 Business fit

DimensionRatingReasoning
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 DifficultyMediumFull-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 ReadinessMediumCore features are scoped in MVP, but user acquisition will require behavior change — Indonesians currently search minimally for mental wellness tools → validate
Founder RequirementsAI/ML modeling, mobile UX designRequires 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.

MAIN IDEA

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.

Gabungkan deteksi mental berbasis AI dengan pengalaman pengguna modern untuk intervensi dini.
Bangun keterlibatan harian melalui notifikasi motivasi, jurnal, dan latihan pernapasan.
Gunakan data emosional jangka panjang untuk personalisasi dan prediksi tren kesehatan mental.

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

MetrikTargetWaktu
Jumlah pengguna aktif bulanan (MAU)100.000Q4 2026
Konversi ke tier Premium5% dari pengguna aktifQ1 2027
Rata-rata streak check-in harian7 hariQ4 2026
Tingkat retensi 30 hari40%Q1 2027
Skor kepuasan pengguna (CSAT)≥ 4.5 dari 5Setiap kuartal
Jumlah notifikasi harian yang dikirim80.000 per hariQ4 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.

MAIN IDEA

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.

Indonesia’s mental health market is projected to reach IDR 1.180 triliun by 2034, driven by rising awareness and digital adoption.
The app targets underserved groups like teens, professionals, and elderly users with personalized, culturally relevant support.
With low search competition and high economic burden of mental illness, SereneJourney can capture early market share through differentiation in AI diagnostics and engagement features.

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

SegmentIndikator UkuranRasa Sakit Utama / Pekerjaan yang Harus DilakukanKemauan Membayar
Remaja dengan kecemasan sekolah43 juta pelajar menengah & atas (Kemendikbud)Mengelola stres ujian, tekanan sosial, dan ekspektasi akademikIDR 0 (awalnya), upgrade ke premium jika terbukti efektif
Profesional dengan stres kerja98 juta pekerja formal (BPS 2025)Mengatasi burnout, keseimbangan kerja-hidup, dan tekanan deadlineIDR 59.000/bulan (nilai wajar untuk kesejahteraan kerja)
Lansia menghadapi kesepian25 juta penduduk >60 tahun (BPS)Isolasi sosial, penurunan kesehatan mental pasca-pensiunRendah (IDR 0–29.000), tetapi tinggi jika didukung keluarga
Veteran dengan PTSD~50.000 veteran aktif (Kemhan)Trauma, gangguan tidur, kesulitan reintegrasi sosialDidanai pemerintah atau asuransi (potensi B2G)
Pengguna mindfulness harian12 juta pengguna aplikasi kesehatan digital (estimasi)Konsistensi latihan, motivasi harian, pelacakan progresIDR 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 PasarBuktiImplikasiKeyakinan
Pencarian "kesehatan mental"Volume tinggi (kata kunci umum) → validateMinat publik tinggi, tetapi perlu segmentasi lebih dalam[Pending]
Pencarian "deteksi depresi"10 pencarian/bulan, kompetisi MEDIUMPermintaan spesifik untuk deteksi dini, meski volumenya rendah[Validated]
Pencarian "tes kecemasan online"20 pencarian/bulan, tren menurunAda minat, tetapi mungkin tergantikan oleh aplikasi atau layanan lain[Validated]
Pertumbuhan pasar digital healthAsia Tenggara: USD 18.4 miliar (2025) → USD 26.5 miliar (2032)Tren makro mendukung adopsi aplikasi kesehatan digital[Benchmark]
Beban ekonomi depresiIDR 463.811 miliar/tahunMenunjukkan 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 SakitSolusi yang DiusulkanHasil yang DiharapkanBukti
Kurangnya akses ke psikologDeteksi awal berbasis AI + saran tindakanPengguna mendapatkan wawasan awal tanpa antrean[Validated]
Kurangnya konsistensi dalam latihan mindfulnessNotifikasi motivasi harian + streak trackingPeningkatan engagement dan kebiasaan positif[Estimate]
Tidak ada pencatatan emosi yang terstrukturJurnal harian dengan mood tag + grafik RechartsPengguna memahami pola emosional mereka[Estimate]
Stres akut tanpa alat bantu cepatLatihan pernapasan dengan animasi dan suaraPenurunan stres dalam 3–5 menit[Benchmark]
Rasa kesepian dan butuh dukunganAI chatbot interaktif + kutipan personalDukungan 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
MAIN IDEA

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.

Freemium model lowers entry barrier while enabling scalable monetization via Premium tier at IDR 59.000/bulan.
Revenue is driven by high-margin digital delivery with minimal variable costs, targeting teens, professionals, and elderly users.
Pricing aligns with Southeast Asian benchmarks and local purchasing power, supported by behavioral triggers like streaks and achievements.

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

Free
0
  • Cek-in suasana hati harian
  • Jurnal pribadi dasar
  • Notifikasi motivasi
  • Latihan pernapasan 1 menit
RECOMMENDED
Premium
59.000/bln
  • Semua fitur Free
  • Diagnostik mental berbasis AI
  • Meditasi terpandu
  • Tren mood 30 hari
  • Streak & achievement
PlanTarget SegmentHarga (IDR/bulan)Value HighlightsConstraints
FreeRemaja, pengguna baru, pencari dukungan harian0Akses ke fitur dasar: mood check-in, jurnal, notifikasi motivasi, latihan pernapasan singkatTidak ada analitik tren, tidak ada meditasi, tidak ada diagnosis
PremiumProfesional, pengguna aktif, individu dengan kebutuhan dukungan berkelanjutan59.000Diagnostik kesehatan mental, meditasi audio, visualisasi tren emosional, streak & badge, akses offlineHanya 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

MetricNilaiKeterangan
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 Margin85%[Estimate] Biaya infrastruktur cloud dan AI (Lovable Cloud, Recharts, audio hosting) sangat rendah dibanding pendapatan
Payback Period2.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

RisikoMitigasi
Harga dianggap terlalu tinggi untuk pasar massalGunakan freemium sebagai edukasi nilai; tampilkan progres pengguna (streak, badge) untuk meningkatkan perceived value
Churn tinggi setelah bulan pertamaPerkuat engagement via notifikasi personal, challenge mingguan, dan rekomendasi konten berbasis AI
Ketergantungan pada channel akuisisi digitalBangun 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

MAIN IDEA

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.

Fokus pada personalisasi berbasis AI dan data emosional jangka panjang untuk menonjol dari kompetitor global dan lokal.
Manfaatkan pendekatan hybrid (digital + dukungan emosional harian) untuk menjangkau segmen yang lebih luas, termasuk remaja dan lansia.
Bangun kredibilitas dengan fitur diagnostik awal yang berbasis algoritma pembelajaran mesin, bukan hanya pelacakan umum.

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

CategoryPlayerValue PropPricing (IDR/bulan)StrengthsGaps
Global AppHeadspaceMeditasi terpandu & tidur~65.000Brand kuat, konten premiumKurang personalisasi, tidak relevan secara budaya, harga lebih tinggi
Global AppCalmSuara alam & cerita tidur~65.000UI menenangkan, audio berkualitasFokus sempit (tidur/stres), tidak ada diagnostik
Local AppTeduhKonseling & jurnal harian49.000 (Premium)Pendekatan lokal, bahasa IndonesiaTidak ada deteksi awal, fitur AI terbatas
Local AppTenangAIChatbot dukungan emosionalGratis (dengan iklan)Relevan untuk Gen Z, berbasis AITidak ada visualisasi tren, tidak ada meditasi
Indirect AlternativeJurnal KertasCatatan perasaan manual0Akses mudah, privatTidak ada analitik, tidak ada notifikasi, tidak bisa sinkron
Indirect AlternativeDiam Saja (Status Quo)Tidak melakukan apa-apa0Tidak ada biayaRisiko 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

MAIN IDEA

SereneJourney harus memvalidasi kebutuhan pengguna sebelum membangun MVP, dengan fokus pada fitur inti yang terukur dan hemat biaya.

Validasi dulu sebelum bangun: pastikan pengguna benar-benar membutuhkan fitur deteksi dan dukungan emosional
Bangun MVP dengan biaya rendah menggunakan alat berbasis AI dan teknologi hybrid
Fokus pada aktivasi pengguna, bukan jumlah unduhan

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 1
Validation
Minggu 1-2
GATE 7/10 tester menyelesaikan core task
PHASE 2
MVP
Minggu 3-10
GATE 20 pengguna berbayar
PHASE 3
V1
Bulan 4-6
GATE churn bulanan < 5%
PHASE 4
Scale
Bulan 7+
GATE CAC < LTV/3
PhaseTimingGoalsScope (in)Explicitly OutSuccess Criteria
ValidationMinggu 1–2Uji kebutuhan inti dan alur penggunaSplash screen, onboarding, chat emosional sederhana (simulasi), mood check-in harian, notifikasi motivasiAutentikasi, jurnal, meditasi, AI chatbot7 dari 10 pengguna uji coba menyelesaikan 3x check-in dan menerima notifikasi
MVPMinggu 3–10Bangun produk inti dan uji aktivasiAutentikasi Lovable Cloud, jurnal pribadi, dashboard streak, Recharts untuk tren mingguan, notifikasi push harian, latihan pernapasan dasarAI diagnosis, rekomendasi personal, meditasi audio, sistem badge20 pengguna mendaftar dan 5 di antaranya upgrade ke Premium
V1Bulan 4–6Optimasi retensi dan monetisasiMeditasi terpandu (5/10 menit), AI chatbot sederhana, sistem achievement, rekomendasi kutipan berbasis mood, visualisasi bulananIntegrasi dokter, konseling langsung, fitur sosialChurn bulanan < 5%, rata-rata sesi > 8 menit, 30% pengguna aktif harian
ScaleBulan 7+Ekspansi pasar dan peningkatan LTVKampanye retensi otomatis, integrasi dengan layanan kesehatan lokal, fitur keluarga/pendamping, analitik prediktifEkspansi ke luar negeri, hardware IoTCAC < 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

MAIN IDEA

SereneJourney perlu membangun fondasi finansial yang realistis dan hemat biaya untuk mencapai break-even dalam 14 bulan dengan dukungan KUR atau pembiayaan UMKM lokal.

Gunakan pendekatan pengembangan berbasis AI untuk menekan biaya awal hingga IDR 45 juta.
Margin kotor 62% memungkinkan skalabilitas setelah mencapai titik impas.
Proyeksi pendapatan tahun pertama (base case) sebesar IDR 180 juta didukung oleh penetrasi pasar yang konservatif.

1.8.1 Startup Cost Breakdown

ItemCategoryEstimate (IDR)Notes
Software Development (MVP)Capex65.000.000Tiga 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)Capex15.000.000Desain interaktif untuk breathing exercises, splash screen, dashboard progres — berbasis tren global namun disesuaikan dengan preferensi visual lokal [Estimate]
Lovable Cloud & API IntegrationsOpex5.000.000/tahunBiaya autentikasi, sinkronisasi data lintas perangkat, dan penyimpanan terenkripsi [Estimate]
Audio & Soundscapes LicensingCapex10.000.000Lisensi musik meditasi dan suara alam untuk sesi terpandu (5, 10, 15, 20 menit) [Estimate]
Legal & Regulatory ComplianceCapex7.500.000Konsultasi hukum terkait UU No. 36/2009 dan UU No. 17/2023, kepatuhan data kesehatan digital [Estimate]
Marketing & Launch (ASO, Sosial Media)Opex10.000.000Optimasi App Store, kampanye awal di TikTok & Instagram untuk Gen Z dan profesional muda [Estimate]
Subtotal112.500.000
Contingency (10%)11.250.000Cadangan untuk keterlambatan teknis atau biaya tak terduga
Total Startup Cost123.750.000Dibulatkan menjadi IDR 125 juta untuk kebutuhan modal kerja

1.8.2 Unit Economics

MetricValuePenjelasan
Price per unit (Premium Tier)59.000Harga berlangganan bulanan untuk fitur premium seperti AI chatbot, tren bulanan, dan sesi meditasi eksklusif
Direct cost per unit22.420Biaya langsung per pengguna premium: cloud storage, push notification (Capacitor), dan bandwidth audio [Estimate]
Gross margin per unit36.580Selisih 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

TahunRevenue (IDR)Direct Costs (IDR)Operating Costs (IDR)Net Margin
Tahun 1 (conservative)90.000.00034.000.000125.000.000-69.000.000
Tahun 1 (base)180.000.00068.000.000125.000.000-13.000.000
Tahun 1 (optimistic)270.000.000102.000.000125.000.00043.000.000
Tahun 2450.000.000171.000.000180.000.00099.000.000
Tahun 3900.000.000342.000.000225.000.000333.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]

Modal Awal
IDR 45jt
Gross Margin
62%
Break-even
bulan 14
Pendapatan Th-1 (base)
IDR 180jt

1.8.5 Financing Readiness (KUR Framing)

RequirementStatus
Usaha berjalan / legalitasSedang dalam proses pendirian PT (CV awal untuk KUR mikro)
Proyeksi arus kasTersedia (dokumen ini) — menunjukkan cash runway 18 bulan dengan modal awal IDR 125 juta
AgunanTidak wajib untuk KUR mikro (<IDR 100 juta); untuk plafon lebih tinggi, bisa gunakan aset pribadi
Plafon yang diajukanIDR 125.000.000 (sesuai kebutuhan modal kerja)
Penggunaan danaPengembangan 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

02Product Definition

2.1User Personas

Dinda
Pelajar SMA
GOAL mengelola kecemasan sekolah
PAIN sering panik sebelum ujian

“Aku takut nggak lulus, tapi nggak tahu harus cerita ke siapa.”

Arman
Karyawan kantoran
GOAL atasi stres kerja
PAIN burnout karena lembur terus

“Saya capek banget, tapi malu kalau minta cuti.”

Nenek Rina
Lansia pensiunan
GOAL kurangi rasa kesepian
PAIN jarang ketemu keluarga

“Anak-anak sibuk, saya cuma bisa nonton TV sepanjang hari.”

Bayu
Veteran militer
GOAL kendalikan flashbacks PTSD
PAIN susah tidur karena mimpi buruk

“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

PersonaPrimary Jobs-to-be-DoneSuccess CriteriaCommon Frictions
DindaMengelola kecemasan akademik dan sosialBisa tidur nyenyak sebelum ujian, merasa lebih tenangRasa malu, kurangnya ruang aman, informasi terlalu teknis
ArmanMencegah burnout dan menjaga keseimbangan kerja-hidupBisa istirahat tanpa rasa bersalah, tidur lebih nyenyakTekanan budaya kerja, waktu terbatas, stigma
Nenek RinaMengurangi rasa kesepian dan menemukan maknaMerasa terhubung, punya rutinitas harian yang bermaknaLiterasi digital rendah, akses terbatas, kurang interaksi sosial
BayuMengelola gejala PTSD dan menenangkan diri saat terpicuBisa menghindari flashbacks, tidur tanpa mimpi burukTrauma 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

MAIN IDEA

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.

Define two core roles: User (Free/Premium) and Admin, with distinct access levels and responsibilities.
Implement least-privilege permissions to protect sensitive mental health data and ensure regulatory compliance.
Prioritize trust and safety through audit logs, PII protection, and content moderation protocols.

2.2.1 Roles & responsibilities

RoleDescriptionKey Tasks
UserPengguna akhir aplikasi yang mencari dukungan kesehatan mental pribadiMelakukan check-in suasana hati harian, mencatat jurnal pribadi, mengakses latihan pernapasan & meditasi, menerima notifikasi motivasi, melihat dashboard progres pribadi
AdminOperator internal yang mengelola sistem, konten, dan keamanan aplikasiMengelola 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.

RoleCreateReadUpdateDeleteApproveExportAdmin
UserJournalEntry, MoodEntryMoodTrend, StreakCounter, AchievementBadge, AudioTrack, QuoteLibrary (hanya konten publik)Profil pribadi, preferensi notifikasiEntri jurnal & mood pribadi---
AdminAudioTrack, QuoteLibrary, AchievementBadgeSemua entitas (termasuk agregat & log)Konten aplikasi, pengaturan sistemKonten pengguna yang dilaporkan, konten sistemLaporan konten sensitif, pembaruan fiturData agregat & anonimSistem, 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.

MAIN IDEA

SereneJourney perlu membangun fitur inti secara bertahap yang langsung menyentuh kebutuhan emosional pengguna dan mendukung model bisnis berlangganan.

Fokus pada deteksi dini dan pelacakan suasana hati sebagai nilai unik utama.
Bangun keterlibatan harian melalui notifikasi motivasi dan streak untuk retensi.
Gunakan AI dan personalisasi sebagai pembeda kompetitif di fase lanjutan.

2.3Features Epic Level Breakdown

2.3.1 Epic List (5–8)

NameGoalPrimary Persona(s)Success Metric
Epic 1: Onboarding & AuthenticationMemungkinkan pengguna mendaftar dan masuk dengan aman, serta mengalami pengantar aplikasi yang menenangkanSemua pengguna baru85% pengguna menyelesaikan onboarding dalam 3 menit [Target]
Epic 2: Mood Tracking & VisualizationMembantu pengguna mencatat suasana hati harian dan melihat tren emosional mingguan/bulananTeens, Professionals, Elderly70% pengguna melakukan check-in >4x/minggu [Target]
Epic 3: Daily Engagement EngineMemberikan motivasi harian dan membangun kebiasaan positif melalui notifikasi dan streakSemua penggunaRata-rata streak 7 hari dalam 30 hari pertama [Target]
Epic 4: Guided Wellness ActivitiesMenyediakan latihan pernapasan dan meditasi terpandu untuk mengurangi stresProfessionals, PTSD Veterans50% pengguna mencoba >1 sesi pernapasan dalam minggu pertama [Target]
Epic 5: AI Emotional Support ChatbotMemberikan respons empati dan saran awal berdasarkan cerita penggunaTeens, Lonely Elderly40% pengguna berinteraksi dengan chatbot dalam 7 hari pertama [Target]
Epic 6: Personal Journal & ReflectionMemungkinkan pengguna menulis jurnal harian dengan tag emosi dan melihat kembaliTeens, Professionals30% pengguna menulis >3 entri dalam 2 minggu pertama [Target]
Epic 7: Progress Dashboard & AchievementsMenampilkan kemajuan pengguna dan memberikan penghargaan untuk konsistensiSemua pengguna60% 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] --> E

Key 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

EpicPerformanceSecurityCompliance
Epic 1<2 detik muatEnkripsi data, OAuth via Lovable CloudSesuai UU No. 36/2009 dan UU No. 17/2023
Epic 2Grafik responsifData lokal terenkripsiRetensi 2 tahun [Validated]
Epic 3Notifikasi <1 menitTidak ada pelacakan perilakuSesuai kebijakan notifikasi lokal
Epic 4Audio preload <1 detikTidak ada data suara disimpanTidak ada risiko pelanggaran privasi
Epic 5Respon <1 detikPercakapan tidak disimpan serverPrivasi tinggi, sesuai etika AI
Epic 6Pencarian <1 detikEnkripsi end-to-endData hanya milik pengguna
Epic 7Dashboard <2 detikAkses terbatas pada penggunaTidak 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

MAIN IDEA

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.

Leverage local market gaps in mental health tech with culturally relevant UX and Bahasa-first design.
Differentiate through real-time emotional AI chatbot and data-driven mood visualization.
Align pricing and compliance with Indonesia’s regulatory landscape and regional benchmarks.

2.4Reference Research

2.4.1 Benchmark Table

ProductUse CaseKey FlowsNotable StrengthsGaps
HeadSpaceMeditasi & mindfulness harianOnboarding → Pilih tujuan → Mulai sesi meditasi → Lacak progresUI sangat halus, konten audio berkualitas tinggi, animasi menenangkanKurang personalisasi berbasis suasana hati harian; tidak ada fitur jurnal atau deteksi emosi
CalmManajemen stres & tidurSplash screen → Daily check-in opsional → Meditasi pagi → Notifikasi motivasiKonten harian terstruktur, suara narator profesional, fitur cerita tidurTidak ada pelacakan mood berbasis grafik; fitur jurnal terbatas
Teduh (lokal)Dukungan kesehatan mental dasarLogin → Mood tracker sederhana → Akses artikelBahasa Indonesia alami, konten lokal relevan, ringan di perangkatTidak ada AI chatbot, tidak ada visualisasi tren emosi
TenangAIDeteksi awal gangguan mentalChatbot interaktif → Skrining kecemasan/depresi → RekomendasiPendekatan berbasis AI, respons cepat, fokus pada Gen ZUI terasa kaku, tidak ada animasi pernapasan atau meditasi audio
HappifyPelatihan emosional berbasis sainsPenilaian awal → Rencana harian → Aktivitas interaktifPendekatan berbasis psikologi positif, gamifikasi kuatKurang personalisasi konten harian, tidak tersedia penuh di Indonesia
SereneJourney (proposed)Deteksi dini, pelacakan emosi, dukungan harianSplash → Login → Cek suasana hati → Dashboard → Notifikasi & latihanGabungan AI chatbot, visualisasi Recharts, jurnal dengan tag, meditasi & pernapasanBelum 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

  1. 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.

  2. 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”.

  3. 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”.

  4. 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.

  5. 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.

  6. Notifikasi Push Pukul 08.00
    Contoh: “Hari ini kamu kuat. Jangan lupa, setiap langkah kecil itu kemajuan. 💙” — dikirim otomatis, quote berganti tiap hari.

  7. Jurnal dengan Mood Tag Otomatis
    Saat pengguna menulis, sistem menyarankan tag: #kecewa, #stres, #harapan. Entri bisa dilihat kembali dengan filter bulan/tahun.

  8. 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

  1. Real-time AI Chatbot dengan Latensi <1 Detik
    Gunakan model ringan berbasis transformer (contoh: DistilBERT) yang dioptimalkan untuk Bahasa Indonesia. Respons cepat meningkatkan engagement.

  2. 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.

  3. 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.

  4. Recharts untuk Visualisasi Tren Mingguan/Bulanan
    Integrasi langsung dengan React, ringan, dan mendukung animasi halus. Cocok untuk menampilkan pola emosi pengguna.

  5. Capacitor untuk Push Notification di Mobile
    Memungkinkan notifikasi bahkan saat aplikasi tertutup, dengan izin minimal. Kompatibel dengan iOS dan Android.

  6. 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

MAIN IDEA

SereneJourney harus memandu pengguna dari pembukaan aplikasi hingga diagnosis emosional dan dukungan harian dengan alur yang intuitif dan empatik.

Alur onboarding yang mulus dengan splash screen dan autentikasi cepat meningkatkan retensi pengguna baru.
Diagnosis suasana hati harian dan interaksi dengan chatbot AI harus mudah diakses tanpa hambatan teknis.
Notifikasi motivasi dan pelacakan progres harian memperkuat keterlibatan jangka panjang.

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

EventTriggerPropertiesKPI Mapping
app_openPengguna membuka aplikasiplatform (iOS/Android/Web), first_time (true/false)DAU (Daily Active Users) [Validated]
onboarding_completeSelesai daftar dan login pertamamethod (Lovable Cloud), duration_secOnboarding Completion Rate [Target]
mood_checkin_submittedSubmit form cek suasana hatimood_score (1-10), trigger (manual/reminder)Mood Engagement Rate [Target]
ai_chat_startedMulai percakapan dengan chatbotentry_point (dashboard/prompt), user_mood_tagAI Interaction Rate [Target]
notification_receivedNotifikasi harian diterimatime_of_day, device_osPush Notification Open Rate [Benchmark]
breathing_exercise_completedSelesai latihan pernapasanduration_min (1/3/5), user_rating (1-5)Wellness Activity Completion [Target]
journal_entry_savedSimpan entri jurnalword_count, mood_tag, has_image (true/false)Journal Retention (7-day) [Target]
premium_upgrade_initiatedKlik tombol upgrade ke Premiumsource (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).

MAIN IDEA

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.

Navigasi dibagi menjadi dua lingkungan: marketing site (publik) dan app shell (pengguna terautentikasi)
Fitur inti diakses melalui bottom navigation pada aplikasi mobile untuk kemudahan akses harian
Akses fitur lanjutan (Premium) ditandai secara visual dan terkunci tanpa langganan

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

ScreenTujuanAksi UtamaAkses Peran
Splash ScreenMemperkenalkan merek secara visual saat pembukaan aplikasiTunggu 2 detik, lalu arahkan ke Onboarding/LoginSemua pengguna
OnboardingEdukasi pengguna baru tentang fitur intiSwipe melalui 3 slide, klik "Mulai Sekarang"Semua pengguna
Login / RegistrasiAutentikasi pengguna via Lovable CloudMasuk dengan email atau daftar akun baruSemua pengguna
Dashboard UtamaRingkasan kesejahteraan harianLihat kutipan, cek streak, mulai check-inFree, Premium
Mood TrackerMencatat suasana hati harianPilih skala 1-10, tambahkan catatan singkatFree, Premium
Grafik Mood (Recharts)Visualisasi tren emosional mingguan/bulananLihat pola, ekspor data (Premium)Free (basic), Premium (advanced)
Jurnal PribadiMenulis refleksi harian dengan privasiTulis entri, tambahkan tag mood, simpanFree, Premium
Meditasi TerpanduPanduan audio untuk relaksasiPilih sesi, putar audio, atur timerPremium (Free: trial 5 menit)
Latihan PernapasanBantuan stres instan dengan animasiIkuti lingkaran inhale/exhale, pilih durasiFree, Premium
Dukungan HarianInteraksi dengan AI & konten motivasiBicara dengan chatbot, baca kutipanFree, Premium
Progres SayaPantau perkembangan kesehatan mentalLihat streak, badge, total jurnalFree, Premium
PengaturanKelola preferensi & akunUbah notifikasi, upgrade, logoutSemua pengguna
Harga (Web)Bandingkan tier Free vs PremiumKlik "Upgrade", lihat manfaat PremiumSemua 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:

  1. Dashboard (rumah)
  2. Mood Tracker
  3. Jurnal
  4. Meditasi / Pernapasan (tab terpisah atau grup)
  5. 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:

  1. Buka app → Splash → Dashboard
  2. Klik notifikasi → Mood check-in
  3. Gunakan latihan pernapasan saat stres
  4. Tulis jurnal malam hari
  5. Pantau progres mingguan

Tidak ada inkonsistensi dengan peran atau alur yang telah ditentukan.

MAIN IDEA

SereneJourney perlu menyediakan pengalaman pengguna yang intuitif, modern, dan empatik melalui wireframe yang mencerminkan alur utama deteksi dini, pelacakan suasana hati, dan dukungan harian.

Fokus pada alur mobile-first dengan navigasi sederhana dan visual yang menenangkan.
Setiap layar harus mendukung interaksi emosional dan privasi pengguna.
Komponen inti seperti mood check-in, jurnal, dan notifikasi harus mudah diakses dan konsisten secara visual.

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):

AlurLayarPerangkatKetelitianCatatan
OnboardingSplash ScreenMobileLow-fiAnimasi halus, logo SereneJourney, tagline
Selamat DatangMobileLow-fiCTA "Mulai" dan "Masuk"
Autentikasi (Login/Sign Up)MobileLow-fiDukungan Lovable Cloud
Mood Check-inDashboard UtamaMobileMid-fiRingkasan streak, mood terakhir, notifikasi harian
Mood Check-in HarianMobileMid-fiSkala emosi, input teks singkat ("Apa yang kamu rasakan hari ini?")
Hasil Diagnostik SementaraMobileMid-fiRingkasan tingkat stres/kecemasan, saran aktivitas
Jurnal & RefleksiJurnal HarianMobileMid-fiInput teks bebas, tag mood, emoji picker
Riwayat JurnalMobileLow-fiDaftar entri dengan tanggal dan mood tag
Dukungan HarianNotifikasi PushMobileLow-fiPreview notifikasi motivasi harian
Kutipan MotivasiMobileLow-fiTampilan kutipan harian, opsi simpan
Latihan & MeditasiLatihan PernapasanMobileMid-fiAnimasi lingkaran inhale/exhale, kontrol durasi
Meditasi TerpanduMobileMid-fiDaftar sesi, pemutar audio, timer
Progres & PrestasiDashboard ProgresMobileMid-fiGrafik tren mood (Recharts), streak counter, badge
Detail Tren Mingguan/BulananMobileMid-fiVisualisasi Recharts, insight emosional
AI ChatbotChat Dukungan EmosionalMobileMid-fiInput 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:

  1. Salam personal ("Halo, [Nama]!")
  2. Indikator streak (🔥 7 hari)
  3. Mood terakhir (😊 Netral)
  4. CTA besar: "Cek Suasana Hati Hari Ini"
  5. Kutipan motivasi harian (dengan latar belakang lembut)
  6. 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.

MAIN IDEA

SereneJourney perlu sistem desain yang modern, inklusif, dan konsisten untuk mendukung pengalaman pengguna yang tenang dan profesional di seluruh perangkat.

Gunakan tipografi bersih dengan hierarki jelas untuk kenyamanan membaca dan aksesibilitas.
Terapkan palet warna netral dengan aksen biru lembut yang menenangkan, memenuhi standar kontras WCAG.
Desain komponen responsif berbasis grid 8px untuk konsistensi antar layar dan 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:

PeranFont StackUkuran (px)KetebalanPenggunaan
HeadingInter, -apple-system, sans-serif24–32600–700Judul halaman, hasil asesmen
SubheadingInter, -apple-system, sans-serif18–20500–600Bagian jurnal, deskripsi fitur
BodyInter, -apple-system, sans-serif16400–500Teks utama, instruksi, refleksi
CaptionInter, -apple-system, sans-serif12–14400Tanggal, 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.

NamaWarnaPeran SemantikCatatan Kontras
Neutral-900#1A1A1ATeks utamaKontras tinggi dengan latar terang
Neutral-700#4D4D4DSubteks, ikonUntuk elemen sekunder
Neutral-100#F5F5F5Latar belakang utamaNetral, tidak melelahkan
Neutral-50#FAFAFALatar kartu, modalKontras rendah, nyaman untuk mata
Accent-500#4A90E2Aksi primer, highlight moodBiru tenang, aman untuk buta warna
Success-500#50C878Mood positif, streak aktifHijau segar
Warning-500#FFA500Mood netralOranye lembut
Danger-500#FF6B6BMood negatif, peringatanMerah tidak terlalu intens
Info-500#4A90E2Informasi sistemSama 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

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

KomponenVariasi/StatusDeskripsi
ButtonPrimary (Accent-500), Secondary (Neutral-100 border), DisabledGunakan teks kapitalisasi normal, padding 12px 24px, radius 12px
InputText, Textarea, Date pickerBorder 1px solid Neutral-100, focus dengan outline Accent-500
NavigationBottom bar (mobile), Sidebar (desktop)Ikon + label, aktif dengan Accent-500
CardMood entry, Journal preview, Meditation tileLatar Neutral-50, border 1px, radius 12px
TableMood trend (Recharts), Journal historyHeader Neutral-700, baris selang-seling untuk keterbacaan
ModalConfirmation, Onboarding step, InfoOverlay gelap 50%, konten di tengah, tombol jelas
ToastSuccess (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

Illustrative examples — these AI-generated mockups show the look & feel only; copy and data are placeholders.
Home Screen
Home Screen

2.9Screen Mockups

Illustrative examples — these AI-generated mockups show the look & feel only; copy and data are placeholders.
Home Screen
Home Screen

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

KategoriTeknologiVersiTujuanAlasan
Frontend FrameworkReact Native + Capacitor0.73+UI aplikasi mobile & webMemungkinkan single codebase untuk iOS, Android, dan web; kompatibel dengan plugin native seperti notifikasi [Validated]
UI LibraryReact Native Paper / NativeBase5.xKomponen UI modernMenyediakan desain material yang profesional dan responsif, cocok untuk aplikasi kesehatan [Estimate]
State ManagementZustand4.xManajemen state globalLebih ringan dan mudah digunakan dibanding Redux, ideal untuk aplikasi skala menengah [Target]
Backend & APINext.js (API Routes)14+Serverless functionsDukungan Vercel, cepat di-deploy, biaya rendah saat traffic rendah [Validated]
Hosting & DeploymentVercel-Deploy otomatis dan CDN globalInfrastruktur serverless yang stabil dan hemat biaya untuk startup [Benchmark]
Authentication & SyncLovable Cloud-Login, sinkronisasi data, backupSesuai kebutuhan spesifik proyek: simpan riwayat asesmen, jurnal, dan quotes lintas perangkat [Validated]
Data VisualizationRecharts2.12+Grafik tren mood mingguan/bulananBerbasis D3, ringan, dan mudah diintegrasikan dengan React [Validated]
Audio & MeditationHowler.js + Capacitor Media2.2+Putar audio meditasi & suara alamDukungan audio lokal dan streaming dengan kontrol halus [Estimate]
Push NotificationsCapacitor Push Notifications5.xKirim notifikasi motivasi harianNative support untuk iOS/Android, terintegrasi dengan sistem operasi [Validated]
AnimationReact Native Reanimated3.xAnimasi lingkaran inhale/exhaleAnimasi real-time yang halus tanpa lag, penting untuk latihan pernapasan [Target]
AI & ChatbotTensorFlow.js + Hugging Face API-Diagnostik awal & respons chatbotJalankan 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 --> P

Key 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.

MAIN IDEA

SereneJourney needs a secure, automated CI/CD pipeline that supports rapid iteration while ensuring compliance with Indonesian health data regulations.

Use Git-based branching with automated testing and manual approval for production to balance speed and safety.
Host on Vercel for web and AWS Amplify for mobile to ensure fast global delivery and native app support.
Integrate security scans and compliance checks at every stage to protect user data and meet regulatory standards.

3.2Deployment And Ci Cd

3.2.1 Environments & Branching Strategy

LingkunganCabang GitURLTujuanAkses
Devdevelopdev.serenejourney.idPengembangan fitur harian, integrasi otomatisTim pengembang, QA internal
Stagingrelease/v1.2staging.serenejourney.idUji akhir, validasi UX, pemantauan kinerjaProduk, desain, manajer proyek
Productionmainapp.serenejourney.idRilis pengguna akhir, operasional penuhHanya 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:

  1. Build: Kompilasi kode web (React) dan mobile (Capacitor)
  2. Test: Jalankan uji unit dan integrasi (Jest, Cypress)
  3. 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]
  4. Deploy: Otomatis ke lingkungan target (kecuali produksi)
  5. 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:

JenisAlatTujuan Bisnis
LoggingDatadogLacak error dan perilaku pengguna
MetricsPrometheus + GrafanaPantau kinerja (waktu respons, pengguna aktif)
TracingOpenTelemetryLacak alur permintaan dari UI ke backend
AlertingSlack + PagerDutyNotifikasi 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

MAIN IDEA

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.

Terapkan validasi ketat pada input pengguna untuk menjaga kualitas data kesehatan mental.
Gunakan autentikasi Lovable Cloud untuk sinkronisasi aman dan lintas perangkat.
Pastikan notifikasi harian dan fitur progresif seperti streak dan badge memperkuat keterlibatan pengguna secara berkelanjutan.

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_registered ke 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: MoodEntry dibuat, StreakCounter bertambah jika dilakukan dalam jendela 24 jam terakhir.
  • Jika melewatkan >24 jam: streak direset ke 0.
  • Data mood disimpan dan digunakan untuk MoodTrend mingguan/bulanan.

Side effects & integrations

  • Setelah check-in sukses: kirim event mood_logged ke sistem analitik.
  • Jika mood rendah: trigger notifikasi pasif (dalam 1 jam): “Kami di sini untukmu. Coba latihan pernapasan 3 menit?”
  • Integrasi dengan AI Chatbot untuk 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 MoodEntry dicatat 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: BreathingExercise dicatat 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_completed ke sistem rekomendasi konten.
  • Integrasi dengan AudioTrack untuk 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: JournalEntry dibuat, StreakCounter bertambah 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_saved ke sistem rekomendasi konten.
  • Integrasi dengan AI Chatbot untuk 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 JournalEntry dienkripsi 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 QuoteLibrary berdasarkan 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: AchievementBadge dibuka, notifikasi “Selamat! Kamu membuka badge baru.”
  • StreakCounter dihitung berdasarkan check-in harian tanpa putus.

Side effects & integrations

  • Unlock badge: kirim event achievement_unlocked, tambah poin ke PointsLedger.
  • Integrasi dengan MoodTrend untuk 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 Chatbot menganalisis 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_triggered ke 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 MentalAssessment yang 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 AudioTrack library.
  • 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: MeditationSession dibuat dengan durasi dan tema.
  • Saat selesai: status berubah ke completed, poin ditambahkan ke PointsLedger.
  • Jika dihentikan: dicatat sebagai interrupted.

Side effects & integrations

  • Setelah selesai: rekomendasikan sesi lain berdasarkan riwayat.
  • Kirim event meditation_completed ke 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

MAIN IDEA

SereneJourney perlu mengintegrasikan layanan pihak ketiga untuk autentikasi, pembayaran, notifikasi, analitik, dan penyimpanan guna mendukung fitur inti dan model bisnis berlangganan.

Gunakan Lovable Cloud untuk autentikasi aman dan sinkronisasi data lintas perangkat.
Terapkan DANA, GoPay, dan QRIS via Midtrans untuk pembayaran lokal yang inklusif.
Manfaatkan Firebase Cloud Messaging dan Capacitor Push Notifications untuk pengiriman pesan harian yang andal.

3.4Integration Catalog

3.4.1 Integration Table

KomponenTanggung JawabDetail Utama/PengamananFase
Lovable CloudAutentikasi pengguna, sinkronisasi data lintas perangkatOAuth 2.0, enkripsi end-to-end, sesi aman, dukungan SSOMVP
MidtransPembayaran berlangganan (Premium tier)Dukungan QRIS, GoPay, DANA, kartu kredit; PCI-DSS compliant; webhook terverifikasiMVP
Firebase Cloud Messaging (FCM)Pengiriman notifikasi push harianTerintegrasi dengan Capacitor Push; pengiriman tepat waktu pukul 08.00; retry otomatisMVP
Capacitor Push NotificationsManajemen notifikasi di aplikasi mobileMendukung iOS dan Android; izin pengguna eksplisit; fallback ke local notification jika offlineMVP
Google Analytics for FirebaseAnalitik penggunaan aplikasiPelacakan event: login, mood check-in, meditasi, jurnal; tanpa identitas pribadi; sesuai PDPIMVP
AWS S3 (via Lovable Cloud)Penyimpanan aman data pengguna (jurnal, audio, log)Enkripsi server-side, retensi 2 tahun, akses berbasis peranMVP
RechartsVisualisasi tren suasana hati harian & mingguanRender grafik lokal di klien; tidak mengirim data ke pihak ketigaMVP
Web Speech API (fallback)Input suara untuk jurnal (opsional)Hanya jika diaktifkan pengguna; data tidak disimpan di serverPhase 2
Machine Learning API (Internal)Diagnostik kesehatan mental berbasis MLModel dilatih secara lokal; input teks dari chat atau jurnal; output disimpan sebagai MentalAssessmentPhase 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| App

3.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

VendorRisikoStrategi Cadangan
Lovable CloudDowntime atau perubahan APIBackup data lokal; rencana migrasi ke Firebase Auth jika diperlukan
MidtransGagal proses pembayaranDukungan multi-gateway (contoh: Xendit sebagai cadangan)
FCMDelay notifikasi di AndroidGunakan WorkManager untuk retry; notifikasi lokal sebagai fallback
AWS S3Ketergantungan infrastruktur cloudEnkripsi 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.

MAIN IDEA

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.

Use a normalized yet performant schema to support real-time mood analytics and AI-driven insights.
Enforce strict data retention (2 years) and PII protection in line with Indonesian regulations.
Design relationships to enable personalized content delivery and cross-functional dashboards.

3.5Database Schema Core Entities

3.5.1 Entity List

EntityPurposeNotes
UserMenyimpan data pengguna terdaftar, termasuk autentikasi dan preferensiMenggunakan Lovable Cloud untuk autentikasi; menyimpan hanya metadata lokal seperti tier dan pengaturan notifikasi
MentalAssessmentMenyimpan hasil penilaian kesehatan mental berbasis AI setelah sesi interaksiDigunakan untuk deteksi awal kondisi seperti kecemasan atau depresi; hasil bersifat prediktif, bukan diagnosis medis
MoodEntryMencatat suasana hati harian pengguna (skala 1–5) dengan tag emosi dan catatan opsionalDibatasi satu entri per 24 jam; menjadi dasar visualisasi tren di dashboard
JournalEntryMenyimpan jurnal pribadi pengguna dengan tag emosi dan timestampDilindungi dengan enkripsi end-to-end; retensi 2 tahun dari pembuatan
MeditationSessionMelacak sesi meditasi yang diputar, durasi, dan audio yang digunakanDigunakan untuk rekomendasi konten dan pencapaian (achievements)
BreathingExerciseMencatat latihan pernapasan yang dipilih pengguna (1/3/5 menit)Menyertakan data durasi dan animasi yang digunakan
NotificationScheduleMengelola jadwal notifikasi push harian (motivasi, reminder check-in)Notifikasi motivasi dikirim pukul 08.00 setiap hari
StreakCounterMenghitung hari berturut-turut pengguna melakukan check-in suasana hatiReset jika tidak ada entri >24 jam
AchievementBadgeMenyimpan badge yang diperoleh pengguna (misalnya: "7 Hari Berturut-turut")Digunakan untuk motivasi dan engagement
PointsLedgerMencatat poin yang diperoleh dari aktivitas (check-in, jurnal, meditasi)Poin dapat ditukar dengan konten premium atau hadiah virtual
AudioTrackMenyimpan metadata file audio untuk meditasi dan suara alamTermasuk durasi, jenis (meditasi, relaksasi), dan URL file terenkripsi
MoodTrendMenyimpan ringkasan tren suasana hati harian/mingguan/bulananDihasilkan dari agregasi MoodEntry; digunakan untuk Recharts
QuoteLibraryKumpulan kutipan motivasi harian yang diperbarui setiap hariSatu 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

Entitynametyperequireddefaultnotes
Useridstring (UUID)PK; merujuk ke Lovable Cloud ID
tierenum (Free, Premium)FreeMenentukan akses fitur
createdAtdatetimenow()Waktu registrasi
notificationEnabledbooleantruePreferensi notifikasi
MentalAssessmentidstring (UUID)PK
userIdstringFK ke User
assessmentTypestringMisalnya: "kecemasan", "depresi", "loneliness"
severityScorefloat (0–1)Output model ML
timestampdatetimenow()Waktu penilaian
MoodEntryidstring (UUID)PK
userIdstringFK ke User
moodLevelint (1–5)1 = sangat buruk, 5 = sangat baik
emotionTagsstring[]Misalnya: ["sedih", "cemas", "kesepian"]
notestextCatatan bebas dari pengguna
datedatetoday()Tanggal check-in
JournalEntryidstring (UUID)PK
userIdstringFK ke User
contenttextIsi jurnal (terenkripsi)
emotionTagstringMisalnya: "marah", "tenang", "harapan"
createdAtdatetimenow()Waktu penulisan
moodLevelint (1–5)Opsional, terkait dengan MoodEntry
MeditationSessionidstring (UUID)PK
userIdstringFK ke User
audioTrackIdstringFK ke AudioTrack
durationintDalam menit (5, 10, 15, 20)
completedbooleanfalseApakah sesi selesai
startedAtdatetimenow()
BreathingExerciseidstring (UUID)PK
userIdstringFK ke User
durationint1, 3, atau 5 menit
completedAtdatetimenow()
NotificationScheduleidstring (UUID)PK
userIdstringFK ke User
typestring"motivasi", "reminder"
scheduledTimetime08:00Waktu pengiriman harian
lastSentdateUntuk mencegah pengiriman ganda
StreakCounteridstring (UUID)PK
userIdstringFK ke User
currentStreakint0Hari berturut-turut
lastCheckIndateUntuk logika reset
AchievementBadgeidstring (UUID)PK
userIdstringFK ke User
badgeNamestringMisalnya: "Pencatat Harian"
earnedAtdatetimenow()
PointsLedgeridstring (UUID)PK
userIdstringFK ke User
pointsintJumlah poin yang diperoleh
sourcestringMisalnya: "mood_checkin", "meditation"
timestampdatetimenow()
AudioTrackidstring (UUID)PK
titlestringMisalnya: "Meditasi Pernapasan"
durationMinutesint
typestring"meditasi", "suara_alam"
fileUrlstringURL terenkripsi ke file audio
MoodTrendidstring (UUID)PK
userIdstringFK ke User
periodstring"harian", "mingguan", "bulanan"
averageMoodfloatDihitung dari MoodEntry
startDatedate
endDatedate
QuoteLibraryidstring (UUID)PK
quoteTexttextKutipan motivasi
authorstring
dateAssigneddateUntuk 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 jurnal
    • StreakCounter(userId) → akses cepat ke data harian
    • MentalAssessment(userId, timestamp) → pelacakan perkembangan waktu
  • Partitioning:
    • MoodEntry dipartisi per bulan berdasarkan date → optimasi query tren bulanan [Estimate]
    • JournalEntry dan MoodEntry menggunakan 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

MAIN IDEA

SereneJourney needs to implement a robust, compliant security baseline that protects sensitive mental health data while meeting Indonesian regulatory expectations and user trust.

Enforce end-to-end data protection with encryption and secure key management for all user health data.
Implement role-based access and secure authentication via Lovable Cloud with optional MFA.
Align with GDPR-like privacy practices and Indonesia’s health data regulations to ensure compliance and 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

MAIN IDEA

SereneJourney needs to scale its backend and data infrastructure in three clear phases to support rapid user growth while maintaining performance and cost efficiency.

Phase 1 focuses on optimizing single-server architecture with caching for up to 50K users
Phase 2 introduces database read replicas and horizontal compute scaling for 500K users
Phase 3 requires sharded database architecture and full microservices for 500K+ users

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)

PhaseTarget PenggunaPerubahan UtamaPendekatan DatabaseEstimasi Biaya (IDR/bulan)
Phase 1 (0–50K)50.000 pengguna aktifMigrasi ke cloud (AWS/GCP); tambah Redis caching; gunakan load balancer sederhanaSingle PostgreSQL dengan backup harian2.500.000 – 5.000.000
Phase 2 (50K–500K)500.000 pengguna aktifTambah read replica database; horizontal scaling aplikasi; implementasi CDNPostgreSQL dengan 2 read replica + connection pooling15.000.000 – 30.000.000
Phase 3 (500K+)>500.000 pengguna aktifArsitektur microservices; sharding database; serverless untuk fungsi ringanSharded PostgreSQL + time-series database untuk mood trend75.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

PhaseResponse Time (p95)UptimeMax ThroughputTrigger untuk Phase Berikutnya
Phase 1<1.5 detik99.5%200 RPS>40K DAU atau latency >2 detik selama 1 jam
Phase 2<1.0 detik99.9%2.000 RPS>400K DAU atau CPU >80% selama 24 jam
Phase 3<800 ms99.95%10.000+ RPSPertumbuhan >10% per bulan selama 3 bulan

Target performa ini memastikan pengalaman pengguna tetap lancar meskipun aplikasi berkembang pesat.

3.7.5 Cost projections

PhaseInfrastruktur per Pengguna (IDR)Total Estimasi Biaya Bulanan
Phase 1IDR 50IDR 2.5 juta (50K pengguna)
Phase 2IDR 60IDR 30 juta (500K pengguna)
Phase 3IDR 150IDR 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

#HypothesisWhy It's RiskyPass Threshold
1Pengguna mengalami stres, kecemasan, atau perubahan suasana hati secara rutin dan merasa perlu pelacakanJika masalah tidak cukup parah, mereka tidak akan menggunakan aplikasi secara konsisten6/10 menyebutkan pengalaman emosional negatif dalam 7 hari terakhir tanpa diminta
2Pengguna saat ini tidak memiliki cara terstruktur untuk melacak suasana hati atau mencatat perasaan harianJika mereka sudah punya solusi (catatan, jurnal kertas), adopsi akan rendah7/10 menyatakan tidak menggunakan alat pelacakan suasana hati secara rutin
3Pengguna dapat menyelesaikan check-in harian dan menerima notifikasi motivasi dalam waktu <3 menitJika UX terlalu rumit, engagement harian tidak akan terbentuk8/10 berhasil menyelesaikan dua tugas utama tanpa bantuan
4Pengguna 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
5Pengguna menemukan nilai pada notifikasi motivasi harian dan fitur jurnal digitalJika fitur terasa generik atau tidak relevan, engagement turun7/10 menyatakan fitur notifikasi dan jurnal "berguna" atau "sangat berguna"

4.1.2 Who to recruit

Screener Questions (ajukan via WhatsApp/Instagram DM):

  1. Apakah kamu pernah merasa cemas, stres, atau sedih yang berlangsung lebih dari beberapa hari dalam 3 bulan terakhir? (Disqualify jika: "Tidak pernah")
  2. Apakah kamu saat ini menggunakan aplikasi atau metode tertentu untuk melacak suasana hati atau mencatat perasaan harian? (Disqualify jika: "Ya, rutin menggunakan")
  3. Apakah kamu memiliki smartphone dan menggunakan aplikasi kesehatan atau kebiasaan harian (habit tracker)? (Disqualify jika: "Tidak")
  4. 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

MinutesStepScript
0–2Konteks"Boleh cerita bagaimana kamu biasanya mengelola stres atau suasana hati saat merasa down?"
2–8Tugas Prototipe1. "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–10Debrief"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

  1. Bagaimana kamu biasanya menyadari kalau suasana hatimu sedang tidak baik?
  2. Apa yang biasanya kamu lakukan saat merasa cemas atau sedih berkepanjangan?
  3. Apakah kamu pernah mencoba mencatat perasaan harian? Jika ya, bagaimana caranya?
  4. Bagaimana kamu menanggapi pesan motivasi atau kutipan positif di media sosial?
  5. Apa yang membuatmu berhenti menggunakan aplikasi kesehatan atau habit tracker?
  6. Jika aplikasi bisa deteksi perubahan mood dari ceritamu, apakah kamu merasa itu membantu?
  7. Apa yang paling kamu butuhkan saat merasa down — dukungan emosional, saran, atau hanya tempat curhat?
  8. Bagaimana perasaanmu terhadap notifikasi harian dari aplikasi? Apakah kamu merasa terganggu atau terbantu?
  9. Apa yang akan membuat aplikasi seperti ini jadi tidak berguna bagimu? (disconfirming question)
  10. Jika kamu bisa ubah satu hal tentang cara kamu mengelola kesehatan mental, apa itu?

4.1.5 Synthesis grid

HypothesisEvidence ForEvidence AgainstVerdict
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.

MAIN IDEA

SereneJourney harus meluncurkan secara bertahap di Indonesia dengan strategi GTM yang berfokus pada validasi pengguna, akuisisi berbiaya rendah, dan retensi berbasis kebiasaan.

Fokus pada segmen remaja dan profesional muda yang rentan stres dan kecemasan
Gunakan peluncuran bertahap (pre-beta hingga GA) dengan kriteria keluar yang terukur
Manfaatkan saluran digital berbiaya rendah dengan CAC < IDR 25.000 untuk skalabilitas

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

PHASE 1
Pre-beta
Minggu 1-4
GATE 10 pengguna design partner aktif
PHASE 2
Beta
Minggu 5-12
GATE aktivasi > 40%
PHASE 3
GA
Bulan 4+
GATE CAC terbayar < 6 bulan

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
Awareness10000
↓ 12%
Interest1200
↓ 25%
Trial300
↓ 20%
Purchase60

→ 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

SaluranTaktikAnggaran (IDR)CAC Target (IDR)Keterangan
OwnedOnboarding email series, push notification, referral program00Gunakan Lovable Cloud untuk otentikasi dan sinkronisasi data
EarnedPR dengan komunitas kesehatan mental, UGC campaign #PerjalananTenang15.000.000<5.000Target media: Kumparan, Tirto, komunitas Gen Z
PaidTikTok & Instagram Ads (remaja), LinkedIn Ads (profesional)60.000.000<25.000A/B test konten emosional vs edukatif
PartnershipKolaborasi dengan psikolog, sekolah, dan perusahaan (wellness program)10.000.000<10.000Program "Mentor Mental" untuk sekolah
CommunityModerasi forum pengguna, sesi Q&A mingguan dengan ahli5.000.0000Bangun 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

KategoriMetrikTarget (90 hari)Sumber Data
AkuisisiJumlah pengguna baru5.000Analytics, Lovable Cloud
CAC< IDR 25.000Marketing spend / new users
AktivasiDAU/MAU ratio> 30%In-app analytics
Onboarding completion rate> 70%User journey tracking
RevenueKonversi ke premium> 8%In-app purchase logs
MRRIDR 3.540.000 (60 x 59.000)Payment gateway
RetensiRetensi D7> 50%Cohort analysis
Retensi D30> 35%User activity logs
EngagementRata-rata sesi/hari> 1.5Session tracking
Jurnal entry per minggu> 3Journal 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

RisikoDampakMitigasi
Regulasi kesehatan mental belum jelas di IndonesiaPotensi pemblokiran atau reputasi burukPatuhi UU No. 36/2009 dan UU No. 17/2023; hindari klaim medis; konsultasi dengan ahli hukum kesehatan digital [Validated]
Stigma terhadap kesehatan mentalRendahnya adopsi terutama di luar kota besarGunakan bahasa netral seperti "kesejahteraan emosional", hindari istilah "depresi" di iklan umum
Ketergantungan pada AI chatbotRisiko kesalahan diagnosis atau saran berbahayaBatasi chatbot untuk dukungan emosional, bukan diagnosis klinis; sertakan disclaimer dan tombol "hubungi profesional"
Persaingan dengan aplikasi global (Calm, Headspace)Pengguna lebih percaya merek internasionalFokus pada konten lokal, bahasa Indonesia, dan konteks budural (misalnya: dukungan untuk masalah keluarga, keagamaan)
Keterbatasan literasi digital lansiaKesulitan adopsi oleh segmen lansiaDesain 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

MAIN IDEA

SereneJourney needs to convert mental health awareness into user activation through low-cost digital channels and a product-led growth motion.

Use social proof and culturally relevant content to build trust in mental health support.
Prioritize WhatsApp and Instagram for outreach in Indonesia’s mobile-first market.
Keep CAC low by focusing on organic virality and micro-influencer collaborations.

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

ChannelTarget SegmentMonthly Cost (IDR)Expected CAC (IDR)First ExperimentKill Criteria
Instagram Reels & StoriesRemaja & profesional muda3.000.00015.000Posting 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 Z6.000.00012.0001 video per creator menunjukkan “Hari Tanpa Cinta? SereneJourney Bantu Pulih” → target: 5% engagement rateEngagement <3% rata-rata atau konversi <1% ke registrasi
WhatsApp Broadcast (komunitas kampus & kantor)Mahasiswa & profesional500.0002.500Kirim 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”00 (organik)Optimasi deskripsi dengan kata kunci: “deteksi stres”, “jurnal perasaan”, “meditasi harian” → target: naik 20% ke posisi pencarian top 10Tidak ada perubahan posisi setelah 60 hari
LinkedIn Articles (untuk profesional)Profesional & manajer00Publikasi 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

Prospek200
↓ 20%
Meeting40
↓ 40%
Proposal16
↓ 31%
Closed-won5
StageExit CriteriaOwnerTools
ProspekMengklik link kampanye atau mengunduh aplikasiFounderGoogle Analytics, Meta Ads Manager
MeetingMembuka aplikasi >3 kali dalam 7 hariFounderMixpanel, Firebase
ProposalMembuka halaman upgrade premiumFounderIn-app analytics, Lovable Cloud
Closed-wonBerlangganan Premium (IDR 59.000/bulan)FounderStripe, 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

WeeksMarketing FocusSales FocusKPI Target
1–4Launch Instagram & TikTok; ASO; WhatsApp broadcastOnboard 500 pengguna aktif1.000 download, CAC <20.000 IDR
5–8Kolaborasi mikro-influencer; edukasi deteksi stresIdentifikasi 50 calon premium200 pengguna aktif harian
9–12Retargeting ads; LinkedIn contentKonversi 10 pengguna ke Premium5 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.

MAIN IDEA

SereneJourney perlu membangun kemitraan strategis dengan komunitas dan platform lokal untuk distribusi awal, serta memperkuat retensi lewat aktivasi cepat dan intervensi berbasis perilaku.

Kemitraan dengan komunitas kesehatan mental dan universitas tingkatkan jangkauan ke pengguna inti.
Aktivasi pengguna harus dicapai dalam 24 jam pertama dengan penyelesaian mood check-in dan jurnal pertama.
Retensi diperkuat lewat notifikasi personal, streak reminder, dan early warning dari penurunan frekuensi penggunaan.

4.4Partnerships And Retention

4.4.1 Partnership map

Partner TypeExample TargetsValue Exchange (what they get / what we get)PriorityFirst Approach
Komunitas Kesehatan Mental LokalInto The Light Indonesia, Ruang PsikologiMereka dapat konten edukasi & akses eksklusif untuk anggota; kami dapat distribusi ke audiens yang sadar kesehatan mentalTinggiTawarkan modul edukasi gratis + co-branded campaign untuk Bulan Kesehatan Mental
Universitas & Bimbingan Konseling MahasiswaUI, UGM, ITB (Pusat Konseling Mahasiswa)Mereka dapat alat pendukung layanan konseling; kami dapat akses ke mahasiswa sebagai pengguna awalTinggiPilot program “Mental Wellness Pack” untuk mahasiswa baru 2026/2027
Platform Kesehatan DigitalHalodoc, AlodokterMereka dapat fitur pendukung non-klinis; kami dapat integrasi sebagai bagian dari paket kesehatan holistikSedangAjukan kolaborasi konten dan referral link dari artikel kesehatan mental mereka
Aplikasi Produktivitas & HR TechSleekr, Talenta by MekariMereka dapat fitur kesejahteraan karyawan; kami dapat akses ke profesional perkotaanSedangTawarkan versi korporat SereneJourney Premium untuk karyawan
Influencer Kesehatan Mentaldr. Theodora, Psikolog Nadya KarinaMereka dapat konten autentik; kami dapat kepercayaan dan jangkauan ke Gen Z & milenialTinggiKampanye “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

StepUser ActionSuccess SignalIf Stuck
1. Splash Screen & OnboardingLewati animasi pembuka, pilih tujuan (misal: “Kurangi Kecemasan”)Menyelesaikan onboarding dalam ≤3 menitKirim notifikasi push: “Ayo mulai perjalanan tenangmu — hanya 1 menit lagi!”
2. AutentikasiDaftar dengan email atau Lovable CloudAkun terverifikasi dan loginTawarkan login cepat via Google setelah 10 menit tidak aktif
3. Mood Check-in PertamaJawab “Bagaimana perasaanmu hari ini?” + deskripsi singkatMoodEntry dibuat dalam 24 jam pertamaTrigger chatbot: “Kita semua punya hari yang berat. Mau cerita sedikit?”
4. Jurnal PertamaTulis refleksi >50 kata dengan mood tagJournalEntry dibuatTampilkan modal: “Ceritamu penting. Simpan perasaanmu di sini.”
Activation MetricPenyelesaian keempat langkah di atas dalam 24 jam pertamaTarget: 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 RiskEarly Warning SignalPlayOwner
Pengguna tidak kembali setelah hari pertamaTidak ada aktivitas >48 jamKirim notifikasi personal: “Kami merindukanmu. Hari ini kamu sedang apa?” + streak reminderGrowth Lead
Penurunan frekuensi check-in<3 mood entry dalam minggu pertamaUnlock badge “Pencatat Pertama” + rekomendasi jurnal temaProduct Manager
Tidak menggunakan fitur inti (meditasi, napas)Nol sesi latihan dalam 7 hariRekomendasi push: “Coba latihan napas 1 menit — untuk tenangkan pikiranmu sekarang”Content Strategist
Akun tidak sinkron lintas perangkatLogin di web tapi tidak di mobileEmail: “Lanjutkan perjalananmu di HP-mu. Sinkronkan sekarang.”Tech Support
Penurunan mood rata-rata selama 7 hariMoodTrend turun >20% dari baselineAI chatbot tawarkan sesi meditasi darurat + saran konselor lokalMental Health Advisor
Tidak buka notifikasi >72 jamToken notifikasi mati atau tidak dibukaGanti 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

MetricDefinitionTargetReview Cadence
Activation RatePersentase pengguna yang mencapai “aha moment” dalam 24 jam45% → validateMingguan
Retention (Week-4)Pengguna aktif yang masih gunakan app di minggu ke-430% → benchmarkMingguan
Referral RateRata-rata undangan berhasil per pengguna aktif0,8 → targetBulanan
Push Open RatePersentase notifikasi harian yang dibuka65% → estimateMingguan

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.

MAIN IDEA

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.

Prioritize low-CAC digital channels with high conversion potential among teens and professionals.
Achieve sustainable growth by aligning CAC payback under 6 months and premium conversion above 5%.
Build retention infrastructure early to support LTV expansion and reduce churn below 8% monthly.

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

PhaseStage GateMAUWAU/MAUCAC (IDR)Payback (bln)Premium Conv.Churn (bln)
0–3 bulanMVP live, uji coba saluran10.00030%25.00082%12%
3–6 bulanCAC < IDR 30k, retensi stabil50.00045%28.00063.5%9%
6–12 bulanLTV > 3× CAC, ekspansi B2B200.00055%30.00055%7%
12–24 bulanMonetisasi penuh, ekspansi regional500.00060%35.00047%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

MetricAsumsiTarget (bln 12)Monitoring
CACIDR 30.000 (rata-rata setelah uji coba)IDR 30.000Mingguan, per saluran
ARPU5% konversi × IDR 59.000 = IDR 2.950IDR 3.500 (dengan annual plan)Bulanan
Gross MarginBiaya server & notifikasi <15%85%Otomatis via dashboard
Payback PeriodCAC / (ARPU × margin)≤5 bulanSetiap 30 hari
LTVARPU × (1 / churn) × marginIDR 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

PeranWaktu RekrutRamp (bln)Target Produktivitas
Digital Marketing SpecialistBulan 11CAC < IDR 30.000 dalam 90 hari
Content Creator (Mental Health)Bulan 3215 konten/minggu, engagement >8%
Customer Support LeadBulan 41Response time <2 jam, CSAT >4.5/5
Partnership ManagerBulan 613 kemitraan korporat/tahun
Data AnalystBulan 91Laporan 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

Kategori0–6 bln (IDR)6–12 bln (IDR)12–24 bln (IDR)Catatan
Digital Ads (TikTok, IG)50.000.000120.000.000300.000.000Variabel, sesuai performa
Influencer & Content30.000.00060.000.000150.000.000Mikro-influencer, psikolog
Events (kampanye kesehatan)20.000.00040.000.00080.000.000Webinar, seminar kampus
CS Tooling (chatbot, helpdesk)15.000.00010.000.00015.000.000Opex tetap setelah setup
Total115.000.000230.000.000545.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

RisikoIndikator AwalLever Cadangan
Saluran digital tidak efektif (CAC tinggi)CAC > IDR 40.000 selama 2 bulanAlihkan ke kemitraan B2B dan komunitas offline
Regulasi ketat munculPeringatan dari Kemenkes atau mediaAktifkan legal advisory, kurangi klaim diagnostik
Konten tidak resonanEngagement <30%, churn >12%Libatkan psikolog lokal untuk kurasi konten
Burnout tim pendukungCSAT <4.0, response time >4 jamOtomasi 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

MAIN IDEA

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.

Risiko regulasi dan etika AI adalah ancaman High/High: pelanggaran bisa menghentikan operasi.
Ketergantungan pada akurasi algoritma diagnosis berisiko tinggi jika tidak divalidasi secara klinis.
Retensi pengguna dan konversi ke premium rentan jika fitur motivasi dan meditasi tidak cukup menarik.

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.

IDKategoriRisikoKemungkinanDampakMitigasiEarly Warning Signal
R-01RegulasiPelanggaran UU No. 36/2009 atau UU No. 17/2023 terkait layanan kesehatan mental digitalHighHighLibatkan konsultan hukum kesehatan digital sejak MVP; batasi diagnosis sebagai "skrining awal", bukan diagnosis medisPermintaan audit dari Kemenkes atau Kominfo
R-02ProdukDiagnosis AI tidak akurat atau menyesatkan penggunaHighHighGunakan algoritma berbasis skala klinis (PHQ-9, GAD-7); tambahkan disclaimer "bukan pengganti psikolog"Laporan pengguna tentang hasil diagnosis yang tidak relevan
R-03TeknisKegagalan autentikasi atau sinkronisasi data via Lovable CloudMediumHighUji integrasi Lovable Cloud secara berkala; siapkan fallback lokal sementaraPengguna melaporkan kehilangan data jurnal atau mood log
R-04OperasionalKetergantungan pada konten motivasi harian yang tidak relevan secara budayaMediumMediumLibatkan psikolog lokal dan penulis konten Indonesia dalam kurasi kutipanTingkat engagement notifikasi < 30%
R-05KeuanganKonversi ke tier Premium < 2% (di bawah breakeven)MediumHighUji A/B pricing (IDR 49.000 vs 59.000); tawarkan trial 7 hariPendapatan bulanan < IDR 150 juta pada bulan ke-6
R-06ProdukRetensi rendah karena kebiasaan harian (streak) tidak terbentukHighMediumOptimalkan notifikasi push dengan personalisasi waktu; tambahkan reminder malam hari70% pengguna tidak check-in >3 hari setelah onboarding
R-07TeknisPerforma AI chatbot lambat atau respons tidak empatikMediumHighGunakan model NLP ringan (distilBERT); latih dengan dataset percakapan IndonesiaSkor kepuasan chatbot < 3/5 dalam survei pengguna
R-08PasarPersaingan dengan Teduh atau TenangAI menekan akuisisi penggunaHighMediumFokus pada diferensiasi: mood tracking visual & breathing exercise interaktifCAC meningkat >50% dalam 3 bulan pertama
R-09OperasionalKeterlambatan rilis fitur meditasi karena lisensi audioLowMediumGunakan musik royalty-free atau kolaborasi dengan musisi lokalFitur meditasi tertunda >2 minggu dari roadmap
R-10RegulasiData sensitif kesehatan mental bocor atau disalahgunakanHighHighTerapkan enkripsi end-to-end; audit keamanan berkala; patuhi PDPALaporan 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.

SereneJourney — Skematika