Lewati ke isi

Sentra Series — Tech Stack Baseline

Baseline ini berlaku untuk semua sistem Sentra kecuali ditulis sebagai override eksplisit di systems/<sistem>/01-architecture.md. Setiap perubahan versi di sini juga harus tercermin di docs/_meta/tech-baseline.yml.

Backend

Komponen Pilihan Versi minimum Alasan
API Service (business) NestJS (TypeScript) 10.x OO + decorator, ekosistem ORM matang (TypeORM/Prisma)
Sync / High-concurrency Service Go (Fiber/Gin) 1.22+ goroutines untuk sync engine offline-online
Database PostgreSQL 16+ partisi tabel per cabang, JSONB
Cache & Lock Redis Cluster 7.x Redlock, session, BullMQ
Message Queue BullMQ (Redis) retry & DLQ untuk sync

Frontend

Komponen Pilihan Versi Alasan
Owner Dashboard Next.js + Tailwind + shadcn/ui 14+ SSR + responsif
Mobile Staff React Native + Expo 50+ cross-platform Android/iOS

Communication / Notification

Komponen Pilihan Catatan
WhatsApp Fonnte atau Twilio provider lokal pertama
Real-time updates WebSockets KDS, queue, sync status

Payment Gateway

  • Midtrans atau Xendit (PJSP berlisensi BI)
  • Dynamic QRIS dengan PPN 11% & service fee

Auth & Security (lihat juga security-patterns.md)

  • RBAC dengan branch-scoped permission
  • JWT short-lived + refresh token rotation
  • API rate limiting per role + per IP

CI/CD & Distribusi

  • GitHub Actions untuk build & deploy
  • POS Client desktop: distribusi .msi (Windows) via Electron-builder atau Tauri bundler