Code Monkey home page Code Monkey logo

mealdb's Introduction

๐Ÿ” MealDB

MealDB is an android application using Free Meal API based on MVVM with a clean architecture.

For API Documentation: Click here

App Screenshots

home screen categories meal detail
drawing drawing drawing
search meals favorite meals
drawing drawing

App Gif

Tech stack

  • โœ… MVVM with Clean Architecture
  • โœ… Kotlin Flow - In coroutines, a flow is a type that can emit multiple values sequentially, as opposed to suspend functions that return only a single value.
  • โœ… LiveData - is an observable data holder class. Unlike a regular observable, LiveData is lifecycle-aware, meaning it respects the lifecycle of other app components, such as activities, fragments, or services.
  • โœ… Coroutines - A concurrency design pattern that you can use on Android to simplify code that executes asynchronously.
  • โœ… Navigation Component - Handle everything needed for in-app navigation. asynchronous tasks for optimal execution.
  • โœ… Safe-Args - For passing data between destinations
  • โœ… Dagger-Hilt - A dependency injection library for Android that reduces the boilerplate of doing manual dependency injection in your project.
  • โœ… ViewModel - Easily schedule asynchronous tasks for optimal execution.
  • โœ… Retrofit- Retrofit is a REST client for Java/ Kotlin and Android by Square inc under Apache 2.0 license. Its a simple network library that is used for network transactions. By using this library we can seamlessly capture JSON response from web service/web API.
  • โœ… OkHttp - Doing HTTP efficiently makes your stuff load faster and saves bandwidth.
  • โœ… Room - The Room persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.
  • โœ… Moshi - A modern JSON library for Kotlin and Java.
  • โœ… View Binding - a feature that allows you to more easily write code that interacts with views.
  • โœ… Data Binding - The Data Binding Library is a support library that allows you to bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically.
  • โœ… Lifecycle - As a user navigates through, out of, and back to your app, the Activity instances in your app transition through different states in their lifecycle.
  • โœ… Epoxy - Epoxy is an Android library for building complex screens in a RecyclerView. Models are automatically generated from custom views or databinding layouts via annotation processing. These models are then used in an EpoxyController to declare what items to show in the RecyclerView.
  • โœ… recyclerview-animators - RecyclerView Animators is an Android library that allows developers to easily create RecyclerView with animations.
  • โœ… Glide - for image loading framework for Android that wraps media decoding, memory and disk caching, and resource pooling into a simple and easy to use interface.
  • โœ… Timber - This is a logger with a small, extensible API which provides utility on top of Android's normal Log class.
  • โœ… leakcanary - A memory leak detection library for Android.

mealdb's People

Contributors

herdal06 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 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.