https://github.com/sembamax/pixabay-images-app
Images search app based on Pixabay API
https://github.com/sembamax/pixabay-images-app
android coil compose-animation compose-testing coroutines flows gradle-kotlin-dsl hilt jetpack-compose jetpack-navigation junit kotlin mockk mockwebserver modularization mvvm-architecture pixabay-api retrofit2 room-database unit-test
Last synced: 3 months ago
JSON representation
Images search app based on Pixabay API
- Host: GitHub
- URL: https://github.com/sembamax/pixabay-images-app
- Owner: SembaMax
- Created: 2023-02-07T13:02:50.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-04-25T14:25:03.000Z (about 3 years ago)
- Last Synced: 2025-02-05T05:43:29.166Z (over 1 year ago)
- Topics: android, coil, compose-animation, compose-testing, coroutines, flows, gradle-kotlin-dsl, hilt, jetpack-compose, jetpack-navigation, junit, kotlin, mockk, mockwebserver, modularization, mvvm-architecture, pixabay-api, retrofit2, room-database, unit-test
- Language: Kotlin
- Homepage:
- Size: 85.2 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Pixabay Images Viewer
## Overview
Images search engine based on Pixabay API.
Search and preview images in both online and offline modes.
## App
* Min. deployment target Android API 24
* Kotlin source code
* Pagination
* Offline data handling
* Modular MVVM architecture
## Screenshots
## Clean Architecture
The app is designed with multi layer MVVM architecture for better control over individual modules. Which makes the project open for scalability, and flexible to change, maintain and test.
## How to pull the repository
git clone git@github.com:SembaMax/pixabay-images-app.git
## Build Requirements
- JDK11
- Supports minimum API 24
- Gradle 7.5.1+
- Kotlin 1.7.21+
- [Android Studio Electric Eel](https://developer.android.com/studio/)
## Configuration
1. Login into [Pixabay](https://pixabay.com/api/docs/#api_search_images) for getting API_KEY
2. Add `PIXABAY_API_KEY="Your_Api_Key"` to `local.properties` file.
```kotlin
defaultConfig {
buildConfigField("String", "PIXABAY_API_KEY", "\"${properties.getProperty("PIXABAY_API_KEY")}\"")
}
```
## Features
- Jetpack Compose
- Compose Navigation
- Material Design 3
- Themes
- Flows
- Retrofit2
- Timber
- Room
- Hilt
- Coroutines
- Coil
- Gradle kts
- Modularization
## Android Keystores
[Keystores Folder](https://github.com/SembaMax/pixabay-images-app/tree/main/certifactes)
#### debug.jks
path: /certifactes/debug.jks
keytool -list -v -keystore debug.jks -alias debug -storepass "yDgU54VF7#brJh*A" -keypass "yDgU54VF7#brJh*A"
SHA1: BE:92:C6:81:AC:34:7D:F8:AE:97:E9:00:3F:46:80:8D:3A:73:46:DC
#### release.jks
path: /certifactes/release.jks
keytool -list -v -keystore release.jks -alias release -storepass "Yo#Hsd4mD0QF3E^i" -keypass "Yo#Hsd4mD0QF3E^i"
SHA1: E4:44:34:BD:93:BB:63:1B:9A:EC:3C:52:84:38:BB:16:A1:3E:53:C0
## App Version
[APK](https://github.com/SembaMax/pixabay-images-app/tree/main/apk)