Skip to content

Movie Catalogue Using Jetpack Libraries || Dicoding Submission : Belajar Android Jetpack Pro (BAJP)

Notifications You must be signed in to change notification settings

Aditprayogo/movie-catalogue-jetpack

Repository files navigation

Aditprayogo

About

This is Movie Catalogue Application using some Jetpack Libraries

How to Use This App :

Generate your token from https://www.themoviedb.org/ and put it in build.gradle

    defaultConfig {
            ---
            ---
            buildConfigField "String", "API_KEY", "\"YOUR TMDB API KEY\""

        }

Built With

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - Is light wight threads for asynchronous programming
  • Clean Architecture - Clean architecture is a software design philosophy that separates the elements of a design into ring levels. An important goal of clean architecture is to provide developers with a way to organize code in such a way that it encapsulates the business logic but keeps it separate from the delivery mechanism.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • LiveData - Data objects that notify views when the underlying database changes.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • ViewBinding - 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.
    • Paging - The Paging Library helps you load and display small chunks of data at a time. Loading partial data on demand reduces usage of network bandwidth and system resources.
  • Dependency Injection dependency injection is a technique whereby one object (or static method) supplies the dependencies of another object. A dependency is an object that can be used (a service).
    • Hilt-android Hilt provides a standard way to incorporate Dagger dependency injection into an Android application.
  • Retrofit - A type-safe HTTP client for Android and Java.
  • ShimmerAndroid library that provides an easy way to add a shimmer effect to any view in your Android app
  • OkHttp An HTTP & HTTP/2 client for Android and Java applications.
  • Gson A Java serialization/deserialization library to convert Java Objects into JSON and back
  • Glide An image loading and caching library for Android focused on smooth scrolling
  • Lottie-Android JSON-based animation file format that enables designers to ship animations on any platform as easily as shipping static assets.
  • Material Design Material is a design system created by Google to help teams build high-quality digital experiences for Android, iOS, Flutter, and the web.

How to Support me ?

Just Follow my Github and star this repo

License


   Copyright © 2020 Aditiya Ihzar Eka Prayogo

   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.