π Project Structure
- com.example.foodie
- βββ data
- β βββ model # Data models (e.g., Product, Order, User)
- β βββ repository # Repositories for data handling
- β βββ db # Room Database and DAOs
- βββ ui
- β βββ cart # Cart management screens
- β βββ order # Order-related screens
- β βββ payment # Payment screens and logic
- β βββ viewmodel # ViewModels for managing UI-related data
- βββ utils # Utility classes (e.g., extensions, helpers)
- βββ network # API service interfaces and Retrofit setup
- βββ di # Dependency injection setup (Hilt modules)
π± Features
- Browse Menu: Explore a wide range of food items with detailed descriptions and prices.
- Search Functionality: Quickly find your favorite dishes with the search feature.
- Cart Management: Add, remove, and update items in your cart.
- Order History: View past orders and their details.
- Integrated Payment System: Pay securely using various payment methods (e.g., Paystack, Stripe).
- Push Notifications: Receive updates on your order status in real-time.
- User Authentication: Sign up and log in using email or social media accounts.
- Responsive UI: Optimized for different screen sizes and orientations.
π οΈ Tech Stack
- Language: Kotlin
- Architecture: MVVM (Model-View-ViewModel)
- Dependency Injection: Hilt
- Networking: Retrofit, OkHttp
- Database: Room
- LiveData & ViewModel: For managing UI-related data
- Coroutines & Flow: For asynchronous programming
- Image Loading: Glide
- Payment Integration: Paystack (or Stripe)
- Push Notifications: Firebase Cloud Messaging (FCM)
- Analytics: Firebase Analytics
πΈ Screenshots
Payment Fragment | Cart Fragment |
---|---|
() |