Arsitektur

Arsitektur Aplikasi

Garap memakai arsitektur client–server berlapis:

  1. Lapisan Pengguna (Client): aplikasi hybrid Flutter untuk Klien dan Mahasiswa, serta dashboard web untuk Admin.
  2. Lapisan Layanan (Backend/API): menjalankan logika bisnis dan menghubungkan aplikasi dengan database dan layanan pihak ketiga.
  3. Lapisan Data: database dan penyimpanan file.
  4. Layanan Eksternal: pembayaran dan notifikasi.

Diagram Arsitektur

Arsitektur Aplikasi Garap

Teknologi

Bagian Teknologi Alasan
Aplikasi Flutter (Dart) Satu kode untuk Android dan iOS
Backend Node.js (REST API) Ringan, banyak dokumentasi
Database PostgreSQL Cocok untuk data relasional (pengguna, tugas, transaksi)
Penyimpanan file Cloud storage Menyimpan hasil kerja dan portofolio
Pembayaran Midtrans atau Xendit Mendukung QRIS, e-wallet, dan transfer bank
Notifikasi Firebase Cloud Messaging Gratis dan andal
Chat WebSocket atau Firebase Pesan waktu nyata

Alur data singkat

Klien memasang tugas → API menyimpan ke database → Mahasiswa menerima notifikasi → penawaran dikirim → Klien memilih dan membayar → payment gateway menahan dana → Mahasiswa mengunggah hasil → Klien menyetujui → dana diteruskan ke dompet Mahasiswa → rating dan portofolio diperbarui.