ETS PPB G - Membuat Aplikasi Centry: Money Tracker App Menggunakan Jetpack Compose
Evaluasi Tengah Semester PPB G 2025
oleh :
- Arfi Raushani Fikra (5025211084)
- Farhan Dwi Putra (5025211093)
a. Fitur Utama
-
Tambah pemasukan dan pengeluaran dengan mudah
-
Lihat histori transaksi
-
UI modern menggunakan Jetpack Compose
centry/
├── ui/
│ ├── screens/
│ │ ├── HomeScreen.kt
│ │ └── AddTransactionScreen.kt
│ │ └── AnalyticsScreen.kt
│ ├── components/
│ │ └── TransactionItem.kt
│ │ └── TransactionGroupCard.kt
│ ├── theme/
│ │ └── Color.kt
│ │ └── Theme.kt
│ │ └── Type.kt
├── model/
│ └── Transaction.kt
│ └── TransactionType.kt
├── viewmodel/
│ └── TransactionViewModel.kt
├── CentryApp.kt
├── LoginScreen.kt
└── MainActivity.kt
Proyek ini menggunakan beberapa pustaka berikut:
-
Material3
-
Kotlin Standard Library
📁 centrymoneytracker/
-
MainActivity.kt: Aktivitas utama aplikasi, berfungsi sebagai entry point. -
LoginScreen.kt: Kemungkinan layar login untuk otentikasi pengguna. -
CentryApp.kt: Kemungkinan mendefinisikan@Composableroot aplikasi dan pengaturan tema.
📁 centrymoneytracker/model/
Berisi model data:
-
Transaction.kt: Data class yang mewakili transaksi (jumlah, deskripsi, tanggal, dsb.). -
TransactionType.kt: Enum class yang membedakan jenis transaksi (mis. Income, Expense).
📁 centrymoneytracker/ui/components/
Berisi komponen UI yang dapat digunakan ulang:
-
TransactionItem.kt: Komponen untuk menampilkan satu transaksi. -
TransactionGroupCard.kt: Mungkin komponen kartu untuk grup transaksi.
📁 centrymoneytracker/ui/screens/
Berisi layar utama aplikasi:
-
HomeScreen.kt: Kemungkinan berisi ringkasan transaksi. -
AddTransactionScreen.kt: Form untuk menambah transaksi baru. -
AnalyticsScreen.kt: Tampilan grafik atau statistik keuangan.
📁 centrymoneytracker/ui/theme/
Berisi pengaturan tampilan visual:
-
Color.kt: Skema warna. -
Theme.kt: Definisi tema aplikasi (Material3). -
Type.kt: Gaya teks (tipografi).
📁 centrymoneytracker/viewmodel/
Berisi ViewModel untuk mengelola state:
-
TransactionViewModel.kt: Mengatur logika dan data untuk transaksi (seperti daftar transaksi, tambah data, dsb.)
e. Arsitektur
Proyek ini menggunakan arsitektur MVVM (Model-View-ViewModel):
-
Model: Berisi struktur data (
Transaction,TransactionType). -
View: Layar UI dan komponennya (Jetpack Compose).
-
ViewModel: Mengelola data dan state UI (
TransactionViewModel.kt).




Comments
Post a Comment