Skip to content

Open Source multi-module app for Handmade Hats company with modern approaches under the hood.

License

Notifications You must be signed in to change notification settings

egorikftp/Lady-happy-Android

Repository files navigation

Icon

Lady Happy - handmade hats and accessories

API

Download Status Rating Status

Project characteristics 🚀

This project brings to the table set of best practices, tools, and solutions:

Integration with Google Assistance 🧏‍

Currently available commands in production:

  • actions.intent.GET_THING - Easter egg in application, the real feature with search functionality will be available in the next feature drop.

    Command example: Hey Google, search [felt hats] on lady happy

  • actions.intent.OPEN_APP_FEATURE - voice intent for opening main application screens:

    Command example: Hey Google, open [catalog, about, news, settings] screen on lady happy

Built With 🛠

  • Kotlin - First class and official programming language for Android development.

  • Coroutines - Kotlin's way of way of writing asynchronous, non-blocking code

    • StateFlow - notify views when the underlying data changes
    • SharedFlow - notify multiple subscribers that data changes
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps

    • View Binding - Allows you to more easily write code that interacts with views
    • ViewModel - Manage UI-related data in a lifecycle conscious way
    • Saved State - Prevent data lost from system-initiated process death
  • Detekt - static code analysis tool for the Kotlin programming language

  • Koin - Dependency Injection Framework

  • Material Components for Android - Modular and customizable Material Design UI components for Android

  • Firebase libraries

Try without building sources

Get it on Google Play

Future plans

  • Step by step migration to Jetpack Compose
  • Allow everyone to try Dynamic delivery with demo credentials

Other things feel free to request using issues

How to build

Just checkout the repository and build with gradle, necessary debug key stored inside the repository.

Find this repository useful? ❤️

Support it by joining stargazers for this repository. ⭐
And follow me for my next creations! 🤩

Structure 🔍

This project follows multi-module structure:

Icon

App screenshots

Public features

IconIconIconIcon Icon

Dynamic features

IconIcon

License

 Copyright 2021 Yahor Urbanovich

 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.