Arsitektur & Teknologi Stack - Ahmad-Rizki21/SaaS-HRM-System GitHub Wiki
🏛️ Arsitektur & Teknologi Stack
Sistem ini mengadopsi prinsip API-First Architecture dan Multi-Tenant Data Isolation.
🛠️ Backend (The Engine)
- Framework: Laravel 13 (PHP 8.3+)
- Autentikasi: Laravel Sanctum (Token-based)
- Database: MySQL 8.4 (Master-Slave Replication)
- Queue/Real-time: Laravel Reverb (WebSocket) & Redis
- Cloud Notification: Firebase Cloud Messaging (FCM v1 API)
🖥️ Frontend Dashboard (Admin Panel)
- Framework: Next.js 16 (React 19)
- Styling: Tailwind CSS 4 & Shadcn/ui
- State Management: React Query / Server Components
- Maps: Leaflet & React-Leaflet (Heatmap Attendance)
📱 Mobile App (Employee Portal)
- Framework: Flutter SDK 3.11+ (Dart)
- Face Detection: Google ML Kit
- Location: Geolocator Plugin with Haversine Formula distance calculation.
🛡️ Keamanan Data
Setiap request API wajib melewati TenantMiddleware yang memastikan isolasi company_id. Data dibatasi secara ketat di level database melalui Global Scopes agar tenant satu tidak dapat melihat data dari tenant lainnya.