rohitjakhar / hashpass

HashPass - Save your password 100% securely with Hashpass & Hasura

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HashPass

HashPass An Android Project built on Android + Hasura

Application Install

You can Install QuizZon app from playstore πŸ‘‡

HashPass

Setup

Clone the repository on your machine. Open the project on your IDE and connect it to firebase and harperDB and everything will be setup

  • Add your firebase json class in app directory
  • Add your Hasura Credentital in build.property

About

In HashPass app you can manage your password easily.

  • Fully functionable.
  • Clean and Simple Material UI.

Insights into the app πŸ”Ž

Hashpass.gif

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.
  • StateFlow - StateFlow is a state-holder observable flow that emits the current and new state updates to its collectors.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • 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.
    • DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers.
  • Dependency Injection -
    • Hilt-Dagger - Standard library to incorporate Dagger dependency injection into an Android application.
    • Hilt-ViewModel - DI for injecting ViewModel.
  • Backend
    • Firebase
      • Firebase Auth - To support email based authentication.
      • Firebase Crashlytics - To report app crashes
    • Hasura - The Hasura GraphQL Engine is an extremely lightweight, high performance product that gives you instant realtime GraphQL APIs on a Postgres database.
  • Apollo - Apollo Kotlin (formerly Apollo Android) is a GraphQL client that generates Kotlin and Java models from GraphQL queries.
  • Material Components for Android - Modular and customizable Material Design UI components for Android.

Package Structure

com.rohit.Quizzon    # Root Package
.
β”œβ”€β”€ data                # For data handling.
|   β”œβ”€β”€ local           # Room DB and its related classes
|   β”œβ”€β”€ remote          # Firebase, HarperDB and their relative classes
β”‚   β”œβ”€β”€ model           # Model data classes, both remote and local entities
β”‚
|
β”œβ”€β”€ di                  # Dependency Injection
β”‚   └── module          # DI Modules
|
β”œβ”€β”€ presention           # UI/View layer
|
└── utils               # Utility Classes / Kotlin extensions

Architecture

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

Want to Contribute πŸ™‹β€β™‚οΈ?

Awesome! If you want to contribute to this project, you're always welcome! See Contributing Guidelines.

Want to discuss? πŸ’¬

Have any questions, doubts or want to present your opinions, views? You're always welcome. You can start discussions.

Contact πŸ“©

Have an project? DM us at πŸ‘‡
Mail

LinkedIn

Donation πŸ’°

If this project help you reduce time to develop, you can give me a cup of coffee :)

Buy Me A Coffee


About

HashPass - Save your password 100% securely with Hashpass & Hasura

License:MIT License


Languages

Language:Kotlin 100.0%