1 An-Najah National University Faculty of Engineering and Information Technology Computer Engineering Department Software Graduation Project Farmly Presented By: Leen Walid Shaikh Ibrahim Ahd Samer Ghazal Supervisors: Dr. Aladdin Al-Masri & Eng. Muhannad Al-Jabi Submitted in partial fulfillment of the requirements for a bachelor's degree in Computer Engineering. June 2024 
 2 Contents ACKNOWLEDGEMENT ………………………………………………………………………………………………….…..… 3 DISCLAIMER …………………………………………………………………………………………………………….………. 4 ABSTRACT ………………………………………………………………………………………………………………….……. 5 CHAPTER 1: INTRODUCTION………………………………………………………………………………………….…….. 6 CHAPTER 2: CONSTRAINTS, STANDARDS, AND EARLIER COURSEWORK……………..………………….……….. 8 CHAPTER 3: LITERATURE REVIEW: ……………………….…………………..……………………………….………….. 9 CHAPTER 4: METHODOLOGY: …..………………………………………………………………………….………………. 11 Choosing The Idea..………………………………………………………………………………………….……………………. 11 Choosing The Architecture …………………………………………….………………………………………………………… 14 Programming Languages, frameworks, and other services ..………………………………….………………………………. 14 Database Design…………………………………………………………………………………………………………………… 15 Features…………………………………………………………………………………………….……………………………… 16 Tools Used ………………………………………………………………………………………………………………………… 17 Mobile Application…………………………………….………………………………………………………………………….. 18 Webite: Admin Dashboard……………….……..………………………………..………………………………………………. 29 CHAPTER 5: RESULTS AND DISCUSSION..………………………………………………………………………………… 44 CHAPTER 6: CONCLUSION AND FUTURE WORK……..………………………………………………………………… 45 REFERENCES……………………………………………………………………………………………………………………. 46 
 3 Aknowledgement As we reach the culmination of our academic journey, we find ourselves deeply indebted to those who have played a crucial role in our success. We extend our heartfelt appreciation to our esteemed supervisors, Dr. Aladdin Al-Masri and Dr. Muhannad Al-Jabi, whose unwavering commitment, time, and guidance have significantly enriched the development of our project. Their sage advice has been a beacon of insight throughout this endeavor. Additionally, we are immensely grateful to our families, friends, and everyone who has stood by us with steadfast support and encouragement. Their belief in our potential has been an invaluable source of motivation. This journey of growth and learning has been made all the more fulfilling by their presence in our lives. 
 4 Disclaimer This application was developed by Ahd Ghazal and Leen Shaikh Ibraheem from the Computer Engineering Department at An-Najah National University for educational purposes only. The Department of Computer Engineering at An-Najah National University does not endorse the opinions expressed herein, which are solely those of the authors. The content, features, and functionality presented in this application reflect our skills and knowledge at the time of completion. 
 5 Abstract Farmly is a mobile application designed to mainly solve the problem of the lack of experience in farming and inability to utilize available house gardening spaces, and the increasing prices of organic goods by encouraging people to plant their veggies, fruits, and herbs instead of buying them from the market. It supports and encourages home farming, and with its interactive interface and features, it offers a comprehensive database of information to assist users at every stage of their planting and gardening journey. The platform offers information about crops with planting guidelines, care instructions, and growth stages for various species including flowers, and herbs, all of that mapped to the user’s specific conditions like soil, weather, and location. Users can utilize their gardening space to successfully grow plants for personal use or to start a business, by selling plants and related products. In addition to the informative plant database, users can securely access the app for an overview of their garden's status. Real-time weather integration will be included to help users plan gardening activities effectively, plus the pest’s identification feature to ensure plant health. Community engagement is enabled through a forum where users can share knowledge and experiences. Farmly will also have a tool website for administrators to control everything on the platform, like user accounts, database information and community involvement. This tool will be crucial for keeping Farmly running smoothly and helping it grow. Through Farmly, we aim to promote sustainable agriculture, spread environmental consciousness, and build a vibrant community of home gardeners dedicated to nurturing green spaces and enhancing food and goods resources at the grassroots level. 
 6 Chapter 1: Introduction We are currently living in a fast-paced era where the whole world appears to be most likely overlooking the importance of agriculture and the need to increase green spaces. There is not enough awareness about how people can contribute to the environment and also save money by growing their own crops and plants in small areas at their homes. Many people desire to have their own green spaces, whether it's a spacious outdoor garden or just some pots on the balcony, but lack the knowledge of how to properly grow and maintain these spaces. We worked on our application to solve this problem by collecting and integrating a rich plant dataset, and building a community that allows individuals to share there own concerns and experiences. We also prepared a support system that can be managed by registering experts and agriculture engineers as admins to share important announcements and answer any commonly or privately asked questions 1.1. Problem This project is about making the journey of growing your plants and maintaining your garden's growth a fun, useful, and educational experience that will raise awareness about agriculture and the significance of organic produce, which may also be an additional source of income. Our goal is to provide you with comprehensive information about plants and farming, deliver easy-to-follow guidance on plant care, keep up with maintaining your plants' health, and support your small businesses with simple on-app advertising and a marketplace. We strive to empower you with expert advice, offer a diverse range of options according to your local weather and environment, and ensure that the entire experience, from selecting your plants to their harvest, is fun. More than just creating a platform, we aim to build a community where your love for greenery is nurtured and the benefits of plant ownership are celebrated, contributing to a more sustainable, enjoyable, and eco-friendly lifestyle. 1.2. Objectives 
 7 The Farmly project was built to have two roles: regular users who need guidance in home gardening and admins who are experts who are willing to provide the guidance needed. This application provides high privacy and security for both users and administrators by integrating user authentication and protecting their personal data. In addition to having an informative dataset that’s collected from many trusted resources, the application also provides a user-friendly searching and filtering process that offers easy access to any data. It also allows users to get access to their current weather data and their own gardens’ weather data based on their location and build digitalized versions of their gardens to help them with management and maintenance. Moreover, a community forum is included to encourage experience sharing, along with a private chatting feature that allows users to privately send messages to seek help from experts. An AI pest detection and plant identification feature was added to enhance the support for registered users in addition to experts' help. This feature works to improve the user experience by providing artificial intelligence technology to accurately and effectively detect the needs of plants and give helpful instructions on how to improve their health. This feature supports the uniqueness and effectiveness of this project and enhances the experience for plant enthusiasts with accurate, trusted guidance. Also, a notification and reminder system was added to notify the users whenever they get a message, posts' likes or replies, admin announcements, and alerts to water or prune plants based on the plants’ needs that are stored in the database. Finally, a marketplace was added to support the users’ small businesses by allowing them to publish and advertise any garden-related products with their contact information, which also provides an 1.3. Significance of this work This report is structured as follows: • Introduction: Provides an overview of the problem, objectives, and significance of the software project. • Constraints, Standards, and Technologies: Outlines the challenges faced, standards employed, and technologies used. • Literature Review: Discusses the scientific papers and researches that influenced us during the development process of this project. • Methodology: Explains the development approach and process in detail. • Results and Discussion: Presents the outcomes and key findings from the implementation. • Conclusion and Future Work: Summarizes the project's achievements and outlines future enhancements. 1.2. Organization of the report 
 8 Chapter 2: Constraints, Standards, and Technologies 1. Working With New Technologies: Developing the application and website from scratch for the front-end part, back-end part, database, and external APIs, and dealing with servers, and real-time features was very challenging due to operating in an unfamiliar domain and utilizing unfamiliar technologies. This constraint pushed us to the exploration of different approaches, resources, and solutions, which led us to discover solutions for any new obstacles throughout the development process, but getting accurate and helpful answers was challenging sometimes. 2. Data and Requirements Collection: In the process of gathering data and requirements for our project, we faced some challenges. One major challenge is ensuring we have access to accurate and trusted information about the different plant varieties we added to our dataset, especially since many websites and resources provide different information about the same plant type. Also, getting expert help was limited by the unavailability of such expertise. 3. AI Pest Detection and Plant Identification: Detect AI serves as a virtual plant identifier and pest detector, offering guidance on how to maintain the plant’s health when you upload a photo of the plant. However, its effectiveness relies on accurate image analysis and access to precise technical data about the plant's surroundings. While it sometimes provides a good analysis of the plant’s disease, its accuracy may be limited in cases of complex plant conditions. Also, users should be aware that the quality of detection depends on the clarity and resolution of the uploaded image. 4. Effective Time Management: The overall project’s success was mainly due to good time management. The project required many different types of effort, including data collecting, research, testing, development, requirement gathering, and planning. Time management was crucial to ensure smooth progress with a minimum amount of obstacles. The learning curve and time spent on tasks due to inexperience increased by time according to repetition in some requirements, and also going back to the same resources, which also enhanced the overall production speed of this project. 2.1. Constraints 2.2. Earlier course work We appreciate the rich experience we recieved from the Computer Engineering Department’s courses we took in the previous years, including Web, Database, Software Engineering, Advanced Software Engineering, Object-Oriented, and Critical Thinking. Going through these courses built a really strong knowledge of the main concepts and basic skills that were necessary to develop the project. Additionally, we had to expand our knowledge and move to more advanced approaches to learn how to use frameworks like Flutter and Laravel like YouTube videos, Udemy courses, and documentation to gain more experience in the web development field. 
 9 Chapter 3: Literature Review The role that home gardens in food security, increased production of food crops, improvement in the genetic diversity etc and the general well-being of people has been researched on extensively. A lot of papers have focused on the different values associated with home gardens to include nutritional and economic gains, environmental conservation and last but not the least the improvement of health among those with mental illness. The present literature review synthesizes the numerous findings from the previous researches and offers an extensive review of the various Multiple Roles of Home Gardens in the present world. The following section analyses several papers pertaining the home gardens and their roles as sources of family food, the conservation of biological diversity and the various preventive measures for healthy home gardens. Home gardens: a promising approach to enhance household food security and wellbeing This paper reviews the importance of home gardens, as they are considered an effective strategy to combat food insecurity, especially in developing countries. These gardens provide a continuous supply of nutritious and diverse foods, contribute to generating income, and provide many environmental benefits, such as preserving biodiversity. The paper also reviews experiences and studies from various regions, highlighting the economic, environmental, and social advantages. However, the difficulty of accessing resources poses a challenge, which underscores the need for more research to understand and improve home gardens. [1] Householders Attitude, Preferences, and Willingness to Have Home Garden at Time of Pandemics This paper examines the impact of the COVID-19 pandemic on homeowners’ attitudes towards having a home garden in the city of Al Ain, UAE. A study was conducted by publishing an online survey. The results revealed that participants with good levels of education and who own larger gardening areas are more likely to have home gardens, but difficulties in caring for gardens and problems with weeds reduce this possibility. The results also indicate that home gardens are very important, as they contribute to mental health and provide a source of fresh organic food, which highlights the importance of promoting home gardening, whether during or after epidemics. [2] MULTIPURPOSE FUNCTIONS OF HOME GARDENS FOR FAMILY SUBSISTENCE This paper examines the floral composition and management practices of 24 home gardens in central Mexico, highlighting the multiple roles of home gardens, with a particular focus on food and medicinal plants, which are the largest contributors to household needs. According to data, home gardens plants can be used for decoration, food and medicine. Although it is common practice to grow ornamental plants at homes, the survey highlights that plants are key sources of food and drug substitutes at home. The results also indicate that the basic importance of agricultural production is self-sufficiency. However, a quarter of families sell surplus crops. The research finally confirms the importance of home gardens in providing food, achieving economic gains, and family well-being. [3] 
 10 Chapter 3: Literature Review The Role of Home Gardens in Promoting Biodiversity and Food Security The content of this paper is about how home gardens can help preserve genetic diversity necessary for developing crops that will be able to cope with climate change. The article also highlights the versatility of home gardens as sources of food, medicine, environmental sustainability and repositories for genetic material which may have been lost through replacement by modern high yielding varieties. Finally, it is important to note that they need to be supported by better management practices and policies in order to achieve biodiversity conservation and improve food security.[4] Disease Prevention in Home Vegetable Gardens This paper discusses the importance of maintaining a garden in order to prevent plant diseases, as many methods have been explained to prevent plant diseases, such as good planting practices, weed control, removing diseased plants, and others. Cleaning tools and utilizing fungicides are necessary. The relevance of proper gardening hygiene, non-chemical control measures and cultural practices in biodiversity conservation is emphasized.[5] 
 11 Chapter 4: Methodology 4.1. Choosing the idea Yes No Saving money on fresh plants products Growing organic products Enjoyable hobby Decorating the home Reducing household expenses The idea for our software project, Farmly, was chosen based on several factors. We identified the need for a mobile application that guides individuals in home gardening, and help them with the overall plant-caring process. We wanted to encourage people to use every available place for plants, and help them to get benefits and maintain these plants for longest possible time. We made a small survey on 131 people from Palestine using a short form to ask them some questions about home gardening, and these were the results: 1. Do you have a home garden or any plants in your home? 2. If you answered yes to the first question, what is the approximate area of the planted space in your home (in m )? - Ansewers where between 1 - 3000 m 2 2 3. What are the main reasons that make you interested in home gardening? (Select all that apply) Others 
 12 4. Do you have difficulty finding reliable information on how to grow different types of plants? Yes No 4.1. Choosing the idea 5. If you answered yes to the previous question, what difficulties do you usually face in finding information about home gardening? (Select all that apply) Inaccurate or conflicting information Difficulty finding information from experts Information is complex or hard to understand Difficulty finding information on specific plants Finding it hard to apply instructions in practice 6. Do you have previous experience in home gardening? Yes No • The average years pf experience where between 5-10 years. Others 
 13 4.1. Choosing the idea Pests and plant diseases Lack of knowledge about plant care Difficulty providing the right conditions for growth Limited time for garden maintenance Forgetting to care for the plants due to being busy 8. Do you have enough information on how to deal with your plants when they are affected by pests? Yes Maybe, but I don't have enough experience with all plants 7. What are the biggest challenges you are currently facing in your home garden? (Select all that apply) 9. Would you like to use a mobile app that helps you take care of your home garden and connect with agricultural experts? Yes No No, and sometimes I wait until the plant wilts and dies, then I remove it and plant another Maybe Others 
 14 4.2. Choosing the Architecture 4.2.1 Backend architecture In the backend development of our software project, we have implemented the Model-View- Controller (MVC) architecture. This approach has helped us create a well-organized and modular structure for our backend codebase. The model component is responsible for encapsulating the data and business logic, ensuring proper data handling and manipulation. 4.2.2 Frontend architecture In the front-end development of our software project, we have implemented a component-based architecture. This approach involves breaking down the user interface into smaller, self-contained components. Each component contains its own logic, styles, and functionality, which makes it easier to develop, maintain, and test. These components can be reused across different parts of the application, thereby improving efficiency and maintaining design consistency. 4.3 Programming Languages, frameworks, and other services In the implementation of both the mobile application and the website for this project, Flutter was employed as the frontend framework. Flutter is an open source framework developed and supported by Google, it’s commonly used by developers to build an application’s user interface (UI) for multiple platforms with a single codebase, and also for websites’ frontend development. Laravel was our choice for backend development because it's a strong framework that comes with built-in tools for handling web and mobile applications' features for routing, authentication, and database management. Laravel's clear syntax and extensive documentation make development faster and improve the quality of the work. Plus, there's a large community of Laravel users who share resources and offer support. We used AWS to deploy our project to a live server, EC2 for servers and RDS for databases. EC2 offers resizable compute capacity in the cloud, allowing easy scaling of applications based on demand. RDS provides easy database management by handling routine tasks like backups and scaling. To manage our project's database, MySQL was the best option because it's open-source, reliable, widely used, and well-documented. MySQL offers high performance due to the way it's structured and works with many frameworks, making it a good choice for handling data and complex queries in applications. Additionally, Postman is employed for API development and testing, allowing seamless communication with the MySQL database. This combination of MySQL and Postman enhanced the efficiency and maintainablitiy of our database management system. For our real-time features like notifications and reminders, Firebase was our choice because iy offers services including authentication, real-time communication, cloud storage, and notifications. It simplifies the development process with available SDKs, making it ideal for our mobile application. 
 15 4.4. Database Design The design and structure of a database system based on the provided schema. The schema consists of several tables and data types representing various entities and their relationships. The proposed database will efficiently store and manage data related to users, plants, gardens, posts, replies, likes, announcements, conversations, reminders, notifications, and products. 
 16 4.5 Features User Authentication and Authorization: Users can register and log in to the application securely. Authentication is handled securely using Laravel’s built-in authentication system, and verifying users by sending OTP to their emails using SMTP. User and Admin Profile: This allows all the users and administrators to manage their profiles’ personal data, and privacy and security settings. Homepage: This provides an overall summary for the users whenever they open the applications to check their data, weather, new messages, notifications and announcements, and their garden plants’ needs and reminders. Personal Garden Management System: Users can create and manage their gardens within the app, they can add, update, and remove both gardens and plants from their gardens, as well as monitor plant health and growth using the data from the collected dataset. Plant Dataset: The application includes an extensive plant database with information on various plant species. Plant profiles include planting guidelines, maintenance tips, and ideal growing conditions. Real-time Weather Integration: Integration with a weather API to provide users with real-time weather information relevant to their location. Disease Identification and Plant Feature: This feature was developed using an external API called Plant.id to identify plant species and diagnose plant diseases based on visual symptoms, which also offers recommendations for the users to treat and prevent these diseases. Community Forum: A forum where users can engage with each other, and share knowledge, experiences, and tips related to gardening using posts, and interact with likes and replies. Chatting System: This feature helped users to seek some additional, private help from administrators and experts who manage the application. Marketplace and Ads: With this feature, users were able to publish any products they wanted to sell with their contact info, making it easier for customers to reach them out and find products, and second-hand products easily with the best prices. Also, simple Ads were added to the application to help others grow their businesses and also help the app grow itself. Task Management and Progress Tracking: Enable users to manage tasks related to their garden, including watering and pruning. This helps users to track the progress of their plants over time, know about the growth stages, and any issues encountered. Notification and Reminders System: This system was implemented to notify users about any new messages, post interactions, and announcements, and alert them about their plants’ watering and pruning needs. Admin Dashboard: This represents a website that enables administrators to manage the overall application data, manage the plants’ dataset, share announcements, manage the community forum, receive any possible reports about inappropriate posts, publish posts and adds, chat with users, and see analytics and Insights about the application. 
 17 4.6 Tools Used Visual Studio Code: it was used as primary Integrated Development Environment (IDE), for coding, editing, and debugging purposes. Android Studio: it was utilized as an emulator to simulate and test the mobile application across a range of virtual environments. GitHub: a Collaboration and version control were facilitated through GitHub, which allowed work organization for us and efficient tracking of code modifications. Also, it was essential for deploying the continuous changes we were making on our server-side to our Amazon server instance and database. Firebase: for features like real-time reminders and notifications. Pusher: Which is a simple, scalable and reliable hosted realtime API that we used for chatting. Postman: it was used for testing different APIs, to ensure the reliability of our application, and make different HTTP request and response. Figma: Which is a platform the UI designers share their projects on, which was really useful to influence us on the design of the app. MySQLWorkbench: We used this app to manage and fetch our database, perform queries, and connect to our database to test the functionalities during the development process. External APIs: • Open Weather Map API: For weather data fetching. • Plant.id API: For plants and disease identification. • IP Geolocation: for reaching the location of the users and their gardens. 
 18 4.7 Mobile Application: Login Login Page Wrong Credentials Forgot password -> Reset Password First, the user can log in to the application by entering his email and password. If he forgets his password, he can click on “Forgot your password” after making sure that he entered the correct email. Thus, an OTP code will be sent to his email and he will be transferred to the “Reset Your Password” page. He enters the new password and the OTP code. Which he connected and thus the password is reset. 
 19 4.7 Mobile Application: Registeration Sign Up Page OTP Insertion User verified If he does not have an account, he clicks on Sign Up and goes to the registration page. He enters his data and the password, which must be a combination of letters and numbers and greater than eight digits. Then he clicks on Send OTP, and the OTP code is sent to his email. When you enter it, make sure it is correct. If it is correct, it takes him back to the login page. 
 20 4.7 Mobile Application: Homepage Morning homepage Night homepage Ads and announements sliders Water Reminders (Reminders slider) Prune Reminders (Reminders slider) Footer When you log in, on the home page general information about weather, time and location is displayed, then if there are reminders for pruning or watering they are displayed in a slider, then a Top Picks Plants slider is displayed, then a slider for the ad that the administrators have posted, and some ads , video tips, and finally about us and contact us. 
 21 4.7 Mobile Application: Plants page All Plants Page One Plant Page Top Picks Page Search Plants by Name Favorite List Page Filter Window On the Plants page, users can view all available plants and top picks. They can add plants to their Favorites Page, review their gardens to choose where to add the plant, and access comprehensive plant care information. Users can also search for plants by name or use filters to find plants based on category, season, water and light needs, soil type, spacing, and temperature. They can also see the number of unread messages from the admin. 
 22 4.7 Mobile Application: Filtering and User Profile Filter window Expanded Filter chosen Filter Applied Side bar expanded User Profile In-App Change Password In the side bar, My Profile, My Gardens, Posts, Plant Disease, Privacy Settings and Log Out are displayed. On My Profile page, the user can see his information and modify his personal photo and data. On Privacy Settings page, the user can change the password for his account by entering his old password and entering the new password. 
 23 4.7 Mobile Application: AI Plant and Disease Identification Disease detection guide Disease detection page Detecting plant from camera Plant type identificattion Upload Image from device - Disease Identification Disease Treatment and Prevention On the diseases page, when you click on the photo icon, the phone’s camera opens and the user can either take or choose a photo for plant, then the results of the disease or pest and the similarity percentages appear, a simple explanation, two similar photos, the treatment and the prevention methods.On the plant identification page, the user can also take a photo of the plant or select it, and the plant name and similarity percentage will appear. 
 24 4.7 Mobile Application: Chat Message Sent Message Deleted Deletion Confirming Message Editing Message Edited Notifications List The user can talk to experts when he clicks on the chat icon in the home page. When he clicks once on the message, the time at which it was sent appears. When he presses for a long time, the user can either edit or delete the message. When you click on the notification icon on the home screen, notifications of likes and comments are displayed, and when you click on the notification, the post that was interacted with is displayed. 
 25 4.7 Mobile Application: Community Forum Community Page Sorted by Most Liked Post Replies Post Saving Post Reporting Post Editing In Community Page, the user can see the published posts and interact with them with a like or a comment. He can search for a word in the posts, display the posts and arrange them either from the most recent or from the most likes. He can make a report and save the post. Of course, he can add or delete a post 
 26 4.7 Mobile Application: Gardens Page Gardens Add New Garden Add garden Adding plants to garden from favorite list for faster approachEdit Garden Add multiple plants On the My Gardens page, the user sees his existing gardens and can modify, delete, or add a garden. You can also click on the view icon for a broader view of the garden. When you click on the display icon, the general garden information is displayed, the temperature in this garden, and the number of plants that need watering or pruning. The plants in the garden are displayed. 
 27 Regular Garden Page Watering confirmation 4.7 Mobile Application: Garden Plants Plant needs pruningGarden Plants Needs Pruning confirmation Add plant to garden from plants page When he clicks on the add icon, he can add a plant to the garden either through the favorites list or from the plants page, and chooses the number of plants he wants to add. When clicking on the plant on the wheel, the user sees the number of plants of this type that were planted on the same day and can see the need for pruning or watering. If the icon for irrigation or pruning is red, he can choose the number of plants that he will prune or water. 
 28 Products Page My product page (to edit, delete, and mark as sold out) 4.7 Mobile Application: Marketplace Single Product PageAdd New Product My products page Delete Product When clicking on the store icon in the home screen, the available products are displayed, their name, price, and whether they are sold out or not. When clicking on the product, the user sees more information such as the description, the owner of this product, and how to contact him. The user can add, delete or modify a product, and he can also display either all products, or his own products 
 29 Posts Notification 4.7 Mobile Application: Notifications and Reminders Reminders Notifications Announcements Notification When the plant needs pruning or watering, notifications are sent to the user to alert him, and these reminders are displayed in the home page. Also. When the user gets a message, reply or like on a post, and a new announcement from an admin, he gets notifications in these cases too. 
 30 4.8 Website: Admin Dashboard Login Reset Password The admin enters his email and password. If he forgets the password, he can click on “Forgot Your Password.” He will be taken to the Reset Password page and an email is sent containing the OTP code. The admin enters the new password and the code he received to reset the password. 
 31 4.8 Website: Admin Dashboard Reset Password 1 Reset Password 2 
 32 4.8 Website: Admin Dashboard OTP Email OTP verification 
 33 4.8 Website: Admin Dashboard Password Reset success Homepage - In the Home Page, the admin can see application statistics, garden locations, user websites, Community Statistics, Plants Statistics, total number of plants, total number of gardens, and total number of users. 
 34 4.8 Website: Admin Dashboard My Profile - In My Profile Page, the admin reviews his information and can modify it. He can also change his password by entering the old password first, then the new one. 
 35 4.8 Website: Admin Dashboard Users Posts Page Add Post by Admin On the posts page, the admin reviews all posts, admins’ posts, and posts on which a report has been made. He can also delete posts, add a post, and search for a specific word in the post. 
 36 4.8 Website: Admin Dashboard Post Added Admin’s Posts 
 37 4.8 Website: Admin Dashboard Reported Posts Announcements’ Page 
 38 4.8 Website: Admin Dashboard Delete Announcement Edit Announcements - On the Announcements page, the admin sees the existing announcements and can modify, add, or delete an announcement. Whenever tha admin adds an announcement, all users will get notified about it. 
 39 4.8 Website: Admin Dashboard Add Announcement Plants’ Page 
 40 4.8 Website: Admin Dashboard Add New Plant Edit Plant 
 41 4.8 Website: Admin Dashboard Search Plants By Name Plant details - In Plants Page, the admin can view existing plants, search for a plant, edit or delete a plant, and view plant information. 
 42 4.8 Website: Admin Dashboard Users Page Gardens Page - In Users Page, he can see all users and admins and see their information, and he can also delete a user. - On the gardens page, the admin sees the basic information about the gardens and the names of their owners. 
 43 4.8 Website: Admin Dashboard Chats One Chat Page - On the Chats page, the user sees the incoming conversations, and when he clicks on the conversation, the messages are displayed. The user can send, delete or edit a message. 
 44 4.8 Website: Admin Dashboard Edit Message Delete Message Message Options 
 45 Chapter 5: Results and Discussion The functionality of the Farmly application was thoroughly tested to ensure that all included features were working as intended. The results showed that the application successfully provided guidance to gardening enthesitis such as plant identification, organization and maintainance, which emphasized the education and conciousness of users about plant diseases, enabling them to identify the health status of their plants and address potential issues. Additionally, the application provided personalized help by experts and administrators to the users, along with the public community forum that allows thm to share their experiences and interests. Our project resulted into achieving a more eco-friendly and healthier lifestyle for users. Throughout the development process, we encountered various challenges, including the lack of experience in gardening within the team. However, through collaboration with experienced advisors and doing a lot of research, we were able to bridge the gap and ensure the application's is working as efficient as it’s suppposed to be. 
 46 Chapter 6: Conclusion and Future work Farmly has effectively addressed common challenges encountered by home gardeners, offering a comprehensive platform to assist users throughout their gardening journey, advocating for sustainable agriculture, and creating a collaborative community of home gardeners. Potential future enhancements for Farmly include: 1. Enhanced AI and Machine Learning capabilities to improve pest detection and plant identification, and also plant recommmendation system based on user interaction. 2. Expanded plant database with more species and detailed information. 3. Advanced community features such as gardening contests, gamifications and interactive forums. 4. Integration with IoT gardening devices for real-time data and automation. 5. Localization and language support for a broader audience. 6. Fully integrate online payments and inventory management into the existing beta version e-commerce feature. Overall, Farmly has a strong foundation and the potential to become an indispensable tool for home gardeners worldwide. 47 References [1] D. H. Galhena, R. Freed, and K. M. Maredia, "Home gardens: a promising approach to enhance household food security and wellbeing," Agriculture & Food Security, vol. 2, no. 8, 2013. [2] A. Basarir, N. M. N. Al Mansouri, and Z. F. R. Ahmed, "Householders Attitude, Preferences, and Willingness to Have Home Garden at Time of Pandemics," Horticulturae, vol. 8, no. 56, 2022. [3] A. Ortiz-Sánchez, C. Monroy-Ortiz, A. Romero-Manzanares, M. Luna-Cavazos, and P. Castillo- España, "Multipurpose Functions of Home Gardens for Family Subsistence," Botanical Sciences, vol. 93, no. 4, pp. 791-806, 2015. DOI: 10.17129/botsci.224 [4] H. Korpelainen, "The Role of Home Gardens in Promoting Biodiversity and Food Security," Plants, vol. 12, no. 2473, 2023. DOI: 10.3390/plants12132473. [5] P. Donald and L. Jett, "Disease Prevention in Home Vegetable Gardens," MU Extension, University of Missouri, 2000. Educational Resources: - https://laravel.com/docs/9.x/readme - https://docs.flutter.dev/ - https://pusher.com/docs/ - https://firebase.google.com/docs/flutter/setup?platform=ios - https://medium.com/backenders-club/integrating-firebase-with-laravel-a-step-by-step- guide-5d6ac9bdba7 Plants Data Sources: - https://www.lushflowerco.com.au/philodendron/ - https://greg.app/spider-plant-flowers/ - https://www.bhg.com/gardening/flowers/roses/ultimate-rose-care-guide/ - https://www.livelyroot.com/products/fiddle-leaf-fig?variant=39390058741842 - https://www.gardenia.net/plant/senecio-rowleyanus - https://www.thesill.com/search?q=Calathea - https://www.thespruce.com/elephant-ear-plants-2132884 Postman APIs Documentation: - https://documenter.getpostman.com/view/33668289/2sA3dsnZmQ Github Repository: - https://github.com/ahdghazal/farmly https://laravel.com/docs/9.x/readme https://docs.flutter.dev/ https://pusher.com/docs/ https://firebase.google.com/docs/flutter/setup?platform=ios https://medium.com/backenders-club/integrating-firebase-with-laravel-a-step-by-step-guide-5d6ac9bdba7 https://medium.com/backenders-club/integrating-firebase-with-laravel-a-step-by-step-guide-5d6ac9bdba7 https://www.lushflowerco.com.au/philodendron/ https://greg.app/spider-plant-flowers/ https://www.bhg.com/gardening/flowers/roses/ultimate-rose-care-guide/ https://www.livelyroot.com/products/fiddle-leaf-fig?variant=39390058741842 https://www.gardenia.net/plant/senecio-rowleyanus https://www.thesill.com/search?q=Calathea https://www.thespruce.com/elephant-ear-plants-2132884 https://documenter.getpostman.com/view/33668289/2sA3dsnZmQ https://github.com/ahdghazal/farmly