An-Najah National University FACULTY OF ENGINEERING AND INFORMATION TECHNOLOGY Computer Engineering Department Software Graduation Project Aqar ( (َعقَارْ Students: Supervisor: Yaqeen Yaseen Asmaa Afeefi Mohammad Kareem Kukhon February ,25, 2024 Acknowledgment To our Doctors in the Department of Computer Engineering we extend our deepest gratitude for the invaluable contributions made by each of you in the department of computer engineering. Your profound insights, vast expertise, and unwavering commitment have collectively played a pivotal role in shaping and enriching our academic journey. A special note of appreciation is dedicated to our devoted supervisor, Dr. Asmaa Afeefi. Your exceptional dedication to our project, the mentorship you provided, and the constant encouragement have been genuinely invaluable. Your guidance has not only elevated our academic experience but has also been a driving force inspiring us to strive for excellence in every aspect of our endeavors. To those who readily offered their unwavering support, we express our heartfelt thanks for standing by our side throughout our educational journey. The collaboration, encouragement, and shared enthusiasm from each one of you have significantly contributed to enhancing the joy and fulfillment of the entire process. Lastly, but certainly not least, we wish to convey our complete thanks and gratitude to our families. Their constant and steadfast trust, coupled with their unwavering support, encouragement, patience, and belief in our abilities, provided us with the strength and resilience needed to successfully navigate our academic path to its conclusion. This graduation project serves as a testament to the collective effort of many, and we are genuinely grateful to all who played a role in its success. Thank you for being an integral part of our academic and personal growth. Abstract The project is a comprehensive and easy-to-use application to facilitate land and real estate sales, designed to simplify real estate transactions for both buyers and sellers. This platform provides a wide range of features to facilitate real estate exploration, allowing users to search for properties based on various criteria and view detailed information about each listing. Sellers can easily create, edit, manage real estate listings and showcase their properties to potential buyers. On the other hand, buyers can start the purchasing process, make inquiries and view property details. Through its intuitive user interface and powerful functionality, the project aims to simplify the real estate market, and make real estate transactions efficient, transparent and accessible to a variety of users. When we want to own or rent a property, we may have difficulty finding what we are looking for due to the lack of a platform that brings together available properties near us in one app. Customers are forced to scour social media and ads, which complicates the process of getting what they want. The same applies to those who want to offer their properties for rent or sale, as they suffer from not having a target audience to receive their ads. The idea of the “Aqar” application aims to facilitate the processes of buying, selling and renting real estate in a convenient and easy way for users. The application can collect all properties available for sale or rent, including houses, apartments, land and residential buildings. Users will have the ability to search for properties suitable for them and communicate with their owners easily while ensuring credibility, or offer their properties for sale or rent. The app includes a wide range of features meticulously designed to elevate the user experience. These include advanced search and filtering functions, providing users with property exploration tools. The proprietary recommendation system personalizes suggestions to individual preferences. The inclusion of a robust in-app chat and messaging system facilitates seamless communications between buyers and sellers, complemented by an automated chatbot to quickly address common queries. User account management allows users to save searches, organize favorite listings, and engage in productive discussions with real estate agents. Moreover, seamless integration with Google Maps enriches the experience by providing location information. The addition of booking and scheduling tools simplifies the property viewing process, while user-submitted reviews and ratings, along with personalized reviews and comment sections, promote transparency and informed decision-making. Stay informed with message notifications to ensure accessibility and convenience, the application has been carefully optimized for both mobile and web platforms (as administrator). Table of Contents 1 Introduction ......................................................................................................................................... 6 1.1 Motivation .................................................................................................................................... 6 1.2 Aims and Objectives ..................................................................................................................... 7 2 Constraints ........................................................................................................................................... 7 3 Literature Review ............................................................................................................................... 8 4 Methodology ........................................................................................................................................ 8 4.1 Non-Functional Requirements ..................................................................................................... 8 4.2 Design ........................................................................................................................................... 9 4.2.1 Registration and Log In ...................................................................................................... 9 4.2.2 Book Appointments ............................................................................................................. 9 4.2.3 Map and guidelines ............................................................................................................. 9 4.2.4 Real time chat .................................................................................................................... 10 4.2.5 Chatbot ............................................................................................................................... 10 4.2.6 Notifications ....................................................................................................................... 11 4.2.7 Appointment Schedule ...................................................................................................... 12 4.2.8 Payment ............................................................................................................................. 12 4.2.9 Recommendation System ................................................................................................. 12 4.2.10 Properties Filtering ........................................................................................................... 12 4.2.11 Statistics ............................................................................................................................. 12 4.3 Implementation .......................................................................................................................... 13 4.3.1 Key Library ....................................................................................................................... 13 4.4 Tools ............................................................................................................................................ 13 5 Results ................................................................................................................................................ 14 5.1 User App ..................................................................................................................................... 15 5.1.1 Welcoming Page ................................................................................................................ 15 5.1.2 Sign up page ....................................................................................................................... 16 5.1.3 Login Page ......................................................................................................................... 18 5.1.4 Bottom Bar ........................................................................................................................ 19 5.1.5 Home Page ......................................................................................................................... 20 5.1.6 Search Page ........................................................................................................................ 28 5.1.7 Add Property Page ............................................................................................................ 29 5.1.8 Saved Properties Page....................................................................................................... 32 5.1.9 Contact Us Page ................................................................................................................ 33 5.1.10 Side Bar .............................................................................................................................. 34 5.1.11 Profile Page ........................................................................................................................ 35 5.1.12 My Chats Page ................................................................................................................... 38 5.1.13 Notifications Page ............................................................................................................. 39 5.1.14 My Properties Page ........................................................................................................... 40 5.1.15 Statistics Page .................................................................................................................... 41 5.2 Admin App .................................................................................................................................. 42 5.2.1 Dashboard Page................................................................................................................. 42 5.2.2 Users Page .......................................................................................................................... 44 5.2.3 Properties Page .................................................................................................................. 48 5.2.4 Statistics Page .................................................................................................................... 52 6 Conclusions ........................................................................................................................................ 57 TABLE OF FIGURES FIGURE 1: CHATBOT EXPLANATION .............................................................................................................................. 11 FIGURE 2: WELCOMING PAGE ............................................................................................................................................. 15 FIGURE 3: SIGN UP PAGE (ENGLISH) FIGURE 4: SIGN UP PAGE (ARABIC).............................................................................. 16 FIGURE 5: SIGN UP (ALERT) ............................................................................................................................................... 17 FIGURE 6: LOGIN PAGE (ENGLISH) FIGURE 7: LOGIN PAGE (ARABIC) .................................................................................... 18 FIGURE 8: LOGIN PAGE (ALERT) .......................................................................................................................................... 19 FIGURE 9: BOTTOM BAR .................................................................................................................................................... 19 FIGURE 10: HOME PAGE.................................................................................................................................................... 20 FIGURE 11 : VIEW ALL (RECOMMENDED PROPERTIES) FIGURE 12:VIEW ALL (ALL PROPERTIES) ................................................. 21 FIGURE 13: DESCRIPTION PAGE 1 FIGURE 14: DESCRIPTION PAGE 2 .................................................................................... 22 FIGURE 15: BOOK TOUR PAGE ............................................................................................................................................ 23 FIGURE 16: CHAT (SECOND SIDE) FIGURE 17: CHAT (FIRST SIDE) ........................................................................................ 24 FIGURE 18 : COMMENTS PAGE 1 FIGURE 19: COMMENTS PAGE 2 ....................................................................................... 25 FIGURE 20: LOCATIONS PAGE ............................................................................................................................................. 26 FIGURE 21: CHAT BOT 1 FIGURE 22: CHAT BOT 2 ......................................................................................................... 27 FIGURE 23: SEARCH PAGE .................................................................................................................................................. 28 FIGURE 24: ADD PAGE 1 FIGURE 25: ADD PAGE 2 ................................................................................................. 29 FIGURE 26: PAYMENT PAGE 1 ............................................................................................................................................. 30 FIGURE 27: PAYMENT PAGE 2 ............................................................................................................................................. 31 FIGURE 28: SAVED PROPERTIES ........................................................................................................................................... 32 FIGURE 29: CONTACT US PAGE ............................................................................................................................................ 33 FIGURE 30: SIDE BAR ........................................................................................................................................................ 34 FIGURE 31 : PROFILE PAGE ................................................................................................................................................. 35 FIGURE 32 : EDIT PROFILE PAGE .......................................................................................................................................... 36 FIGURE 33 : APPOINTMENT SCHEDULE PAGE ......................................................................................................................... 37 FIGURE 34 : MY CHATS PAGE ............................................................................................................................................. 38 FIGURE 35: NOTIFICATIONS ................................................................................................................................................ 39 FIGURE 36: USER PROPERTIES PAGE FIGURE 37: REMOVE PROPERTY .................................................................................... 40 FIGURE 38: STATISTICS PAGE .............................................................................................................................................. 41 FIGURE 39: DASHBOARD PAGE ........................................................................................................................................... 42 FIGURE 40: DASHBOARD PAGE 1 (MOBILE) FIGURE 41: DASHBOARD PAGE 2 (MOBILE) .................................................... 43 FIGURE 42: USERS PAGE 1 ................................................................................................................................................. 44 FIGURE 43 : USERS PAGE 2 ................................................................................................................................................ 45 FIGURE 44: EDIT USER INFORMATION .................................................................................................................................. 45 FIGURE 45: DELETE USER................................................................................................................................................... 46 FIGURE 46 : USER PAGE SEARCH ......................................................................................................................................... 46 FIGURE 47: USER PAGE 1 (MOBILE) FIGURE 48: USER PAGE 2 (MOBILE) .................................................................. 47 FIGURE 49: PROPERTIES PAGE 1 .......................................................................................................................................... 48 FIGURE 50: PROPERTIES PAGE 2 .......................................................................................................................................... 49 FIGURE 51: EDIT PROPERTY INFORMATION ............................................................................................................................ 49 FIGURE 52: DELETE PROPERTY ............................................................................................................................................ 50 FIGURE 53:SEARCH PROPERTY BY CITY ................................................................................................................................. 50 FIGURE 54:SEARCH PROPERTY BY TYPE ................................................................................................................................. 51 FIGURE 55: PROPERTIES PAGE 2(MOBILE) FIGURE 56: PROPERTIES PAGE 1(MOBILE) ......................................................... 51 FIGURE 57: STATISTIC 1 ..................................................................................................................................................... 53 FIGURE 58: STATISTIC 2 ..................................................................................................................................................... 53 FIGURE 59: STATISTIC 3 ..................................................................................................................................................... 54 FIGURE 60: STATISTIC 4 ..................................................................................................................................................... 55 FIGURE 61: STATISTIC 5 ..................................................................................................................................................... 55 FIGURE 62: STATISTICS 1 (MOBILE) FIGURE 63: STATISTICS 2 (MOBILE) FIGURE 64: STATISTICS 3 (MOBILE) ............. 56 1 Introduction 1.1 Motivation On the exhausting quest for the ideal place to call home, individuals often find themselves submerged in a sea of scattered listings on social media and endless ads. The challenge of attracting the right buyers or tenants for a property has also been faced by many. In response to these issues, our brainchild, the "Aqar" application, has been introduced with the simple motivation of turning the entire real estate journey into a seamless experience for everyone involved. The headaches associated with the current methods of property hunting have been observed, where people are often jumping between different platforms, risking the chance of overlooking exactly what they are searching for. Aqar, a user-friendly platform, has been designed to consolidate all available properties for sale or rent, including houses, apartments, land, or residential buildings. No more sifting through social media or ads; everything needed is right at the users' fingertips. However, it's not just about listings. The extra mile is being gone with advanced search features, personalized recommendations, and an in-app chat that makes connecting with property owners a breeze. With Google Maps integration, a clear understanding of the area is provided, and property viewings are simplified through our booking tools. Transparency is considered paramount, with users being encouraged to share their experiences through comments. Additionally, a chatbot is standing by to handle common questions, making the entire process even smoother. In a nutshell, the "Aqar" app isn't just about buying, selling, or renting property. The entire experience is being streamlined, with a focus on promoting transparency. The mission is to revolutionize the real estate game, making it efficient, transparent, and, most importantly, centered around the human experience. A world is welcomed where finding the perfect space is as easy as a tap or a click. 1.2 Aims and Objectives The goal of simplifying the home search process with the "Aqar" app, acknowledging the overwhelming nature of listings and ads across different platforms. A user-friendly space is aimed to be created, where all available properties come together, making the home search easy and enjoyable. Beyond mere listings, the intention is to introduce features like personalized recommendations, an in-app chat, and transparent user reviews to build real connections in the world of real estate. Effortless communication with property owners and the sharing of experiences are envisioned. The mission is to make the entire experience personal, engaging, and tailored to individual needs. 2 Constraints The start was Building our project with the adoption of Flutter for frontend development, Tsed for backend implementation and MongoDB as the DB presented a unique set of challenges and issues. Our first challenges included setting up a solid base and understanding the basics of these technologies. The first setback was the need to familiarize ourselves with unknown programming languages such as Dart for Flutter and TypeScript for Tsed in building smartphone applications, considering how little expertise we had worked on. In addition, there were issues associated with the installation of large software programs necessary for development making it difficult to deploy on devices. Require us schedule management to give adequate time for project work in addition to our academic duties. The challenge in selecting the appropriate training courses is another barrier that needs more effort and time to research a program or solution. To eliminate these challenges, we specifically sought assistance from specialists who have a lot of knowledge in the technologies and try to overcome obstacles and identify effective solutions. 3 Literature Review The emergence of technology has revolutionized the real estate market landscape, with an increase in the creation of innovative applications designed to simplify transactions and enhance user experiences. The proposed “Aqar” project represents the concept of a comprehensive real estate application, with the increasing demand for platforms that simplify real estate transactions for both buyers and sellers. Existing research underscores the challenges individuals face in navigating a fragmented real estate market, particularly with regard to property discovery, negotiation, and effective communication. Studies showed that traditional methods of property scouting, which rely on scattered listings across social media and various advertising platforms, often result in a stressful and time-consuming experience for potential buyers. The “Aqar” application addresses this problem by integrating available properties into one platform that meets the diverse needs of users seeking to buy, sell or rent real estate. Moreover, the Researches emphasizes the importance of user-friendly interfaces and advanced functionalities in real estate applications. The "Aqar" project aligns with this trend by incorporating features such as advanced search and filtering mechanisms, a proprietary recommendation system, and a robust in-app chat and messaging system. These elements not only enhance the user experience but also contribute to the efficiency of real estate transactions, as suggested by studies focused on the impact of technology on the real estate industry. Transparency and credibility are recurring themes in real estate Researches, with an emphasis on the significance of informed decision-making. The "Aqar" application addresses this aspect by introducing user-submitted reviews and ratings, as well as personalized reviews and comment sections. The inclusion of such features aligns with research that advocates for transparency in real estate processes to build trust among users. The Researches also recognizes the role of location-based services in real estate applications, with an increasing reliance on mapping technologies to provide users with essential location information. The integration of Google Maps in the "Aqar" app aligns with this trend, contributing to a more enriched and informative property exploration experience. In conclusion, the "Aqar" project stands at the forefront of modern real estate applications, addressing crucial challenges identified through extensive research. By integrating advanced features and prioritizing transparency, the platform offers a promising solution to streamline real estate transactions. Moreover, its responsiveness mobile ( for users ) and web platform ( for administrators ) ensures a seamless user experience for both of them alike, catering to the diverse needs of today's market. 4 Methodology 4.1 Non-Functional Requirements • Screen Adaptation: It is possible to dynamically change the interface of the application for different sizes of screens. It has built-in features that automate the process of altering fonts, sizes, and images for optimal rendering on various devices. • Security: Chat functionality is secured from internal threats and unauthorized outside access which ensures confidentiality and integrity of user interactions. • Ease-of-Use: The application is designed with a user-friendly approach, featuring pages equipped with a set of icons and links for streamlined navigation between different sections. This design allows users to easily return to the previous page, enhancing overall user experience. • Usability: The software is designed to be self- descriptive and easy in use which allows users easily understand how it works without requiring professional assistance or support. The interface is designed for easy comprehension, reducing the learning curve of users working with the system. 4.2 Design Effective design planning holds immense importance. Prioritizing simplicity and efficiency, the graphical user interface (GUI) plays a pivotal role in comprehending the intended functionality of the software. When initiating the design phase for any application, essential considerations come into play. These involve analyzing comparable apps in the app store, formulating a design that resonates with the provided services and target audience, and innovating a distinctive design that distinguishes this app within its category. 4.2.1 Registration and Log In Three types of users are catered to by this application, each depending on how the app is utilized. The first type encompasses those who can benefit from certain features, such as browsing properties, communicating with realtors, utilizing our application robot, and other functionalities. The second type enjoys the capability to showcase their own properties on our app. The third type comprises those who can make the most of the app's services and utilize the full range of features offered. The same type of account is used by all users. Creating an account is a straightforward process where user information is inputted. Both registration and login functions are facilitated by the app. If an account already exists, the login page can be directly accessed, by entering the email and password. For those without an account, the registration page must be completed, and all required information, including username, gender, email, personal photo, phone number, address, and password, is to be provided. Subsequently, a code will be sent to the user's email to finalize the account creation process and gain entry to our application. 4.2.2 Book Appointments The application offers a feature allowing users to schedule visits or appointments. When a user discovers a property of interest, the natural desire to view it in person arises. The advantage of this feature becomes evident as users can easily book appointments with the property owner at times convenient for both parties. This scheduling will be reflected according to the owner's schedule. 4.2.3 Map and guidelines The Google Maps and Tracking feature offers a distinct advantage, particularly when leveraging the initial capability of scheduling property viewings. Through this functionality, users acquire the capability to not only visualize the property's location on the map but also observe the real-time location of the user and the route between them. This dynamic information is consistently updated in response to the user's changing location, thereby elevating the overall user experience. 4.2.4 Real time chat A real-time, two-way communication channel is provided by WebSockets between people in the application. Here's a simplified breakdown of how it works: Client-side: • Connection: The user's browser connects to the server using a WebSocket handshake. • Sending messages: When the user types a message, the application sends it to the server through the WebSocket connection. • Receiving messages: Whenever another user sends a message, the server sends it back to the user via the same WebSocket connection. • Displaying messages: The application updates the chat interface with the received message for the user to see. Server-side: • Listen for connections: The server listens for any WebSocket connection requests from client browsers. • Manage connections: Once a connection is established, the server keeps track of it and maintains a list of connected users. • Receive messages: When a user sends a message, the server receives it. • Send messages: When a message is received, it is sent back out to the currently connected users, through their individual WebSocket connections, by the server. 4.2.5 Chatbot The chatbot is created to facilitate property search based on location or area, making it easier for the user. Throughout the conversation, user intents are identified by the chatbot, appropriate responses are generated, and context is managed, thereby showcasing its ability to understand user input and respond accordingly. The conversation flow is influenced by the defined intents and responses in the JSON file. Original Pattern: "I'm looking for a [property type] in [location]" . Tokenization: splitting a string into meaningful units and store it in an array • Ex: ['i', 'am', 'looking', 'For', 'a', '[property', 'type]', 'in', '[location]'] • Lowercasing: convert the capital characters to small characters • Ex: ['i', 'am', 'looking', 'for', 'a', '[property', 'type]', 'in', '[location]'] • Stemming: Generate the root from of the words • Ex: ['i', 'am', 'look', 'for', 'a', '[property', 'type]', 'in', '[location]'] • Exclude Punctuation: exclude punctuation characters like ( ?, ], [, …. ) • Ex: ['i', 'am', 'look', 'for', 'a', 'property', 'type', 'in', 'location'] • Bag-of-Words Representation: Create a bag-of-words representation for the processed pattern. The bag will be a binary vector indicating the presence or absence of each word in the vocabulary. Ex: Vocabulary: ['i', 'am', 'look', 'for', 'a', 'property', 'type', 'in', 'location'] Bag-of-Words: [1, 1, 1, 1, 1, 1, 1, 1, 1] This bag-of-words representation is then used as input to train the neural network during the chatbot model training phase. The model learns to associate such representations with the corresponding intent tags, allowing it to later predict intents based on user input. Figure 1: Chatbot Explanation The percentage on the right represent the probability of each intent the highest probability will be chosen 4.2.6 Notifications WebSockets, which facilitate a real-time, two-way communication channel among users in the application, are utilized. The process is outlined as follows: Client-side: • Connection Establishment: A connection between the user's browser and the server is established through a WebSocket handshake. • Notification Transmission: When a notification needs to be sent, it is transmitted to the server via the WebSocket connection by the application. • Notification Reception: Whenever another notification is sent, it is relayed back to the user by the server through the same WebSocket connection. • Notification Display: The user is notified by the application using the "awesome_notifications" package, and the notification interface is updated with the received notification for user visibility. Server-side: • Connection Listening: WebSocket connection requests from the client are actively listened to by the server. • Connection Management: Upon the establishment of a connection, it is tracked and maintained in a list of connected users by the server. • Notification Reception: When a user sends a notification, it is received and processed by the server. • Notification Transmission: Upon receiving a notification, it is forwarded to the currently connected users through their individual WebSocket connections by the server. 4.2.7 Appointment Schedule The advantage bestowed upon the appointment owner by the appointment scheduling feature lies in its ability to present appointments in a clear and straightforward manner. This ensures that users need not harbor concerns about forgetting or missing appointments, fostering a seamless and worry-free scheduling experience. 4.2.8 Payment To avail themselves of the property advertisement feature within the application, the user is required to make a payment. The user selects the duration for which the advertisement will be displayed in the application and proceeds to complete the payment transaction using a Visa card. During this process, the user inputs pertinent Visa card details, including email, region, and card number. 4.2.9 Recommendation System A thorough exploration was undertaken to identify recommendation system algorithms, including matrix factorization algorithm and others. Subsequently, the Content-Based Recommendation System (CBRS) was selected. Content-Based Recommendation System (CBRS) is utilized that is based on the most visited cities, and this is how it is aligned with CBRS: • Content features focus: The "city specific" feature of properties is primarily taken into account, consistent with CBRS's emphasis on item attributes. • Implicit user profiles creation: User preferences for cities are captured based on their past behavior, similar to a simplified user profile in CBRS. • Recommendations prioritization based on feature matches: Properties from frequently visited cities are recommended, reflecting the core concept of CBRS. 4.2.10 Properties Filtering The search and filtering feature is like the user personal assistant, making it super easy for the user to find the perfect property. He can look for properties based on the city, whether it's up for sale or rent, or the type of property he is interested in – be it a cozy house, a chic apartment, a charming chalet, or even a piece of land. And it gets even better the user can fine-tune his search by setting a price range or specifying the area of the property. It's a tailored search experience at user fingertips! 4.2.11 Statistics The user derives significant benefit from the statistics feature, which enables decisions to be informed by presenting pertinent data on the city with the highest number of sold houses, chalets, etc. 4.3 Implementation 4.3.1 Key Library 4.3.1.1 Server Side MongoDB: The choice of MongoDB as our database solution was driven by its flexible and scalable nature, making it well-suited for the dynamic requirements of our project. Widely embraced in the software development community, MongoDB provides a robust platform for managing and storing data in a document-oriented format. To establish a seamless connection between the database and the user-facing application, Tsed, a TypeScript framework for building Node.js applications, was employed. Tsed serves as an intermediary, ensuring efficient communication and data exchange between the application and the MongoDB database, thereby contributing to a responsive and user-friendly experience. 4.3.1.2 Client Side Flutter and Dart Flutter, an open-source UI software development toolkit created by Google, utilizes the Dart programming language to build natively compiled applications for mobile, web, and desktop from a single codebase. This framework empowers developers to craft visually appealing and high-performance user interfaces. By leveraging Dart's capabilities alongside the Flutter framework, developers can achieve code reusability, allowing for the creation of UI components that seamlessly adapt across various platforms. Flutter also provides a standardized set of APIs, simplifying the development process and fostering the creation of intuitive and responsive user interfaces, ensuring a consistent and engaging user experience across different platforms. 4.4 Tools Android Studio: Choosing Android Studio for integrating the emulator was a game-changer, ensuring our mobile app performed at its best. The built-in emulator in Android Studio not only mimicked the Android device setup effectively but also came loaded with versatile features for testing and debugging. Its capability to replicate various Android device configurations allowed us to thoroughly check how our app behaved across different platforms. The real-time feedback and performance monitoring features of the emulator in Android Studio were instrumental in tweaking the user experience and catching potential issues early on in development. Opting for Android Studio as our emulator hub significantly contributed to the overall success of our project, providing a dependable and efficient testing environment for our Android application. Visual Studio: For the backend development and other components of our project, Visual Studio emerged as a key player. Developed by Microsoft, Visual Studio provided a versatile and robust IDE catering to various programming languages and frameworks. Its integrated tools for coding, debugging, and testing proved invaluable in the development of backend functionalities. The support for a wide range of programming languages and frameworks, coupled with its collaboration features, made Visual Studio an excellent choice for ensuring the reliability and efficiency of our project's backend components. The seamless integration with Azure services further facilitated deployment and management aspects, contributing to the overall success of our project. 5 Results The overarching objective of this project is to benefit the community at large by creating job opportunities across various categories, including application developers. Additionally, the project aims to streamline the delivery of services required by the target groups through the application. Simultaneously, it seeks to simplify the real estate search for individuals interested in property acquisition and enhance the process of showcasing real estate listings to property owners. 5.1 User App 5.1.1 Welcoming Page Figure 2: Welcoming Page Welcoming Page is the initial screen that introduces the application and clarifies its purpose. It provides users with two buttons: "Register" for those without an account who wish to create one, and "Login" for individuals with existing accounts seeking access. 5.1.2 Sign up page Figure 3: Sign Up Page (English) Figure 4: Sign Up Page (Arabic) Sign-Up page offers users a straightforward process to establish an account. Input essential details such as First Name, Last Name, a personal photo, gender, email, phone, city, and create a secure password. Upon completion, click the "Sign Up" button to finalize the registration. Additionally, a language button allows users to switch to Arabic, enhancing accessibility. Sign Up Page (English) Figure 4: Sign Up Page (Arabic) illustrates this feature. For those with existing accounts, a dedicated button directs users to the login page, ensuring a seamless transition for returning users. In the event that any of the required fields are left empty during the registration process, a prompt message will be displayed, kindly notifying the user to complete all fields with the message "Please fill out all fields." This ensures that all necessary information is provided for a successful account creation. Figure 5: Sign Up (Alert) 5.1.3 Login Page Figure 6: Login Page (English) Figure 7: Login Page (Arabic) Login Page serves as the secure gateway for users to access their accounts by entering their registered email and password. To initiate the process, users are prompted to input their login credentials and proceed by clicking the "Login" button. Additionally, for those without an existing account, a designated button is available to seamlessly redirect them to the Sign-Up screen, facilitating the account creation process. This user-friendly approach aims to enhance the overall user experience, ensuring accessibility and ease of navigation within the platform. As in the Sign-up page if one of the fields is empty a message will appear to alert the user that all fields must be filled out. Figure 8: Login Page (Alert) 5.1.4 Bottom Bar Figure 9: Bottom Bar The Bottom Bar functions as a central navigation tool, ensuring smooth movement between five core screens: Home Page, Search Page, Saved Properties Page, Add Property Page, and Contact Us Page. This streamlined design enhances user experience by providing quick access to essential features, fostering intuitive navigation throughout the application. 5.1.5 Home Page Figure 10: Home Page Welcome to Home Page, a curated space featuring personalized property recommendations tailored to your preferences. In the first section, you will find Properties from our recommendation system, presented in a visually dynamic format. Users have the option to horizontally scroll through the showcased listings or opt for a comprehensive overview by selecting "View All" to explore all recommended Properties from our sophisticated recommendation system. The second section, titled "You May Love" offers a diverse selection of properties for your consideration. Users can peruse the options by scrolling vertically or choose to view the complete collection by clicking on "View All." This dual-section design aims to deliver a refined and individualized browsing experience, ensuring users can seamlessly navigate and discover properties that align with their unique preferences and interests. 5.1.5.1 View All Pages Figure 11 : View All (Recommended Properties) Figure 12:View All (All Properties) These two pages are exclusively designed for listing properties—both All Properties and Recommended Properties. Their primary purpose is to simplify the user experience, making it more convenient for users to discover a comprehensive array of properties. 5.1.5.2 Description Page Figure 13: Description Page 1 Figure 14: Description Page 2 Description Page serves as a comprehensive showcase, presenting detailed information about a property to familiarize the user with its key features. It encompasses essential details such as the property type (house, apartment, chalet, land), indicating whether it is available for sale or rent. For land listings, the area is specified, while other property types highlight the number of bedrooms, bathrooms, and parking spaces. The owner's description further adds a personalized touch to the property's profile. This page also includes a section dedicated to viewing the property's location through Google Maps, providing users with a spatial context. Additionally, there is an interactive space for adding comments or perusing others' feedback about the property. Rich visuals in the form of property images are prominently displayed. For user convenience, the Description Page facilitates direct interaction with the property. Users can express interest by booking an appointment with the owner or engaging in a chat. The option to save the property in the favorites list ensures easy reference for future consideration. Altogether, the Description Page offers a comprehensive overview, empowering users with the information and tools necessary for informed decision-making and seamless interaction with the property. 5.1.5.2.1 Book tour page Figure 15: Book tour Page The Book Tour Page is strategically designed to facilitate the user's reservation of a property tour with the owner, providing a firsthand opportunity to explore the property and engage with the owner directly. This tour serves as a crucial initial step for users in making informed decisions regarding their potential purchase or rental. The face-to-face interaction during the tour allows users to develop a deeper understanding of the property and establish a personal connection with the owner. The significance of this tour lies in its capacity to lay the groundwork for important discussions and agreements. Whether it's negotiating terms or finalizing details, the in-person meeting creates a conducive environment for such conversations. Additionally, users have the option to continue discussions and agreements via chat after the scheduled appointment, ensuring a seamless and efficient communication channel. In essence, the Book Tour Page plays a pivotal role in bridging the virtual and physical realms, providing users with the opportunity to assess the property in person and establish a direct line of communication with the owner, facilitating a more personalized and conclusive decision-making process. 5.1.5.2.2 Chat Page Figure 16: Chat (second side) Figure 17: Chat (first side) Chat Page serves as a straightforward platform designed for direct communication between the property owner and the user. Its simplicity is aimed at fostering seamless interaction, allowing users to inquire about any aspect of the property or negotiate potential deals. This feature empowers users to engage in real-time conversations with the owner, facilitating the exchange of information, clarification of queries, and the possibility of reaching agreements. Chat Page not only enhances the user experience by providing a convenient channel for communication but also plays a vital role in establishing a direct and efficient means of addressing inquiries or concerns. Whether it's seeking additional details, discussing terms, or finalizing arrangements, this page acts as a dynamic tool to facilitate effective communication between the property owner and the user, ultimately contributing to a more informed and collaborative property transaction process. 5.1.5.2.3 Comments Page Figure 18 : Comments Page 1 Figure 19: Comments Page 2 comments page in the "Aqar" application acts as a vital hub for users to share opinions and insights about listed properties, enhancing transparency and fostering community engagement. Users can discuss various aspects of properties, facilitating informed decision-making for buyers and renters. Direct communication between users streamlines interactions and builds trust, while personalized reviews and ratings offer tailored recommendations. Overall, the comments page promotes transparency, enhances user engagement, and facilitates smoother real estate transactions within the platform. 5.1.5.2.4 Locations Page Figure 20: Locations Page The Locations Page is a pivotal component of our platform, serving as a beacon for users seeking to navigate to their desired property with ease. This page offers a comprehensive display of essential information, including the property's location, the user's current whereabouts, and a dynamically updated route that seamlessly connects the two points. By providing such functionality, the Locations Page effectively streamlines the navigation process, alleviating any potential confusion or frustration associated with finding one's way to unfamiliar destinations. Its benefits are manifold: users enjoy an enhanced experience, characterized by convenience, efficiency, and real-time updates that ensure optimal route planning. This feature not only saves users valuable time but also bolsters their confidence by providing clear visual representations of their journey, instilling a sense of security and assurance. Moreover, the accessibility of the Locations Page accommodates users of varying levels of familiarity with the area, making navigation a seamless and intuitive experience for all. In essence, the Locations Page stands as a testament to the commitment to delivering user-centric solutions that prioritize convenience, efficiency, and satisfaction. 5.1.5.3 Chatbot Page Figure 21: Chat Bot 1 Figure 22: Chat Bot 2 The chatbot acts as a virtual assistant for property search, primarily focusing on location-based queries. It employs advanced natural language processing techniques to understand user intents expressed in conversational language. By tokenizing, lowercasing, stemming, and excluding punctuation from user input, the chatbot creates a standardized representation known as a bag-of-words. This representation, consisting of binary vectors indicating the presence or absence of specific words from a defined vocabulary, forms the basis for training a neural network model. During the training phase, the model learns to associate these representations with corresponding intent tags, enabling it to predict user intents accurately. Utilizing this trained model, the chatbot guides users through property search conversations, providing relevant responses and facilitating a seamless user experience. 5.1.6 Search Page Figure 23: Search Page Search Page is user's key to finding the perfect property with ease. It's like having a personal assistant for your property-hunting journey. You can filter your search based on what matters most to you—whether you're looking to rent or buy, exploring different property types like houses, apartments, lands, or chalets. Want something specific? Just enter the address, specify the area in square meters, or set a price range that suits your budget. It's all about tailoring your search to fit your unique needs, making the process simple and enjoyable as you discover properties that feel just right for you. 5.1.7 Add Property Page Figure 24: Add Page 1 Figure 25: Add Page 2 Add Property Page serves as a comprehensive platform for users wishing to advertise their properties. To initiate the process, users are required to furnish essential information pertaining to the property. This includes specifying whether the property is for sale or rent, indicating the type of property (house, apartment, chalet, land), and providing detailed location information such as city, street, and area in relation to the price. For rental properties, users must input the desired rental period along with the corresponding price. In contrast, for properties intended for sale, the price is entered directly. Additional details encompass the number of bedrooms, bathrooms, and garages. If the property is not a piece of land, a description is mandatory, accompanied by a primary image and several supplementary images for display on the property's description page. Upon completing this comprehensive input, users can finalize the process by clicking the "Add Property" button. This systematic approach ensures that users can effectively showcase their properties with all relevant details, facilitating a transparent and informative listing for potential interested parties. As previously indicated, when a user intends to showcase a property on the application, a fee is required for this advertising service. The payment page will appear upon clicking the "Add Property" button. 5.1.7.1 Payment Page Figure 26: Payment Page 1 Payment Page is a pivotal step in the process of adding a property to the application. To proceed with showcasing a property, users are required to make a payment, and this can be done by selecting the desired advertising duration. Upon choosing the preferred duration, users proceed to the Checkout button, triggering the appearance of the payment screen. Figure 27: Payment Page 2 On the payment screen, users are prompted to input their Visa information. This includes entering details such as card number, expiration date, and security code. Once the required information is provided, users can finalize the transaction by clicking on the "Pay" button. This secure and streamlined process ensures that users can efficiently complete the payment for their property advertisement, enhancing the overall user experience within the application. 5.1.8 Saved Properties Page Figure 28: Saved Properties Saved Properties Page is a convenient and user-friendly feature designed to enhance the overall experience of users on a real estate or property listing platform. This page serves as a personalized space where users can easily manage and keep track of the properties they have marked as favorites or saved for future reference, user can go to the description page by clicking on the property, and he can also delete the property from the list through the delete button. It adds a layer of organization and efficiency to the property browsing process. 5.1.9 Contact Us Page Figure 29: Contact us page The Contact Us Page serves as a direct communication link, fostering a closer connection between users and the application's administrators (Admins). In the event that users have questions or encounter issues, they have the option to reach out for assistance. Contact can be established through the provided contact number, facilitating direct and immediate communication. Alternatively, users can opt to send an email to the designated email address monitored by the admins. This page is designed to ensure that users have accessible avenues to seek support, guidance, or resolution for any queries or concerns they may have. It underscores the commitment of the application to provide responsive and user-centric support, enhancing the overall user experience. 5.1.10 Side Bar Figure 30: Side Bar Sidebar serves as a navigational hub within the application, responsible for facilitating seamless transitions between several pages. Positioned conveniently at the side of the interface, it acts as a gateway to various sections and features. Users can effortlessly access different pages by selecting options from the Sidebar menu, providing an intuitive and efficient means of navigation. Whether directing users to their profile, notifications, or other vital sections, the Sidebar streamlines the user experience by offering quick and direct access to different areas of the application. Its functionality as a central navigation tool enhances overall usability, ensuring that users can easily explore and interact with diverse aspects of the application. 5.1.11 Profile Page Figure 31 : Profile Page The Profile Page serves as a centralized hub for the user's personal information, providing a comprehensive overview of their details. Users can easily access and review their profile information, gaining insights into their account settings. Within this page, users have the convenience of navigating to two essential functionalities. Firstly, a button is available to facilitate the modification of the user's personal information. Clicking on this button directs users to a dedicated page where they can update, edit, or enhance their profile details as needed. This ensures that users have control over the accuracy and relevance of the information associated with their account. Figure 32 : Edit Profile Page Secondly, the Profile Page features a button that leads users to the Appointment Schedule Page. This page allows users to manage and view their scheduled appointments, providing a convenient way to stay organized and keep track of property viewings, discussions, or any other appointments relevant to their account. Figure 33 : Appointment Schedule Page In essence, the Profile Page is not only a display of user information but also a gateway to efficiently manage and update personal details and appointment schedules, ensuring a personalized and user-centric experience within the application. 5.1.12 My Chats Page Figure 34 : My Chats Page My Chats Page serves as a dedicated space designed to streamline user interaction by displaying all conversations between the user and real estate owners. This functionality is integral to providing users with effortless access to their communication history. By consolidating all chats in one location, users can conveniently review and revisit conversations with property owners, fostering seamless communication and enhancing the overall user experience within the application. The My Chats Page is a practical tool that facilitates efficient navigation and ensures that users can easily track and reference their past interactions, contributing to a more organized and user-friendly platform. 5.1.13 Notifications Page Figure 35: Notifications The Notifications Page serves as a centralized repository for all alerts and messages directed to the user. This page is designed to keep users informed about any new messages within the application. By consolidating notifications in one dedicated space, users can easily stay abreast of developments and promptly respond to new messages. This feature ensures that users receive timely alerts, enhancing communication efficiency and overall user engagement. The Notifications Page is a valuable tool for users to manage their interactions, providing a convenient hub for tracking and responding to messages, thereby contributing to a more responsive and user-centric experience within the application. Additionally, there are two types of notifications: messages and appointment requests. When a user wants to book an appointment with the owner, they will choose the day and time, and a notification will be sent to the property owner. The owner can then accept or reject the appointment directly from the notification. Another element of the Notifications Page includes real-time pop-up notifications that appear at the top of the screen when a new message is received. Clicking on these pop-ups directly redirects users to the corresponding chat or dialog, ensuring swift access and immediate engagement with incoming messages. 5.1.14 My Properties Page Figure 36: User Properties Page Figure 37: Remove property The User's Properties Page functions as a personalized space within the Aqar application, showcasing properties that the user has advertised. This page provides users with an overview of their listed properties and includes a convenient button for managing the advertisement's status. Users can exercise control over the fate of their ads, choosing to either remove them due to a successful sale or rental or opting to delete them without specific cause. This feature ensures that users have a straightforward mechanism for actively managing and maintaining their property listings, contributing to a more intuitive and user- centric experience on the platform. 5.1.15 Statistics Page Figure 38: Statistics Page The Statistics Page is a valuable feature that presents users with four key metrics, aiding in decision- making processes. These statistics highlight the trends of property transactions in different cities, providing insights into market dynamics. The four categories include: 1. Most Houses Sold/Rented: Displays the city where the highest number of houses have been sold or rented. 2. Most Apartments Sold/Rented: Highlights the city where apartments have experienced the highest sales or rental activity. 3. Most Chalets Sold/Rented: Indicates the city with the most chalets sold or rented. 4. Most Land Sold/Rented: Presents the city where the most land has been sold or rented. For users contemplating a move or property investment, these statistics offer valuable information. For instance, someone seeking a vibrant city environment may use this data to identify the city with the highest number of homes sold or rented, aiding in decision-making about where to reside or invest. By providing a clear overview of property transactions in various categories, the Statistics Page becomes an instrumental tool for users to make informed decisions based on market trends and preferences. 5.2 Admin App 5.2.1 Dashboard Page Figure 39: Dashboard Page Figure 40: Dashboard Page 1 (Mobile) Figure 41: Dashboard Page 2 (Mobile) The Admin Application's Dashboard Page serves as a centralized hub for crucial information, providing the administrator with a comprehensive overview upon application access. The dashboard features key metrics that offer a snapshot of the application's performance and status: 1. General Application Information: - Total Properties: Displays the number of properties listed in the application. - Total Users: Indicates the overall user count within the application. - Properties Sold/Rented: Highlights the number of properties reported as sold or rented by owners. - Monthly Profit: Presents the application's financial performance on a monthly basis. 2. Latest Properties Information: - Recent Additions: Showcases basic details about the latest properties added to the application. 3. Property Type Statistics: - Percentage Breakdown: Provides statistics on the percentage distribution of each property type (houses, apartments, chalets, lands). - Quantity by Type: Specifies the number of properties for each type. This comprehensive dashboard equips the admin with real-time insights into the application's overall health, financial performance, and property distribution. It acts as a valuable tool for making informed decisions, monitoring trends, and ensuring the effective management of the application. 5.2.2 Users Page Figure 42: Users Page 1 Figure 43 : Users Page 2 Figure 44: Edit User Information Figure 45: Delete User Figure 46 : User Page Search Figure 47: User Page 1 (mobile) Figure 48: User Page 2 (mobile) User Page is designed with two distinct sections, each serving specific purposes to enhance user management within the application. 1. Statistics Section: - City-Based User Statistics: Presents insightful statistics highlighting the four cities with the highest user concentrations and the distribution of users within them. This provides an overview of the user landscape across different locations. 2. Table Section: - User Information Tables: Displays a comprehensive table featuring all users within the application along with their pertinent details. - Pagination for Navigation: Utilizes page number buttons at the bottom of the table, enabling seamless navigation between different sets of users. - Modification Button: Allows administrators to modify any user's information by clicking on the modification button, ensuring flexibility in user management as in Figure 44. - Deletion Button: Responsible for deleting a user and all associated information, including real estate listings, chats, and more. This button ensures efficient user removal, when necessary, as in Figure 45. - Search area: Responsible for searching for a specific user using his name. This ensures ease of searching for users, as in Figure 46. User Page, with its dual sections, provides administrators with both a statistical overview of user distribution and a detailed table for managing individual user profiles effectively. The modification and deletion buttons in the table section contribute to streamlined user administration, offering a comprehensive and user-friendly experience for application management. 5.2.3 Properties Page Figure 49: Properties Page 1 Figure 50: Properties Page 2 Figure 51: Edit Property Information Figure 52: Delete Property Figure 53:Search Property by City Figure 54:Search Property by Type Figure 55: Properties Page 2(mobile) Figure 56: Properties Page 1(mobile) Property Page is divided into two integral sections, offering distinct functionalities for efficient property management within the application. 1. Statistics Section: - Property Type Statistics: Provides comprehensive statistics detailing the number of each type of real estate (houses, apartments, chalets, lands) within the application. 2. Tables Section: - Property Information Tables: Displays a detailed table containing all real estate listings in the application, accompanied by relevant details. - Pagination for Navigation: Features page number buttons at the table's bottom, facilitating seamless navigation between different sets of properties. - Modification Button: Enables administrators to modify any property's information, ensuring flexibility in property management as in Figure 51. - Deletion Button: Responsible for deleting a property along This button streamlines the process of property removal, when necessary, as in Figure 52. - Search by City Name: Incorporates a search functionality enabling administrators to filter properties based on city names, facilitating targeted navigation as in Figure 53. - Search by Property Type: Allows for a refined search experience by enabling administrators to filter properties based on specific property types as in Figure 54. The dual sections of the Property Page provide administrators with both statistical insights and detailed property tables, offering a comprehensive and user-friendly approach to managing real estate listings within the application. The addition of search functionalities enhances precision in property searches, contributing to a more efficient and organized property management experience. 5.2.4 Statistics Page Statistics Page serves as a comprehensive tool, furnishing the administrator with a wealth of statistical insights to cultivate a thorough understanding of various facets within the application. Designed to offer detailed information, this page presents a diverse range of statistics that cover essential aspects of the application's dynamics. By leveraging these statistics, the administrator can gain a nuanced perspective on user behavior, property trends, and overall application performance. This comprehensive overview ensures that the admin is well-informed about the intricacies of the application, facilitating strategic decision-making and effective management. This page contains several statistics: - The distribution of real estate in cities Figure 57: Statistic 1 The initial statistic on the page focuses on the distribution of real estate across different cities. This crucial data provides a detailed breakdown of how properties are geographically dispersed within the application. By understanding the concentration of real estate in various cities, administrators can discern patterns, identify popular locations, and make informed decisions related to regional preferences. This statistic serves as a fundamental insight into the spatial dynamics of the application, enabling strategic planning and targeted interventions to enhance user experience and engagement. - The distribution of real estate in a particular city Figure 58: Statistic 2 The second statistic on the page delves into the specific distribution of real estate within a particular city. This focused data provides a detailed overview of the types and quantities of properties available in a selected city. Administrators can leverage this information to comprehend the real estate landscape in a more granular manner, facilitating targeted strategies for improving user engagement and addressing specific needs within that city. This statistic serves as a valuable tool for administrators to tailor their approach based on localized trends and demands, ensuring a more responsive and user-centric application experience. - The distribution of real estate (sold or rented) in cities Figure 59: Statistic 3 The third statistic on the page sheds light on the distribution of real estate transactions (sold or rented) across various cities. This critical data provides insights into the patterns of property transactions within different geographical locations. By understanding where real estate activities are most prominent, administrators can make informed decisions about resource allocation, marketing strategies, and user engagement initiatives. This statistic serves as a valuable indicator of the real-time dynamics of the application, empowering administrators to adapt strategies based on the transactional landscape in specific cities. - The distribution of real estate in a particular city Figure 60: Statistic 4 The fourth statistic on the page offers a detailed perspective on the distribution of real estate transactions (sold or rented) within a specific city. This focused data provides administrators with insights into the localized patterns of property transactions, allowing for a deeper understanding of the real estate market dynamics in that particular urban center. By analyzing transactional distribution within a specific city, administrators can tailor strategies, address market demands, and optimize user experiences based on the unique characteristics of that geographical area. This statistic serves as a valuable tool for refining and customizing approaches to meet the specific needs of users within a targeted city. - The distribution of Users in cities Figure 61: Statistic 5 The fifth statistic on the page explores the distribution of users across different cities within the application. This data provides administrators with a comprehensive view of user engagement and presence in various geographical locations. Understanding how users are distributed in cities is crucial for tailoring outreach efforts, optimizing user experiences, and developing targeted strategies to enhance user engagement and satisfaction. This statistic serves as a key indicator of the application's geographic reach and user demographics, guiding administrators in making informed decisions to foster a more inclusive and user-centric platform. Some Statistics from Admin Mobile App Figure 62: Statistics 1 (Mobile) Figure 63: Statistics 2 (Mobile) Figure 64: Statistics 3 (Mobile) Results and discussion The "Aqar" app is like your friendly guide in the world of real estate, making buying and selling properties a breeze. Imagine a place where you can effortlessly search for your dream home using specific preferences, thanks to its smart search and filtering features. The app goes the extra mile with a handy chat and messaging system, plus a helpful chatbot, making communication between buyers and sellers smooth and easy. What makes "Aqar" stand out is its personalized recommendation system. It's like having your own real estate advisor, suggesting properties tailored to your unique tastes. This personal touch adds a lot to user satisfaction, making decision-making a piece of cake. And don't forget the user account management system you can organize your favorite listings, and connect with real estate agents, giving you a truly personalized and enjoyable experience. The app also hooks up with Google Maps, so you always know where you're headed. Booking a property viewing becomes a breeze with the scheduling tools, making life simpler for both buyers and sellers. But it doesn't stop there "Aqar" is all about transparency. Users can share their thoughts through reviews, creating a community-driven feedback system. This helps build trust and ensures everyone is making informed decisions. And the app is designed to be user-friendly on different devices, complete with notifications, making it super convenient for everyone. In summary, the "Aqar" app is a thoughtful solution to the challenges of the real estate market. With its smart features, personalized touch, and easy-to-use design, it's on a mission to make real estate transactions simple, transparent, and accessible to everyone. 6 Conclusions In conclusion, the "Aqar" application represents a significant leap forward in simplifying and streamlining real estate transactions for both buyers and sellers. The project addresses a prevalent challenge in the real estate market by providing a comprehensive platform that consolidates available properties, including houses, apartments, land, and residential buildings. The application's user-friendly interface and robust functionality empower users to effortlessly search for, explore, and connect with property owners. With advanced search and filtering features, the app offers a tailored experience to users, ensuring that they find properties that align with their preferences. The proprietary recommendation system further enhances this personalized approach, making property suggestions based on individual tastes. The inclusion of a dynamic in-app chat and messaging system, supported by an automated chatbot, facilitates seamless communication between buyers and sellers. User account management features enable users to organize favorite listings, and engage in productive discussions with real estate agents. Integration with Google Maps enhances the user experience by providing valuable location information. Additionally, the application streamlines the property viewing process through booking and scheduling tools. The "Aqar" application actively fosters transparency and well-informed decision-making by encouraging users to submit reviews via comments which contribute to a more insightful and transparent real estate experience. The application prioritizes accessibility and convenience, having been meticulously optimized for different devices. This commitment underscores the project's dedication to revolutionizing real estate transactions, making them more efficient, transparent, and accessible to a diverse user base. In essence, the "Aqar" application redefines the way individuals engage in buying, selling, and renting properties.