Skip to content

Project Goals

Visi

Jadi platform les privat yang paling terpercaya di Indonesia — di mana setiap sesi les tercatat, tervalidasi, dan ter-audit dengan transparan.

Misi

  1. Transparansi — Murid, guru, dan backoffice semua punya visibilitas yang sama terhadap status les.
  2. Akuntabilitas — Setiap les harus divalidasi oleh minimal 2 pihak (guru + murid) dan dimonitor backoffice.
  3. Efisiensi Operasional — Backoffice bisa mengelola order, jadwal, konfirmasi, dan laporan dari satu dashboard.
  4. Trust & Safety — Evidence foto dan presence report memastikan les benar-benar berjalan.

Goals Teknis (2026)

Q2: MVP

  • [ ] Website publik dengan landing page
  • [ ] Auth system lengkap (Google, Email/Password, Magic Link)
  • [ ] Role system: student, teacher, admin, owner
  • [ ] Order & pembayaran dengan bukti transfer
  • [ ] Lesson session management
  • [ ] Triple-confirmation flow
  • [ ] Presence reporting (wajib)
  • [ ] Photo evidence upload
  • [ ] Backoffice dashboard untuk admin/owner

Q3: Enhancement

  • [ ] Interface lengkap untuk murid (dashboard, history, notifikasi)
  • [ ] Interface lengkap untuk guru (jadwal, confirm, presence)
  • [ ] Kalender murid untuk booking slot waktu
  • [ ] Google Calendar sync (optional untuk student, wajib untuk teacher)
  • [ ] 2FA untuk admin dan owner
  • [ ] Notifikasi email/WhatsApp untuk reminder les

Q4: Scale

  • [ ] Analytics dan reporting
  • [ ] Mobile-responsive optimization
  • [ ] Multi-cabang support
  • [ ] Performance optimization

Success Metrics

MetricTarget
Monthly Active Users500 (end of 2026)
Les Completion Rate95%
Confirmation Mismatch Rate< 5%
Presence Submission Rate100%
API Response Time (p95)< 200ms
Uptime99.9%

Principles

  1. Data Integrity > Speed — Setiap transaksi les harus tercatat lengkap. Lebih baik lambat tapi akurat.
  2. Audit Trail First — Semua action (confirm, upload, verify) harus punya timestamp dan actor.
  3. Simplicity — Backoffice workflow harus intuitif. Admin tidak perlu training lama.
  4. Indonesia First — Payment via transfer bank lokal, Bahasa Indonesia, timezone WIB.

Decision Log

2026-05-08: Monorepo dengan Cloudflare Stack

Context: Perlu deploy di edge dengan biaya rendah dan scalability tinggi. Decision: Pakai Cloudflare full stack: D1 (DB), R2 (storage), Workers (API), Pages (web + docs). Impact: Low latency di Indonesia, murah, tapi ada constraint D1 (SQLite, limited transactions).

2026-05-08: better-auth untuk Auth

Context: Perlu auth system yang support Google OAuth, Email/Password, dan Magic Link. Decision: better-auth 1.6 dengan Drizzle adapter dan Resend untuk email. Impact: Role system via additionalFields, session cookie flow, magic link via email OTP.

2026-05-08: Triple-Confirmation Flow

Context: Perlu memastikan les benar-benar berjalan dan tidak ada fraud. Decision: Implementasi 4 konfirmasi: teacher start, student start, teacher end, student end. Backoffice monitor dan resolve mismatch. Impact: Lebih kompleks tapi memberikan audit trail yang kuat.

Untuk detail teknis dan arsitektur, lihat Architecture.

Released under the MIT License.