/CryptoApp

Loodos Challange

Primary LanguageKotlin

CryptoApp


Tech stack & Open-source libraries

  • Minimum SDK level 21

  • 100% Kotlin based + Coroutines and Flow

  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.

    • A single-activity architecture, using the Navigation component to manage fragment operations.
    • LiveData - Data objects that notify views when the underlying database changes.
    • Lifecycle - perform an action when lifecycle state changes
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • DataBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
    • Room - SQLite object mapping library.
    • Hilt - Dependency Injection Framework
    • SingleLiveEvent - This library holds a class to handle single live events in Android MVVM architectural pattern
    • Lottie -Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with Bodymovin and renders them natively on mobile!
    • Firebase - For Authentication and Realtime Database
  • Material Design

Architecture

This app uses MVVM (Model View View-Model) architecture and Repository architecture to have a unidirectional flow of data, separation of concern, and a lot more which is recommended by Google itself.

Other

Sorry to complete all challange because of my work. Thanks for the challenge.

License

Designed and developed by 2021 Oğuz Şahin

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.