diff --git a/README.MD b/README.MD index ed671ef..5a23b4b 100644 --- a/README.MD +++ b/README.MD @@ -1,21 +1,60 @@ -# Compose Multiplatform Application +# Splashy -## Before running! - - check your system with [KDoctor](https://github.com/Kotlin/kdoctor) - - install JDK 8 on your machine - - add `local.properties` file to the project root and set a path to Android SDK there - - run `./gradlew podInstall` in the project root +[![Check](https://github.com/ishubhamsingh/Splashy/actions/workflows/Check.yaml/badge.svg?branch=main)](https://github.com/ishubhamsingh/Splashy/actions/workflows/Check.yaml) + +## :scroll: Description +An Unsplash based wallpaper app built with Compose Multiplatform and KMP for Android and iOS. + +## :hammer_and_wrench: Tech Stack + +- [Kotlin Mutliplatform](https://kotlinlang.org/lp/multiplatform/) +- [Compose Multiplatform](https://www.jetbrains.com/lp/compose-multiplatform/) +- [Ktor Client](https://ktor.io/) +- [SQLDelight](https://cashapp.github.io/sqldelight/2.0.0/) +- [Precompose](https://github.com/Tlaster/PreCompose) +- [Koin](https://insert-koin.io/) +- [Kamel](https://github.com/Kamel-Media/Kamel) +- [Napier](https://github.com/AAkira/Napier) +- [Compose Icons](https://github.com/DevSrSouza/compose-icons) +- [Moko Permissions](https://github.com/icerockdev/moko-permissions) +- [Moko MVVM](https://github.com/icerockdev/moko-mvvm) + +## :camera_flash: Screenshots ### Android -To run the application on android device/emulator: - - open project in Android Studio and run imported android run configuration -To build the application bundle: - - run `./gradlew :composeApp:assembleDebug` - - find `.apk` file in `composeApp/build/outputs/apk/debug/composeApp-debug.apk` + ### iOS -To run the application on iPhone device/simulator: - - Open `iosApp/iosApp.xcworkspace` in Xcode and run standard configuration - - Or use [Kotlin Multiplatform Mobile plugin](https://plugins.jetbrains.com/plugin/14936-kotlin-multiplatform-mobile) for Android Studio + + +## :gear: Build + +The app uses Unsplash API, hence you need to get your own API key from [here](https://unsplash.com/documentation). +In order to sign your builds generate `splashy.jks` keystore and add keystore password, alias and store password in `secrets.properties`. + +secrets.properties would look like this: +``` +unsplash.access.key=#Add your unsplash key +splashy.keystore.password=#Add your keystore password +splashy.key.alias=#Add your key alias +splashy.key.password=#Add your key password +``` + +## License +``` +Copyright Shubham Singh + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +``` diff --git a/assets/screenshots/android/Screenshot_1.png b/assets/screenshots/android/Screenshot_1.png new file mode 100644 index 0000000..3f4265c Binary files /dev/null and b/assets/screenshots/android/Screenshot_1.png differ diff --git a/assets/screenshots/android/Screenshot_2.png b/assets/screenshots/android/Screenshot_2.png new file mode 100644 index 0000000..9553934 Binary files /dev/null and b/assets/screenshots/android/Screenshot_2.png differ diff --git a/assets/screenshots/android/Screenshot_3.png b/assets/screenshots/android/Screenshot_3.png new file mode 100644 index 0000000..fdae9ac Binary files /dev/null and b/assets/screenshots/android/Screenshot_3.png differ diff --git a/assets/screenshots/android/Screenshot_4.png b/assets/screenshots/android/Screenshot_4.png new file mode 100644 index 0000000..2bb63f1 Binary files /dev/null and b/assets/screenshots/android/Screenshot_4.png differ diff --git a/assets/screenshots/android/Screenshot_5.png b/assets/screenshots/android/Screenshot_5.png new file mode 100644 index 0000000..60961d8 Binary files /dev/null and b/assets/screenshots/android/Screenshot_5.png differ diff --git a/assets/screenshots/android/Screenshot_6.png b/assets/screenshots/android/Screenshot_6.png new file mode 100644 index 0000000..15f04ad Binary files /dev/null and b/assets/screenshots/android/Screenshot_6.png differ diff --git a/assets/screenshots/android/Screenshot_7.png b/assets/screenshots/android/Screenshot_7.png new file mode 100644 index 0000000..b552ffe Binary files /dev/null and b/assets/screenshots/android/Screenshot_7.png differ diff --git a/assets/screenshots/android/Screenshot_8.png b/assets/screenshots/android/Screenshot_8.png new file mode 100644 index 0000000..9a1ff85 Binary files /dev/null and b/assets/screenshots/android/Screenshot_8.png differ diff --git a/assets/screenshots/ios/Screenshot_1.png b/assets/screenshots/ios/Screenshot_1.png new file mode 100644 index 0000000..ef525b8 Binary files /dev/null and b/assets/screenshots/ios/Screenshot_1.png differ diff --git a/assets/screenshots/ios/Screenshot_2.png b/assets/screenshots/ios/Screenshot_2.png new file mode 100644 index 0000000..745ae46 Binary files /dev/null and b/assets/screenshots/ios/Screenshot_2.png differ diff --git a/assets/screenshots/ios/Screenshot_3.png b/assets/screenshots/ios/Screenshot_3.png new file mode 100644 index 0000000..d730e4c Binary files /dev/null and b/assets/screenshots/ios/Screenshot_3.png differ diff --git a/assets/screenshots/ios/Screenshot_4.png b/assets/screenshots/ios/Screenshot_4.png new file mode 100644 index 0000000..b78170a Binary files /dev/null and b/assets/screenshots/ios/Screenshot_4.png differ diff --git a/assets/screenshots/ios/Screenshot_5.png b/assets/screenshots/ios/Screenshot_5.png new file mode 100644 index 0000000..82ad7f9 Binary files /dev/null and b/assets/screenshots/ios/Screenshot_5.png differ diff --git a/assets/screenshots/ios/Screenshot_6.png b/assets/screenshots/ios/Screenshot_6.png new file mode 100644 index 0000000..3c2261a Binary files /dev/null and b/assets/screenshots/ios/Screenshot_6.png differ