Yomu

Dokumentasi Yomu

Dokumentasi lengkap untuk platform pembelajaran poliglot Yomu — Architecture, layanan, CI/CD, dan panduan pengembangan

Selamat datang di dokumentasi resmi Yomu. Yomu adalah platform pembelajaran poliglot yang dirancang untuk meningkatkan literasi bahasa Indonesia melalui pengalaman membaca dan kuis yang digamifikasi.

Architecture Sekilas

Prinsip Utama

No Shared State

Java dan Rust masing-masing memiliki database sendiri. Tidak ada query lintas database — semua pertukaran data melalui REST API atau gRPC.

Fault Tolerance

Jika engine Rust mati, operasi Java (registrasi, pengiriman kuis) tetap berhasil. Sinkronisasi yang gagal diantrekan dan dicoba ulang.

BFF Pattern

Frontend Next.js tidak pernah memanggil backend secara langsung. Semua panggilan API mengalir melalui route handler sisi server yang mengelola cookie autentikasi.

Tech Stack

LapisanTeknologiVersi
FrontendNext.js + React16 / 19
Java BackendSpring Boot4.0.2 / Java 21
Rust BackendAxum0.8.8 / Rust 2024
DatabasePostgreSQL + Redis18 / 8
CI/CDGitHub Actions
MonitoringPrometheus + Grafana + OpenTelemetry + Sentry + k6
DeploymentAWS EC2 + GHCR + Blue-Green

On this page