Pengumpulan EAS Pemrograman Perangkat Bergerak G
📚 PerpustakaanKu
Aplikasi Manajemen Perpustakaan Modern dengan Android & Jetpack Compose
👥 Tim Pengembang
👨💻 Muhammad Rayyaan Fatikhahur RakhimNRP: 5025221047 |
👨💻 Moch. AvinNRP: 5025221061 |
👨💻 Abiyu Ramadhan KieslyNRP: 5025221123 |
🎓 Final Project PPB - Pemrograman Perangkat Bergerak
Institut Teknologi Sepuluh Nopember (ITS) - 2025
📎 Resource Links
Akses dokumentasi lengkap, presentasi, dan demo aplikasi melalui link berikut:
📊 Presentasi PPT |
🎥 Demo Video |
💻 Source Code |
📱 Download APK |
📝 Laporan Project |
📝 Catatan: silahkan klik pada card terkait
🎯 Overview Aplikasi
PerpustakaanKu adalah aplikasi manajemen perpustakaan modern yang dibangun menggunakan teknologi Android terbaru. Aplikasi ini dirancang untuk memudahkan pengelolaan koleksi buku, sistem peminjaman, dan tracking inventory dengan antarmuka yang intuitif dan performa yang optimal.
100%
Kotlin
|
15+
Screens
|
MVVM
Architecture
|
Material 3
Design
|
⭐ Fitur Utama
🔐 Sistem AutentikasiLogin dan registrasi pengguna dengan enkripsi password menggunakan SHA-256. Sistem session management dengan SharedPreferences. |
📖 Manajemen BukuCRUD lengkap untuk koleksi buku dengan metadata seperti ISBN, genre, tahun terbit, kondisi, dan lokasi penyimpanan. |
📋 Sistem PeminjamanTrack peminjaman dan pengembalian buku dengan riwayat lengkap, tanggal, dan catatan khusus. |
🔍 Pencarian & FilterPencarian real-time berdasarkan judul atau penulis, dengan filter status ketersediaan buku. |
📊 Dashboard StatistikVisualisasi data koleksi dengan jumlah total buku, buku tersedia, dan buku yang sedang dipinjam. |
🎨 Modern UI/UXAntarmuka modern dengan Material Design 3, animasi smooth, dan responsive design. |
🛠️ Tech Stack
Frontend & UI
-
Jetpack Compose
Modern UI toolkit untuk membangun native Android UI dengan declarative approach -
Material Design 3
Latest design system Google dengan dynamic theming dan modern components -
Navigation Compose
Type-safe navigation dengan argument passing antar screens -
Custom Font (Poppins)
Typography modern dengan berbagai font weights untuk enhanced readability
Backend & Data
-
Room Database
SQLite abstraction layer dengan compile-time query verification -
Kotlin Coroutines
Asynchronous programming untuk operasi database dan network -
StateFlow & Flow
Reactive data streams untuk real-time UI updates -
Repository Pattern
Abstraction layer untuk data access dengan single source of truth
🏗️ Arsitektur Aplikasi
Aplikasi menggunakan Clean Architecture dengan MVVM pattern untuk memastikan kode yang scalable, testable, dan maintainable.
Lapisan Arsitektur
🎨 UI Layer (Presentation)
Screens, ViewModels, Composables
LoginScreen, BookListScreen, AddEditBookScreen, BookDetailScreen, BorrowBookScreen
🔄 Domain Layer
Repository, Use Cases, Models
Business logic dan data abstraction layer
💾 Data Layer
Database, DAOs, Data Sources
Room Database dengan DAO implementations
💾 Database Schema
Aplikasi menggunakan Room Database dengan 3 tabel utama:
1. Books Table
2. Borrowing History Table
3. Users Table
🔒 Keamanan
Password Security
Fitur Keamanan
- SharedPreferences Encryption: Secure storage untuk user session
- Auto Logout: Session timeout untuk enhanced security
- Input Validation: Comprehensive validation untuk semua user inputs
- SQL Injection Protection: Room ORM provides automatic protection
- Local Database Security: Android security sandbox
- Password Policy: Minimum 6 characters enforcement
📱 Screenshots
|
🚀 Pengembangan Selanjutnya
Features Roadmap
☁️ Cloud SyncSinkronisasi data dengan Firebase untuk multi-device access |
📸 Barcode ScannerIntegration dengan CameraX untuk scan ISBN barcode |
📊 Advanced AnalyticsCharts dan reporting dengan popular book analysis |
🔔 Push NotificationsReminder untuk return dates dan overdue notifications |
Technical Improvements
- Testing: Unit tests, UI tests, dan integration tests
- CI/CD: GitHub Actions untuk automated testing & deployment
- Performance: Database pagination dan image caching
- Accessibility: Full accessibility support untuk users dengan disabilities
- Localization: Multi-language support
- Offline-first: Enhanced offline capabilities dengan sync
🚀 Pengembangan Selanjutnya
Features Roadmap
☁️ Cloud SyncSinkronisasi data dengan Firebase untuk multi-device access |
📸 Barcode ScannerIntegration dengan CameraX untuk scan ISBN barcode |
📊 Advanced AnalyticsCharts dan reporting dengan popular book analysis |
🔔 Push NotificationsReminder untuk return dates dan overdue notifications |
Technical Improvements
- Testing: Unit tests, UI tests, dan integration tests
- CI/CD: GitHub Actions untuk automated testing & deployment
- Performance: Database pagination dan image caching
- Accessibility: Full accessibility support untuk users dengan disabilities
- Localization: Multi-language support
- Offline-first: Enhanced offline capabilities dengan sync
📚 Daftar Tugas & Proyek
- Resume Perkembangan Teknologi Perangkat Bergerak pada Perangkat Mobile
- Membuat Hello World App
- Membuat Birthday Greeting App
- Membuat Dice Roller App
- Membuat App Kalkulator Sederhana
- Membuat App Kalkulator Konversi Mata Uang Sederhana
- Membuat Halaman Login
- Membuat Image Scroll
- Membuat Aplikasi Woof
- Membuat Cake Clicker App
- Meredesign Starbuck App
- Proyek - Mobile Front End
- Proyek - Mobile Bank Digital
Comments
Post a Comment