Skip to content

Latest commit

 

History

History
158 lines (122 loc) · 6.76 KB

README.md

File metadata and controls

158 lines (122 loc) · 6.76 KB

Crypto App for Encryption & Decryption with Biometric Authentication





👉 Extra Information:

👉 Architecture:

  • Following Clean Architecture.
  • Modularization.
  • Applying SOLID principles, each class has a single job with separation of concerns by making classes independent of each other and communicating with interfaces.
  • Using Kotlin-KTS & Gradle Version Catalog to handle project dependencies.

👉 Tech Stack & Libraries:

  • MaterialDesign : Use material design components in XML Design.
  • ViewBinding : Allows to more easily write code that interacts with views and replaces findViewById.
  • Dagger-Hilt : For dependency injection. Object creation and scoping is handled by Hilt.
  • Biometrics : To handle Biometric Authentication.
  • Preferences : For Encrypted ShredPreferences.
  • Crypto : For Encryption & Decryption.
  • Gson : For parsing and serializing objects.

👉 Project Structure:

  • Sample includes some basic screens to show how to implement biometric login with encryption & decryption for user data:
    • Splash Screen : Handles biometric login and decrypt user data if user logged in before with credentials.
    • Login Screen : Handles user login business with credentials and encrypt his data.
    • Home Screen : Displays current user info, with benefit of logout and clear user data.

👉 Modules:

👉 Code Style:

  • Following official kotlin code style

👉 Local Development:

  • Here are some useful Gradle commands for executing this example:
    • ./gradlew clean - Deletes build directory.

👉 Contributing to Project:

  • Just fork this repository and contribute back using pull requests.
  • Any contributions, large or small, major features, bug fixes, are welcomed and appreciated but will be thoroughly reviewed .

👉 Find this project useful ? ❤️

  • Support it by clicking the ⭐ button on the upper right of this page. ✌️

👉 Stargazers: ⭐

Stargazers repo roster for @sadanandpai/javascript-code-challenges

👉 Forkers: ⚒️

Forkers repo roster for @sadanandpai/javascript-code-challenges

👉 Donation:

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

Buy Me A Coffee



⚠️ License:

   Copyright (C) 2024 MINA MIKHAIL PRIVATE LIMITED

   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.