Masalah dengan Cloud-First

Mayoritas software modern bergantung penuh pada koneksi internet. Di Indonesia, ini masalah nyata: koneksi tidak stabil, latency tinggi, dan kadang mati total.

Prinsip Local-First

Local-first berarti:

  • Data disimpan lokal — SQLite di device, bukan remote DB
  • Operasi offline — semua fitur berjalan tanpa internet
  • Sync opsional — cloud adalah backup, bukan sumber kebenaran

Implementasi di BirruHealthOS

// Local SQLite sebagai primary store
const db = new Database('./local.db');

// Sync queue — dikirim ke cloud saat online
const syncQueue = new Queue('sync', {
  connection: redisClient,
  defaultJobOptions: { attempts: 5 },
});

Trade-off

AspekLocal-FirstCloud-First
Kecepatan⚡ Instant (0ms)🐢 Tergantung jaringan
Offline✅ Penuh❌ Tidak bisa
Sync ConflictButuh resolverTidak ada

Untuk software operasional yang dipakai di lapangan, local-first bukan sekadar pilihan gaya — ini adalah keharusan fungsional.