Simple Unsplash Photo Browser App - v1.0
FUNSPLASH adalah aplikasi Android berbasis Kotlin yang memungkinkan pengguna menjelajahi, melihat detail, menyimpan (bookmark), dan mengunduh foto dari layanan Unsplash API. Aplikasi ini dirancang dengan pendekatan modern Android Development menggunakan arsitektur MVVM, serta berfokus pada tampilan yang clean, konsisten, dan mudah digunakan.
- Browse photos from Unsplash API
- View photo details (author, likes, downloads, description)
- Bookmark / unbookmark photos
- Persistent bookmarks using Room Database
- Download photos to local storage
- Edit profile photo from device gallery
- Dark Mode support
- Clean UI with Material Design + Collapsing Toolbar
-
Authentication
- Sign In
- Sign Up
-
Home
- List of photos from Unsplash API
- Infinite scroll
-
Detail Photo
- Hero image (collapsing effect)
- Author, likes, downloads, description
- Bookmark & Download button
-
Bookmark
- List of saved photos
- Click item β open detail photo
-
Profile
- Display name & email
- Change profile photo
- Logout
- π Kotlin (Native Android)
- π Retrofit (REST API Client)
- π Glide (Image Loader)
- π Room Database (Local Storage)
- π§‘ ViewModel + LiveData
- π RecyclerView
- π Material Design Components
FUNSPLASH menggunakan pola MVVM (Model - View - ViewModel):
-
Model Data classes, Room Entity, DAO, API response
-
View Activity & Fragment
-
ViewModel Mengelola state UI dan komunikasi ke Repository
-
Repository Menghubungkan ViewModel dengan API & Database
Keuntungan MVVM:
- Kode lebih terstruktur
- Mudah dipelihara
- Memisahkan logika bisnis dari UI
Aplikasi ini tidak menggunakan server-side database.
-
SharedPreferences
- Menyimpan session login
- Nama, email, dan foto profil
-
Room Database
- Menyimpan data foto yang di-bookmark
- Data tersimpan lokal di device
-
API (Unsplash)
- Mengambil data foto secara online
- Clone repository:
git clone https://github.com/Luficerr/Project-BP3.git-
Buka project di Android Studio
-
Tambahkan API Key Unsplash di:
local.properties
UNSPLASH_ACCESS_KEY=your_api_key_here- Run aplikasi di emulator atau device
Project ini dikembangkan sebagai:
- Media pembelajaran Android Native Kotlin
- Latihan implementasi MVVM & Room Database
- Pemenuhan tugas akhir mata kuliah Bahasa Pemrograman 3 (BP3)
Lutfi Faiz Ziyadatullah (Luficerr)
If you like this project, please give it a β
Copyright Β© 2025-2026 Lutfi Faiz Ziyadatullah. All rights reserved.


