Mobile Applications
Completed
June 2026
Devakad Mobile
Aplikasi mobile akademik berbasis Flutter & GetX yang memudahkan mahasiswa mengakses jadwal kuliah, status AKM, dan data perkuliahan secara instan lewat antarmuka yang bersih dan responsif.
DevakadMobile.view
LIVE
Ringkasan Proyek
Latar belakang dan cakupan sistem
Devakad adalah aplikasi mobile portal akademik yang dirancang untuk menjembatani kebutuhan informasi perkuliahan mahasiswa Universitas Negeri Medan (UNIMED) ke dalam genggaman smartphone. Aplikasi ini mengintegrasikan API sistem akademik kampus (devakad) untuk menampilkan data esensial mahasiswa secara real-time—mulai dari identitas akademik, status aktivitas kuliah semester (AKM), status pembayaran UKT, hingga jadwal mata kuliah mingguan lengkap beserta dosen pengampu. Dibangun menggunakan arsitektur modular GetX di Flutter, aplikasi ini fokus pada kecepatan akses data dan kenyamanan penggunaan sehari-hari.
Latar Belakang & Kebutuhan
Kendala operasional dan kebutuhan spesifikasi sistem
Mengakses portal akademik web kampus lewat peramban ponsel sering kali merepotkan: navigasi kurang fleksibel di layar kecil, sesi login kerap kedaluwarsa, dan struktur halaman terlalu padat untuk sekadar mengecek jadwal harian atau status pembayaran UKT.
Dari sisi teknis, tantangan terbesarnya ada pada integrasi legacy system: API backend kampus mengembalikan variasi struktur JSON yang dinamis (kadang array, kadang single object tergantung status mahasiswa aktif atau wisudawan), serta penggunaan mekanisme hashing keamanan (password salt & hash) lama yang harus diverifikasi secara presisi di client-side tanpa merusak integritas autentikasi.
Dari sisi teknis, tantangan terbesarnya ada pada integrasi legacy system: API backend kampus mengembalikan variasi struktur JSON yang dinamis (kadang array, kadang single object tergantung status mahasiswa aktif atau wisudawan), serta penggunaan mekanisme hashing keamanan (password salt & hash) lama yang harus diverifikasi secara presisi di client-side tanpa merusak integritas autentikasi.
Solusi & Desain Sistem
Pendekatan arsitektur dan struktur logika sistem
Saya merancang aplikasi mobile dengan arsitektur GetX (Pattern MVC/Modular) yang ringan dan responsif.
Solusi yang dihadirkan meliputi:
1. Robust Data Parsing Layer: Membangun lapisan DevakadApiProvider yang adaptif terhadap anomali respon API—mampu memproses payload fleksibel baik untuk mahasiswa aktif maupun alumni.
2. Multi-Hash Verification Engine: Mengembangkan mekanisme pencocokan kredensial berbasis kombinasi algoritma kriptografi (MD5, SHA-512, dan salting) yang kompatibel dengan database akademik eksisting.
3. Clean Academic Dashboard: Menghadirkan UI bertema hijau segar yang ramah mata dengan visualisasi kartu informatif, navigasi one-tap ke jadwal kuliah, dan pengelompokan jadwal berdasarkan hari secara otomatis.
Solusi yang dihadirkan meliputi:
1. Robust Data Parsing Layer: Membangun lapisan DevakadApiProvider yang adaptif terhadap anomali respon API—mampu memproses payload fleksibel baik untuk mahasiswa aktif maupun alumni.
2. Multi-Hash Verification Engine: Mengembangkan mekanisme pencocokan kredensial berbasis kombinasi algoritma kriptografi (MD5, SHA-512, dan salting) yang kompatibel dengan database akademik eksisting.
3. Clean Academic Dashboard: Menghadirkan UI bertema hijau segar yang ramah mata dengan visualisasi kartu informatif, navigasi one-tap ke jadwal kuliah, dan pengelompokan jadwal berdasarkan hari secara otomatis.
Pendekatan Teknis & Pemilihan Teknologi
Alasan pemilihan teknologi dan alur proses data
1. State Management & Routing: Memanfaatkan GetX untuk reactive state management (Rx, Obx), navigasi tanpa context yang rapi, dan dependency injection via bindings.
2. API Integration & Resilience: Menggunakan GetConnect dengan custom transformer untuk menangani HTTP x-www-form-urlencoded, timeout control 30 detik, serta parsing dinamis (antisipasi payload bertipe String JSON, List, atau Map).
3. Security & Auth Hashing: Implementasi modul MahasiswaAuthService menggunakan library crypto untuk mengeksekusi verifikasi multi-kandidat hash password terhadap salt database legacy.
4. Local Session Management: Menyimpan data sesi dan preferensi pengguna secara aman via SharedPreferences dan flutter_dotenv untuk isolasi kredensial konfigurasi sistem.
5. UI/UX Engineering: Menerapkan Material 3 dengan custom design tokens, soft border card, micro-states (shimmer/loading indicators, graceful empty state, error inline refresh).
2. API Integration & Resilience: Menggunakan GetConnect dengan custom transformer untuk menangani HTTP x-www-form-urlencoded, timeout control 30 detik, serta parsing dinamis (antisipasi payload bertipe String JSON, List, atau Map).
3. Security & Auth Hashing: Implementasi modul MahasiswaAuthService menggunakan library crypto untuk mengeksekusi verifikasi multi-kandidat hash password terhadap salt database legacy.
4. Local Session Management: Menyimpan data sesi dan preferensi pengguna secara aman via SharedPreferences dan flutter_dotenv untuk isolasi kredensial konfigurasi sistem.
5. UI/UX Engineering: Menerapkan Material 3 dengan custom design tokens, soft border card, micro-states (shimmer/loading indicators, graceful empty state, error inline refresh).
Peran & Tanggung Jawab
Tanggung jawab langsung dalam pengembangan modul
1. Merancang arsitektur aplikasi Flutter dari tahap inisiasi hingga production-ready.
2. Menganalisis endpoint API akademik kampus, melakukan pemetaan skema data, dan membangun model data Dart yang type-safe.
3. Menyelesaikan permasalahan autentikasi kompatibilitas legacy hash/salt pada sistem login mahasiswa.
4. Merancang dan mengimplementasikan seluruh UI/UX aplikasi agar intuitif dan nyaman dipakai harian oleh mahasiswa.
5. Melakukan optimasi alur pengelompokan (grouping & sorting) jadwal kuliah berdasarkan hari dan jam temu kelas.
2. Menganalisis endpoint API akademik kampus, melakukan pemetaan skema data, dan membangun model data Dart yang type-safe.
3. Menyelesaikan permasalahan autentikasi kompatibilitas legacy hash/salt pada sistem login mahasiswa.
4. Merancang dan mengimplementasikan seluruh UI/UX aplikasi agar intuitif dan nyaman dipakai harian oleh mahasiswa.
5. Melakukan optimasi alur pengelompokan (grouping & sorting) jadwal kuliah berdasarkan hari dan jam temu kelas.
Hasil & Dampak Proyek
Pencapaian fungsional dan pengujian hasil implementasi
1. Akses Data Super Cepat: Waktu pengecekan jadwal kuliah dan status UKT terpangkas dari yang sebelumnya butuh 4–6 langkah di web browser menjadi hanya 1 kali buka aplikasi (< 2 detik).
2. Zero Parsing Crash: Penanganan respon API yang fault-tolerant berhasil menekan unhandled exception hingga 0% meski struktur data backend kampus tidak konsisten antar status akun mahasiswa.
3. Pengalaman Pengguna yang Intuitif: Mahasiswa mendapatkan antarmuka modern yang jauh lebih bersih, ringan, dan fokus pada kebutuhan harian mereka.
2. Zero Parsing Crash: Penanganan respon API yang fault-tolerant berhasil menekan unhandled exception hingga 0% meski struktur data backend kampus tidak konsisten antar status akun mahasiswa.
3. Pengalaman Pengguna yang Intuitif: Mahasiswa mendapatkan antarmuka modern yang jauh lebih bersih, ringan, dan fokus pada kebutuhan harian mereka.