Mobile application for room rental services. Built with Expo and React Native for the frontend, with a Node.js backend handling real-time features and payment processing.
- User authentication and profile management
- Room search with location, price, and amenity filters
- Listing creation and management for landlords
- Real-time notifications via Socket.io
- In-app messaging
- MoMo payment integration
- Contract management
- Expo SDK 53
- React Native 0.79
- TypeScript
- NativeWind (Tailwind for React Native)
- Node.js with Express
- Socket.io for real-time communication
- MySQL database
- Redis for caching
- Node.js 18+
- Expo CLI
- MySQL server
- Redis server
- iOS Simulator or Android Emulator (or Expo Go on device)
-
Clone the repository:
git clone https://github.com/PhucTruong-ctrl/room-rental-mobile.git cd room-rental-mobile -
Install dependencies:
npm install
-
Configure environment:
cp .env.example .env
-
Start the app:
npx expo start
-
Navigate to server directory:
cd server -
Install dependencies:
npm install
-
Configure environment and start:
cp .env.example .env npm run dev
app/ - Expo Router screens
components/ - Reusable UI components
hooks/ - Custom React hooks
config/ - App configuration
server/ - Node.js backend
src/
routes/ - API endpoints
middlewares/
services/
Contributions are welcome. Please open an issue to discuss changes.
MIT License