Skip to content

Android app to develop your career especially for IT experts, Developers, Programmers. development best practices with Android Jetpack. based on MVVM (ViewModel, Coroutines, Flow, Coin, Navigation).

Notifications You must be signed in to change notification settings

islamelhady/JobApp

Repository files navigation

Jobs App 👨‍💼

Jobs App is a sample Android application 📱 showing IT jobs of the world 👓 built to demonstrate use of Modern Android development tools. Dedicated to all Android Developers with ❤️.

About

It simply loads IT Jobs data from API.

  • Clean and Simple Material UI.
  • Clean and Simple Architecture(MVVM).

Some edge cases that will come in future

It simply loads Jobs data from API. Jobs will be always loaded from Remote data (from API).

  • Handle Network State Changes
  • Clean and Simple Material UI.
  • Clean and Simple Architecture(MVVM).
  • This makes it offline capable.
  • Pagination
  • Unit test/Integrated Testing

Dummy API is used in this app. JSON response is statically hosted here.

Architecture

This app uses MVVM (Model View View-Model) architecture.

Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous and more..
  • Flow - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • StateView - Flow APIs that enable flows to optimally emit state updates and emit values to multiple consumers.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • DataBinding - that allows you to bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically.
    • Room - SQLite object mapping library.
  • Dependency Injection -
    • Koin DI Version 🗡️
  • Retrofit - A type-safe HTTP client for Android and Java.
  • Moshi - A modern JSON library for Kotlin and Java.
  • Moshi Converter - A Converter which uses Moshi for serialization to and from JSON.
  • Glide - An image loading library for Android backed by Kotlin Coroutines.
  • Material Components for Android - Modular and customizable Material Design UI components for Android.

Soon 💪

  • Jobs will be always loaded from local database. Remote data (from API) and Local data is always synchronized.
  • Try with Hilt-Dagger - Standard library to incorporate Dagger dependency injection into an Android application.

Find this repository useful?

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

Contributed By: islam elhady

About

Android app to develop your career especially for IT experts, Developers, Programmers. development best practices with Android Jetpack. based on MVVM (ViewModel, Coroutines, Flow, Coin, Navigation).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages