Giter VIP home page Giter VIP logo

krish-parekh / deddit Goto Github PK

View Code? Open in Web Editor NEW
16.0 2.0 0.0 221 KB

Deddit is a modern Android application that showcases the latest technology in Android development including Hilt, Coroutines, Flow, Jetpack (ViewModel, Paging3), and Material Design. The app is based on the MVVM architecture pattern and offers a range of features such as the ability to explore memes from Reddit, apply filters.

Kotlin 100.00%
android coroutines flow kotlin material-design mvvm-architecture paging3 room

deddit's Introduction

Deddit

๐Ÿ—ก๏ธ Deddit demonstrates modern Android development with Hilt, Coroutines, Flow, Jetpack (ViewModel,Paging3), and Material Design based on MVVM architecture.

Functionality

The following functionality is completed:

  • Explore Memes from reddit
  • Apply filter to enjoy best subreddits
  • Notification using Firebase Cloud Messaging
  • Paginating data
  • Download and Share your meme

API

Tech stack & Open-source libraries

  • Minimum SDK level 26
  • Kotlin based, Coroutines + Flow for asynchronous.
  • Hilt for dependency injection.
  • Jetpack
    • Lifecycle - Observe Android lifecycles and handle UI states upon the lifecycle changes.
    • ViewModel - Manages UI-related data holder and lifecycle aware. Allows data to survive configuration changes such as screen rotations.
    • DataBinding - Binds UI components in your layouts to data sources in your app using a declarative format rather than programmatically.
    • Paging3 - It has support for requesting the next page to load more data automatically.
    • Work Manager - WorkManager is intended for tasks that require a guarantee that the system will run them even if the app exits.
    • DataStore - DataStore preference is a data storage solution. It allows us to store key-value pairs (like SharedPreferences)
  • Architecture
    • MVVM Architecture (View - DataBinding - ViewModel - Model)
    • Repository Pattern
  • Retrofit2 & OkHttp3 - Construct the REST APIs.
  • Moshi - A modern JSON library for Kotlin and Java.
  • Glide - Loading images from network.
  • Material-Components - Material design components for building ripple animation, and Cardview
  • Shimmer-Layout - The motive of using the Shimmer layout is to inform the user that the structure is currently loading.
  • Lottie - Lottie file is a JSON-based animation filet that enables developers to implement animations on any platform as easily as implementing static assets.

Video Walkthrough

Deddit
Deddit.mp4

Architecture

Deddit is based on the MVVM architecture and the Repository pattern.

architecture

deddit's People

Contributors

krish-parekh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.