• Stars
    star
    207
  • Rank 189,769 (Top 4 %)
  • Language
    Kotlin
  • License
    Apache License 2.0
  • Created over 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A collection of animations, compositions, UIs using Jetpack Compose. You can say Jetpack Compose cookbook or play-ground if you want!

Why Not Compose!

A collection of animations, compositions, UIs using Jetpack Compose. You can say Jetpack Compose cookbook or play-ground if you want!

Feel free to request features or suggestions for improvements.

Developer Buy Me A Coffee GitHub release Google Play API ktlint

Notable Features & Libraries

  • MVI Pattern
  • Navigation Component
  • Hilt
  • Everywhere dark mode support
  • A lot of Ready to use compositions
  • Gradle Kotlin DSL
  • CI/CD
    • ktlint
    • CodeQL
    • Publish to Google Play
  • Material 3 examples
  • Animated Splash Screen (Introduced in Android 12)

Screenshots

Animations

Compositions

Preview Preview Preview
Preview Preview Preview
Preview Preview Preview
Preview Preview Preview
Preview Preview Preview
Preview

UIs

Preview Preview Preview

Tutorials

  • Counter (Beginner)
  • Counter with ViewModel (Beginner)
  • AnimatedVisibility (Beginner)
  • Lottie (Beginner)
  • Select image and crop for upload (Intermediate)
  • Capture image and crop for upload (Intermediate)
  • Permission (Beginner)
  • Data Fetch and Paging (Advanced)
  • Tic-Tac-Toe (Advanced)
  • OneSignal and Broadcast (Intermediate)
  • ExoPlayer (Advanced)
  • CMS (Advanced)
Counter Animated Visibility Lottie
Exo Player Tic-Tac-Toe CMS

TODO

  • Add new Google Map Compose library
  • Add compose BOM: https://developer.android.com/jetpack/androidx/releases/compose
  • Refactor to Gradle Plugins
  • Add notification permission
  • Migrate to Material 3
    • CMS
    • Full app
  • Add accompanist WebView
  • x, y, z translation simulation
  • Shadow manipulation with device gyroscope
  • Composition: Bottom Sheet
  • Fix custom LazyGridScope.items
  • List with LazyGrid
  • Paging with LazyGrid
  • Update to new storage permission
  • CMS
    • Add screenshot for CMS module
    • CMS module: UI Testing
  • Auto Theme mode from system
  • Create color ready for dark and light mode

Note

  • For dependency version check I am currently using Gradle Versions Plugin . I added this in the Gradle init script and can check versions using the following commend.
./gradlew dependencyUpdates
  • The project using spotless with klint. Apply spotless using the following command.
./gradlew spotlessApply

Setup

Map API Key

Open the local.properties in your project level directory, and then add the following code. Replace YOUR_API_KEY with your API key.

MAPS_API_KEY=YOUR_API_KEY

Go REST API Key

Open the local.properties in your project level directory, and then add the following code. Replace YOUR_API_KEY with your Go REST API key.

CMS_API_KEY=YOUR_API_KEY

Other Interesting Repos

Credits

Licence

Copyright 2021 Md. Mahmudul Hasan Shohag

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

    http://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.