PropertyFinder is a React Native app and website that allows users to view property details, filter and sort properties, and manage a list of favorite properties.
- View detailed property information
- Filter and sort properties
- Add properties to a favorites list
- Adjust the attractiveness score of properties using a slider
- Responsive design for both mobile app and website
- Node.js
- npm (Node Package Manager)
- Expo CLI (for React Native)
-
Clone the repository:
git clone https://github.com/yourusername/PropertyFinder.git cd PropertyFinder/MyApp -
Install dependencies:
npm install
-
Start the development server:
npm start
-
Navigate to the
property-finderdirectory:cd PropertyFinder/property-finder -
Install dependencies:
npm install
-
Start the development server:
npm start
- For the React Native app, scan the QR code generated by Expo using the Expo Go app on your mobile device.
- For the website, open a browser and go to
http://localhost:3000.
To deploy the website online for easy testing, you can use platforms like Vercel, Netlify, or GitHub Pages. Here's a quick guide for Vercel:
-
Install Vercel CLI:
npm install -g vercel
-
Deploy the website:
cd PropertyFinder/property-finder vercel
Follow the prompts to deploy your website. Once deployed, you will receive a URL to access your site online.
- UI/UX Design: The app and website feature a clean and simple UI, with a consistent color scheme and easy navigation.
- Data Management: JSON files are used for storing property data, which makes it easy to update and manage.
- Responsive Design: Both the app and the website are designed to be responsive, ensuring a good user experience on different devices and screen sizes.
- Data Persistence: Currently, favorites and changes to attractiveness scores are not persisted between sessions.
- Scalability: The app uses static JSON files for data storage, which may not be suitable for a large number of properties.
- Data Persistence: Implement local storage or a backend database to persist favorites and other user data.
- Advanced Filtering: Add more advanced filtering options and improve the sorting functionality.
- User Authentication: Add user authentication to save user preferences and data across devices.
- Improved UI/UX: Further improve the user interface and experience, including animations and transitions.
- Backend Integration: Integrate a backend service to handle data storage, user authentication, and more advanced features.
- Real-Time Updates: Implement real-time updates for property data and user actions using WebSockets or similar technologies.
- Testing: Add comprehensive unit and integration tests to ensure the app's reliability and performance.
- Performance: Consider optimizing performance for both the app and the website, especially when handling a large number of properties.
- Accessibility: Ensure the app and website are accessible to all users, including those with disabilities, by following best practices for accessibility.
- Security: Pay attention to security aspects, especially when dealing with user data and authentication.
This project is licensed under the MIT License - see the LICENSE file for details.



