FurniChic is a furniture e-commerce Android app that offers the following features:
- User registration and authentication with social media integration.
- Seamless browsing of furniture categories and easy search functionality.
- Convenient cart system for adding and managing selected items.
- "Save for Later" feature to bookmark products for future reference.
- Streamlined cart display and checkout process.
- Secure payment gateway integration for seamless transactions.
- User profiles displaying order history, order tracking, and the ability to update billing card and address.
- Localization support for personalized experiences.
- Push notifications to keep users informed about orders and promotions.
- FurniChic provides a user-friendly platform for selling furniture, ensuring a smooth and enjoyable shopping experience for users.
-
Coroutines: Utilized for asynchronous programming and managing concurrency, ensuring smooth and responsive app performance.
-
Kotlin Flows: Implemented to handle reactive streams of data, allowing seamless integration of data updates in real-time.
-
Pagination: Implemented to efficiently load and display large sets of furniture items, enhancing performance and user experience.
-
Paymob: Integrated payment gateway service, enabling secure and seamless online transactions for furniture purchases.
-
Localization: Supported multiple languages and regions, providing a localized experience for users, improving accessibility and engagement.
-
Navigation Component: Implemented to manage app navigation and utilize the single activity pattern for a cohesive and modular app structure.
-
Room: Integrated local database storage for efficient data caching, offline functionality, and seamless retrieval of furniture information.
-
MVVM: Followed the MVVM (Model-View-ViewModel) architectural pattern, separating UI logic from business logic, ensuring maintainability and scalability.
-
Dagger Hilt: Utilized for dependency injection, simplifying the app's architecture and managing dependencies between components efficiently.
-
View Binding: Employed to streamline the process of inflating views in the app's UI, improving code readability and development efficiency.
-
Glide: Integrated image loading and caching library, enabling efficient loading and display of furniture images, enhancing visual appeal and performance.
-
Firebase Authentication: Integrated Firebase Authentication for seamless social media integration, allowing users to register and log in to the app using their social media accounts.
-
Firebase Firestore: Utilized Firebase Firestore as a NoSQL cloud database to store and manage furniture data, providing real-time updates and synchronization across devices.
-
Firebase Storage: Integrated Firebase Storage to securely store and retrieve furniture images and other media files, ensuring efficient and reliable content delivery within the app.