Welcome to the repository. This project epitomizes modern Android development, incorporating Material3 design π¨, Jetpack Compose ποΈ, and a clean architecture ποΈ that adheres to SOLID principles for a scalable, maintainable, and robust application.
- Registration: Users can sign up seamlessly by entering personal data such as name, surname, email, and password.
- Identification Photo: As part of the security process, the app allows users to take a photo of their identification.
- Success Screen: A congratulatory screen that assures users of their successful account creation.
The application follows Clean Architecture guidelines, ensuring that the codebase is maintainable, scalable, and easily testable. The use of MVVM architecture plays a critical role in separating concerns, making the app robust and efficient.
-
Firebase Authentication: Ensures a secure and seamless sign-in experience for the users. It's implemented to manage user authentication, providing options like email/password login, social media login, and more.
-
Firebase Cloud Firestore: Utilized as a scalable and flexible database for the app, storing and syncing user data and banking transactions in real-time across all client apps.
-
Firebase Storage: Provides a robust solution for storing and serving user-generated content, such as profile pictures, documents, and other media.
-
Firebase Crashlytics: Integrated to keep track of app stability and monitor and fix issues swiftly. This tool helps in identifying, prioritizing, and tracking the app's stability issues that affect the user experience.
To clone and run this application, you'll need Git and Android Studio installed on your computer. From your command line:
# Clone this repository
$ git clone https://github.com/yourusername/wallet-project.git
# Go into the repository
$ cd wallet-project
# Install dependencies
$ Android Studio -> Sync Project with Gradle Files
# Run the app
This project is built using a myriad of modern libraries and tools. Below is a list of the major frameworks and services integrated into the app:
- Material3: For a contemporary UI that adheres to the latest Material Design principles.
- Jetpack Compose: For a declarative UI that simplifies and accelerates UI development on Android.
- Clean Architecture: Ensuring separation of concerns and independence of different app layers.
- SOLID Principles: These principles are at the core of the app's design, ensuring each component is easily maintainable and upgradable.
- Firebase: For real-time data handling and authentication.
Splash | Login | Register | Home (empty) |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Success register | Home | Details | Logout |
![]() |
![]() |
![]() |
![]() |
Splash | Login | Register | Home (empty) |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Success register | Home | Details | Logout |
![]() |
![]() |
![]() |
![]() |
Light demo | Dark demo |
---|---|
![]() |
![]() |
Lorenzo Suarez