π₯ Advanced Faculty & Student Database Intelligence System π₯
Inspired by Watch Dogs ctOS - Elegant, Futuristic, Powerful
DB-Cracker adalah aplikasi mobile canggih yang dirancang untuk mengakses dan menganalisis database akademik Indonesia dengan antarmuka yang terinspirasi dari sistem ctOS dalam game Watch Dogs. Aplikasi ini menyediakan akses comprehensive ke data dosen dan mahasiswa dari berbagai sumber API pendidikan Indonesia.
- ctOS Aesthetic: Dark theme dengan aksen cyan/hijau neon
- Futuristic UI: Typography monospace, animasi glow, efek hacker
- Responsive Layout: Mengikuti prinsip design Gojek untuk mobile-first experience
- Data Visualization: Presentasi data yang elegan dan mudah dibaca
- Fixed: RenderFlex overflow 76 pixels pada hasil pencarian dosen
- Fixed: RenderFlex overflow 8.7 pixels pada layout footer dan header
- Improved: Responsive design untuk Android device M2102J20SG (1080x2400)
- Enhanced: Text wrapping dan ellipsis untuk nama dosen panjang
- Optimized: Ukuran font dan spacing untuk efisiensi ruang layar
- Fixed: API 404 error saat fetch detail dosen dengan multiple endpoint fallback
- Added: Input validation dan sanitization untuk search query
- Enhanced: Timeout handling 30 detik untuk request API
- Improved: Error messages yang user-friendly berdasarkan jenis error
- Added: Memory leak prevention dengan mounted check
- CtOSErrorBoundary: Widget untuk error handling yang konsisten
- CtOSLoadingWidget: Loading states dengan animasi ctOS theme
- CtOSEmptyWidget: Empty states dengan styling yang seragam
- Real Data Display: Hasil pencarian menampilkan data asli dari PDDikti API
- Better Error Handling: Fallback yang lebih baik ketika API mengalami masalah
- Consistent UI: Data yang ditampilkan konsisten antara pencarian dan detail view
- Multi-Source Search: Pencarian dari berbagai API pendidikan Indonesia
- Real-time Results: Hasil pencarian langsung dengan animasi loading
- Smart Filtering: Filter berdasarkan perguruan tinggi, program studi
- Comprehensive Data: Akses ke semua data yang tersedia dari PDDikti API
- β Informasi Personal: Nama, NIDN/NIDK, gelar, jenis kelamin, tempat/tanggal lahir
- β Status Kepegawaian: Ikatan kerja, status aktivitas, jabatan akademik
- β Riwayat Pendidikan: S1/S2/S3, perguruan tinggi asal, tahun lulus
- β Jabatan Fungsional: Asisten Ahli, Lektor, Lektor Kepala, Guru Besar
- β Sertifikasi Dosen: Status, tahun, nomor sertifikat
- β Riwayat Mengajar: Mata kuliah, semester, perguruan tinggi
- β Portfolio Akademik: Penelitian, pengabdian, karya ilmiah, paten
- β Homebase & Penugasan: Status homebase, riwayat penugasan
- β Informasi Personal: Nama, NIM, jenis kelamin, tempat/tanggal lahir, alamat
- β Status Akademik: Aktif, cuti, lulus, DO, semester saat ini
- β Perguruan Tinggi: Nama PT, program studi, akreditasi
- β Riwayat Studi: Tahun masuk, jalur masuk, semester aktif terakhir
- β Transkrip Nilai: Mata kuliah, nilai huruf & angka, SKS, IP per semester
- β Riwayat Kelas: Mata kuliah, nama dosen pengajar, kelas/kelompok
- β Data Kelulusan: Tanggal lulus, nomor ijazah, IPK, predikat, judul skripsi
- Informasi PT: Nama, status, akreditasi, alamat
- Program Studi: Daftar prodi, akreditasi, jenjang
- Statistik: Jumlah dosen, mahasiswa, lulusan
- Flutter 3.x: Cross-platform mobile development
- Dart: Programming language
- Material Design 3: Modern UI components
- Custom Widgets: ctOS-themed components
- PDDikti API: Sumber data utama Kementerian Pendidikan
- Multi-API Factory: Integrasi berbagai sumber data
- HTTP Client: Networking dengan error handling
- JSON Parsing: Robust data processing
- Clean Architecture: Separation of concerns
- Repository Pattern: Data abstraction layer
- Factory Pattern: API service management
- Singleton Pattern: State management
Flutter SDK >= 3.0.0
Dart SDK >= 3.0.0
Android Studio / VS Code
Android Device / Emulatorgit clone https://github.com/el-pablos/DB-Cracker.git
cd DB-Crackerflutter pub get# Debug mode
flutter run
# Release mode
flutter run --release
# Specific device
flutter run -d <device-id>- Buka aplikasi dan pilih "Cari Dosen"
- Masukkan nama dosen yang ingin dicari
- Gunakan filter perguruan tinggi jika diperlukan
- Tap pada hasil untuk melihat detail lengkap
- Pilih "Cari Mahasiswa" dari menu utama
- Masukkan nama atau NIM mahasiswa
- Filter berdasarkan perguruan tinggi atau program studi
- Akses profil lengkap dengan riwayat akademik
- Pilih "Database PT" untuk menjelajahi perguruan tinggi
- Cari berdasarkan nama atau lokasi
- Lihat detail lengkap termasuk program studi
// lib/utils/constants.dart
class ApiConstants {
static const String pddiktiBaseUrl = 'https://api-pddikti.kemdiktisaintek.go.id';
static const int requestTimeout = 30; // seconds
static const bool enableMockData = false; // for testing
}// lib/utils/constants.dart
class CtOSColors {
static const Color primary = Color(0xFF00FF41);
static const Color secondary = Color(0xFF00D4FF);
static const Color background = Color(0xFF0A0A0A);
static const Color surface = Color(0xFF1A1A1A);
}Kontribusi sangat diterima! Silakan ikuti langkah berikut:
- Fork repository ini
- Create feature branch (
git checkout -b feature/AmazingFeature) - Commit perubahan (
git commit -m 'Add: AmazingFeature') - Push ke branch (
git push origin feature/AmazingFeature) - Open Pull Request
add: menambahkan fitur baru
fix: memperbaiki bug
update: memperbarui fitur yang ada
remove: menghapus fitur/file
docs: perubahan dokumentasi
style: perubahan styling/UI
refactor: refactoring code
test: menambahkan/memperbaiki test
Distributed under the MIT License. See LICENSE for more information.
Pablos Full-Stack Developer & Mobile App Specialist
"Building the future, one line of code at a time"
- Kementerian Pendidikan Indonesia - Untuk API PDDikti
- Flutter Team - Framework yang luar biasa
- Watch Dogs Series - Inspirasi design ctOS
- Gojek Design Team - Referensi responsive layout
- Open Source Community - Dukungan dan kontribusi
β Jika proyek ini membantu, jangan lupa berikan star! β
Made with β€οΈ by Pablos