charko25555/desert-oasis-stays-nomadji
0
# Nomadji - Djibouti's Premier Home Rental App
A native Android application for booking furnished houses in Djibouti, inspired by Airbnb.
## Features
- User authentication with Firebase
- Property browsing with list and map views
- Property details and booking system
- Favorites management
- User profiles and settings
- Multi-language support (French/English)
- Dark mode
## Setup Instructions
### 1. Firebase Configuration
1. Create a new Firebase project at https://console.firebase.google.com
2. Enable Authentication (Email/Password)
3. Enable Firestore Database
4. Enable Storage
5. Download the `google-services.json` file and place it in `app/` directory
### 2. Android Setup
1. Open the project in Android Studio
2. Sync Gradle files
3. Build and run the application
### 3. Firebase Rules
Set up these Firestore rules:
rulesversion = '2'; service cloud.firestore { match /databases/{database}/documents { match /users/{userId} { allow read, write: if request.auth != null && request.auth.uid == userId; } match /properties/{propertyId} { allow read: if true; allow write: if request.auth != null && request.auth.uid == resource.data.ownerid; } match /bookings/{bookingId} { allow read, write: if request.auth != null && (request.auth.uid == resource.data.userid || request.auth.uid == resource.data.propertyowner_id); } } }
## Architecture
- MVVM (Model-View-ViewModel) architecture
- Repository pattern for data management
- Firebase for backend services
- Material Design components
## Dependencies
- Firebase Auth, Firestore, Storage
- Glide for image loading
- Material Design Components
- Google Play Services for maps
- ViewModel and LiveData