Premium

Sistem Presensi Berbasis Geofencing dan AI (Flutter + Laravel + Vue.js) - SITEPAT

Rahmad Riskiadi Rahmad Riskiadi
11 Agustus 2026
80 Views
Sistem Presensi Berbasis Geofencing dan AI (Flutter + Laravel + Vue.js) - SITEPAT

Tentang Proyek Ini

SITEPAT adalah solusi absensi kelas enterprise terintegrasi (Mobile Client & Web Server) yang menggabungkan kecerdasan buatan (On-device AI), pemetaan geolokasi, dan manajemen operasional secara real-time.

Aplikasi ini dibagi menjadi dua komponen utama:

  1. Frontend Mobile (Flutter): Berfungsi sebagai klien lapangan yang digunakan langsung oleh pegawai. Menangani pengenalan wajah (Face Recognition), pendeteksian kehidupan (Liveness Detection), proteksi sistem lokal, dan sinkronisasi data presensi secara langsung.
  2. Backend Server (Laravel + Vue.js): Berfungsi sebagai otak sentral dan portal Admin Management. Menangani validasi token, Geofencing dinamis, penyimpanan data biometrik, pengelolaan Shift, dan Export Report.

đŸ—ī¸ Full-Stack Enterprise Architecture

       [ MOBILE CLIENT ]                         [ CLOUD & SERVER ]
                               
┌─────────────────────────────┐            ┌────────────────────────────┐
│      Flutter Mobile App     │            │   Laravel REST API Server  │
│                             │ ◄────────â–ē │                            │
│  - MLKit Face Detection     │   HTTPS    │  - JWT Auth Validation     │
│  - TFLite (MobileFaceNet)   │   (JWT)    │  - Data & Biometric Sync   │
│  - GPS & Anti-Fake Engine   │            │  - Location Geofencing     │
└─────────────────────────────┘            └─────────────â”Ŧ──────────────┘
                                                         │
┌─────────────────────────────┐            ┌─────────────â–ŧ──────────────┐
│       Local Services        │            │   Database & File Storage  │
│                             │            │                            │
│  - Firebase Notifications   │            │  - MySQL 8 (Relational)    │
│  - On-Device Face Embedding │            │  - Local Public Storage    │
└─────────────────────────────┘            └─────────────â”Ŧ──────────────┘
                                                         │
┌─────────────────────────────┐            ┌─────────────â–ŧ──────────────┐
│     End-User (Pegawai)      │            │       Web Admin Panel      │
│                             │            │                            │
│  - Absensi Harian           │            │  - Vue 3 + Inertia.js      │
│  - Izin & Dinas Luar        │            │  - Real-time Monitoring    │
│  - Rekam Data Wajah         │            │  - Pengaturan Core (.env)  │
└─────────────────────────────┘            └────────────────────────────┘

🚀 Key Features

📱 1. Mobile App Features (Frontend)

  • AI Face Recognition: Integrasi MobileFaceNet dengan 192D Embedding untuk deteksi wajah presisi.
  • Anti-Spoofing & Liveness: Validasi kehadiran pegawai asli melalui Blink Detection.
  • Security Engine: Proteksi otomatis terhadap aplikasi Fake GPS dan Manipulasi Zona Waktu (Anti Fake Time).
  • Background Support: Notifikasi push melalui Firebase Cloud Messaging.
  • Modern UI/UX: Snackbar interaktif mirip Dynamic Island (GetX), mendukung mode malam dan navigasi mulus.

đŸ’ģ 2. Web & Admin Features (Backend)

  • Role-Based Access Control (RBAC): Manajemen hak akses multi-level (Admin Super, Admin, Pegawai).
  • Dynamic Geofencing: Pengaturan titik kantor dan radius kehadiran absensi secara live tanpa re-deploy aplikasi.
  • Face ID Management: Hak eksklusif Admin Super untuk menghapus paksa data wajah (Face Embedding) jika pegawai harus merekam ulang.
  • Shift & Pattern Management: Penjadwalan kompleks (Dinas Normal, Shift Regu, dan mode Libur).
  • Dynamic System Settings: Admin Super dapat mengubah Environment aplikasi (.env), Endpoint, URL, dan konfigurasi database langsung melalui UI.
  • Advanced Reporting: Hasilkan laporan absensi dinamis (Harian/Bulanan) untuk format PDF, CSV, dan Excel.

đŸ› ī¸ Technology Stack (Full-Stack)

Layer Teknologi & Stack Kegunaan Utama
Mobile Frontend Flutter (v3.x), GetX Pembangunan UI responsif dan State Management.
Mobile AI MLKit, TFLite (MobileFaceNet) Pengenalan wajah secara offline di perangkat klien.
Mobile Security Geolocator, Dio, TrustFall Ekstraksi kordinat aman, API calls, dan deteksi kecurangan sistem.
Backend Core Laravel 11.x (PHP 8.2+) REST API sentral, Validasi Server-Side, Logika Bisnis.
Backend Auth Tymon JWT, Session Manajemen Token API untuk Mobile dan sesi statis untuk Admin Web.
Web Admin UI Vue 3, Inertia.js, TailwindCSS Single-Page Application reaktif untuk Dasbor Administrator.
Database MySQL 8.x Relasional penyimpan riwayat absensi, vektor wajah, dan akun.

🔐 Security & Privacy Workflow

  1. Biometric Privacy: Saat enrollment (Pendaftaran Wajah), aplikasi mengubah citra foto wajah menjadi angka vektor (192-Dimensional Array). Array inilah yang disimpan dan dicocokkan (melalui metode Euclidean/Cosine Distance).
  2. Double Encryption: Jalur data klien dan server dienkripsi melalui protokol HTTPS, dilengkapi standar autentikasi JWT dinamis yang sulit ditembus.
  3. Environment Security: Kode Backend mengunci Mixed Content secara paksa URL::forceScheme('https') di skala produksi dan menjaga hak modifikasi parameter inti (seperti nama basis data) pada menu Settings hanya untuk Super Admin.

An ecosystem where cutting-edge Mobile AI perfectly balances a robust Enterprise Backend.

Galeri Antarmuka

Dashboard Karyawan - Menampilkan statistik kehadiran secara real-time, jadwal shift dinamis, dan peta geofence langsung untuk keperluan check-in.
Navigasi Menu - Menu tindakan diaktifkan atau dinonaktifkan secara dinamis berdasarkan jadwal giliran kerja (shift) waktu nyata dan status kehadiran pengguna saat ini.
Onboarding Biometrik Langsung - Pengguna yang belum memiliki data embedding wajah waktu nyata harus menyelesaikan pendaftaran wajah secara langsung sebelum dapat melakukan check-in.
Pendaftaran Biometrik - Karyawan merekam data wajah mereka secara real-time untuk menghasilkan embedding yang aman guna keperluan verifikasi kehadiran di kemudian hari.
Halaman Detail Karyawan - Fitur ini mengunci kredensial resmi dan mengonfirmasi status aktif data biometrik wajah pengguna yang aman.
Teknologi anti-spoofing - Deteksi keberadaan pengguna secara real-time memerlukan gerakan wajah aktif, guna memastikan proses check-in tidak dapat dimanipulasi menggunakan foto.
Pencocokan wajah AI berhasil! - Sistem mencatat kehadiran dan menampilkan *pop-up* yang membandingkan hasil tangkapan langsung dengan embedding yang tersimpan.
Geofencing Ketat - Upaya check-in di luar radius kantor langsung diblokir sebelum akses kamera diberikan, sehingga memicu peringatan dinamis.
Anti-Cheat aktif! - Blokir keamanan tingkat sistem operasi akan langsung menghentikan pencatatan kehadiran jika Mock Location (GPS Palsu) terdeteksi.
Manipulasi waktu dicegah! - Aplikasi ini menerapkan sinkronisasi waktu server yang ketat dan menghentikan proses check-in dan check-out jika jam pada perangkat lokal diubah.
 Portal Admin Reaktif - Dibangun menggunakan Laravel dan Vue.js, dilengkapi dengan analitik kehadiran real-time, log aktivitas langsung, dan manajemen shift.
Portal Manajemen Pengguna - Antarmuka CRUD lengkap untuk data personel, dilengkapi dengan fitur impor CSV massal, ekspor PDF, dan status biometrik secara real-time.
Formulir Personel Dinamis - Admin dapat memperbarui peran, penugasan sif, dan izin lokasi secara langsung melalui komponen panel samping yang responsif.
Manajer Geofence Multi-Tenant - Tentukan koordinat peta dan radius yang presisi untuk cabang-cabang tertentu guna memastikan prosedur presensi berbasis lokasi yang ketat.
Dynamic Shift Engine - Kelola tenaga kerja hibrida secara mulus dengan menetapkan jam kerja dan siklus rotasi yang disesuaikan bagi staf kantor maupun staf lapangan.

Timeline & Pembaruan

Tertarik dengan hasil karya ini?

Mari ciptakan solusi serupa atau kustomisasi sesuai dengan ekosistem bisnis Anda.

WhatsApp
Respon Cepat