A full-stack real estate app with Google sign-in, dynamic property listings, and user profiles. Built with Expo SDK 52, Appwrite, Tailwind CSS, NativeWind, and TypeScript to keep the project clean and scalable.
- Google sign-in for quick access
- Home page with recent and recommended listings, search, and filters
- Explore page to browse all property types
- Property details page with images and key data
- Profile page for user info and settings
- Centralized data fetching with a simple useQuery-like approach
- Extra improvements in structure and component reuse
Make sure you have:
- Git
- Node.js
- npm
- An Android/iOS emulator or a physical device
git clone https://github.com/AsinOmal/ReactNative-Restate.git
cd react_native-restatenpm installCreate a file named .env.local in the project root and add:
EXPO_PUBLIC_APPWRITE_ENDPOINT=https://cloud.appwrite.io/v1
EXPO_PUBLIC_APPWRITE_PROJECT_ID=
EXPO_PUBLIC_APPWRITE_DATABASE_ID=
EXPO_PUBLIC_APPWRITE_GALLERIES_COLLECTION_ID=
EXPO_PUBLIC_APPWRITE_REVIEWS_COLLECTION_ID=
EXPO_PUBLIC_APPWRITE_AGENTS_COLLECTION_ID=
EXPO_PUBLIC_APPWRITE_PROPERTIES_COLLECTION_ID=
Fill in your Appwrite values from your Appwrite project dashboard.
npx expo startYou can open the app in:
- a development build
- an Android emulator
- an iOS simulator
- Expo Go (limited sandbox)
Edit files inside the app folder to start building.
All Appwrite values must go into .env.local:
- API endpoint
- Project ID
- Database ID
- Collection IDs
These values come from your Appwrite console.
Expo provides a straightforward workflow:
Build for production:
npx expo run:android --variant releasenpx expo run:ios --configuration ReleaseYou can also build with EAS:
eas build -p android
eas build -p iosUpload the generated builds to the Play Store or the App Store.
- Fork the repository
- Create a branch (
git checkout -b feature-name) - Commit your changes
- Push the branch
- Open a pull request
This project is licensed under the MIT License.