An Najah National University Faculty of Engineering & Technology Computer Engineering Department Software Graduation Project Prepared By: Mujahid Yahia and Mays Ismael Supervised By: Dr. Manar Qamhieh Presented in partial fulfillment of the requirements for a Bachelor’s degree in Computer Engineering June, 2024 Acknowledgment First, last, and always, thanks and gratitude to Allah, had it not been for his blessing that accompanied us in every step we took, we would not have completed this project successfully. Our dear parents and our beautiful families, thank you for all the support that always raised our spirits, and for the beautiful words that have always been a wall on which to lean and strengthen us. Our great supervisor, Dr. Manar Qamhieh, thanks for the advice that was always in the right place, and thanks for the enrichment, comments, and constructive criticism that contributed to increasing the project’s features. All thanks to the Computer Engineering Department at An-Najah National University, and to the friends who accompanied us on this journey. Thanks to our dear Palestine, which was and is still suffering. I hope that we will celebrate our real success in liberating it. Last but not least, thanks to everyone who had a hand in providing any kind of help, it means a lot to us. I Table of Contents Acknowledgment I Table of Contents II List of Figures IV Abstract 1 1 Introduction 2 1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.4 Importance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Literature Review 4 3 Methodology 5 3.1 Tools and Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.1.1 Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.1.2 Frameworks and Libraries . . . . . . . . . . . . . . . . . . . . . . . 5 3.1.3 Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.2 Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.2.1 Users Tabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.2.2 Books Tabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.2.3 Posts Tabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.2.4 Room Tabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.3 System Features Implementation . . . . . . . . . . . . . . . . . . . . . . . 8 3.3.1 Mobile Application . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.3.2 Web Application: . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 II 4 Results and Discussion 42 5 Conclusion and Recommendation 43 5.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 III List of Figures 3.1 User Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.2 Book Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.3 Posts Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.4 Room Tabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.5 Welcome Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.6 Log In page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.7 Two sign up pages displayed side by side . . . . . . . . . . . . . . . . . . . 11 3.8 Select location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.9 Home page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.10 Upload an image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.11 Comments page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.12 Book page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.13 Search for a book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.14 Search for a user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.15 Book details page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.16 Request The Book Boxs displayed side by side . . . . . . . . . . . . . . . . 18 3.17 Call Owner option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.18 Chat with the Owner option . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.19 PDF Book Reading Feature . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.20 Favorite Books Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.21 Chat page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.22 Chat with user Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.23 Menu Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.24 Profile Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.25 My Book page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.26 Add New Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.27 Add new book of type PDF . . . . . . . . . . . . . . . . . . . . . . . . . . 27 IV 3.28 Add new book of type Physic . . . . . . . . . . . . . . . . . . . . . . . . . 28 3.29 My Book Requests Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.30 My Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.31 Continue Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.32 Discussion Room . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.33 Zoom Meeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.34 User Profile Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.35 Log In Page in web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 3.36 Sign Up Page in web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.37 Select location in web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.38 Home page in web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.39 Upload an image in web . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.40 Book page in web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.41 Favorite books page in web . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.42 Chat page in web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 V Abstract ReadShare Society is a vital project designed to create a dynamic platform where book enthusiasts can connect, exchange, and engage in meaningful discussions about literature. In an era dominated by digital media, fostering a community that promotes book sharing and appreciation is crucial for preserving the culture of reading and intellectual discourse. Key features of the platform include comprehensive user profiles, seamless book exchange functionalities, and robust community engagement tools such as chat, posts, and reviews. Additionally, users can sell their unwanted physical books and read books in PDF format, enhancing the platform’s utility and accessibility. The primary objectives are to: • Create a vibrant and inclusive platform for book lovers to connect and exchange books. • Facilitating easy access to a wide range of literature in both physical and electronic formats. • Promoting community participation and discussion. • Promoting a culture of reading through recommendations. • Providing a seamless user experience through intuitive design and functionality. The development process involves initial research and planning to understand user needs and market dynamics, followed by the design and development of user interfaces and backend systems. Rigorous testing and iteration are conducted to ensure functionality and usability, incorporating continuous feedback from beta testing phases. Deployment and ongoing maintenance are essential for sustaining a high-quality user experience. While there are similar applications available, ReadShare Society distinguishes itself through its comprehensive feature set, including personalized recommendations, com- munity engagement tools tailored to the Arab Islamic environment, and the ability to sell physical books and read books in PDF format. This unique combination of features and emphasis on community-building sets ReadShare Society apart from other book-sharing platforms. 1 Chapter 1 Introduction 1.1 Background In today’s digital age, where social media and streaming services dominate leisure time, the culture of reading books is facing significant challenges. Despite the wealth of in- formation and entertainment available online, the traditional experience of reading and exchanging books remains invaluable. However, finding like-minded individuals to discuss and share books with can be difficult, especially in regions where digital solutions for book enthusiasts are limited. 1.2 Problem Statement In today’s digital landscape, book enthusiasts, particularly within the Arab-Muslim com- munity, face significant challenges in finding dedicated platforms that foster robust com- munity engagement and support both physical and digital book exchanges. Existing solutions often lack personalized content and fail to cater to cultural preferences, limiting users’ ability to engage meaningfully in discussions and share their reading experiences. Moreover, the accessibility of diverse literature in formats like PDF remains inadequate, further hindering the exploration and exchange of books. 1.3 Objectives ReadShare aims to address a number of significant issues that book lovers, especially those in the Arab Islamic community, confront. The website seeks to establish a welcoming space where people who are enthusiastic about reading can interact, trade books, and have thought-provoking conversations. ReadShare aims to remove current obstacles to book sharing and reading by improving accessibility to a wide variety of books in both physical and digital media. Its primary goal is to promote community involvement by providing users with strong chat, posting, and review capabilities that enable meaningful interactions. Additionally, by providing rewards and recommendations based on cultural quirks and personal preferences, the site hopes to foster a thriving reading culture. With an emphasis on user-friendliness, ReadShare is dedicated to creating an interface that is simple to use and guarantees a smooth experience for every user. With these 2 projects, ReadShare hopes to improve and preserve the reading culture while also making it more approachable and interesting for those both inside and outside of the Arab Islamic community. 1.4 Importance Our project, ReadShare, holds significant value in facilitating book exchanges and fos- tering stimulating dialogues within the Arab-Muslim community. By providing curated information that aligns with users’ interests and cultural backgrounds, ReadShare pro- motes a culture of reading through personalized recommendations and rewards. Encour- aging both online and offline book exchanges enhances accessibility to a diverse range of books, encouraging readers to explore and discover new literature. This approach not only enriches individual reading experiences but also contributes to the broader goal of cultivating a thriving reading culture. 3 Chapter 2 Literature Review Book-lovers’ social networking sites, like LibraryThing and Goodreads, demonstrate how digital communities can improve reading by fostering conversation and social interaction. Nevertheless, these platforms frequently lack elements designed for certain populations’ cultural contexts, such as the Arab-Muslim community. [6] [5] While digital libraries like Project Gutenberg offer access to electronic literature, book exchange sites like BookMooch and PaperBackSwap enable the trading of physical books [3] [7]. These platforms are useful, but they usually lack culturally relevant content or community participation tools. Studies show that active community participation, facilitated by tools like chat rooms and forums, improves user happiness and engagement [2][4]. Personalized and culturally ap- propriate content is necessary, as reading preferences among Arab-Muslims are impacted by cultural and religious values [1]. Current platforms sometimes fall short when it comes to fusing community interaction with culturally-specific digital and physical book exchanges. In order to close this gap, ReadShare has developed a thorough, culturally aware platform that facilitates both kinds of book exchanges and encourages a thriving reading community. 4 Chapter 3 Methodology This chapter describes our platform’s development process, emphasizing the languages and frameworks that were used along with the particular techniques that were employed to create the website and mobile application. 3.1 Tools and Technologies 3.1.1 Languages • JavaScript: Used for back-end and front-end development, providing consistent pro- gramming throughout the platform. • Dart: Used in conjunction with Flutter to create the mobile application, making use of Flutter’s cross-platform development features. 3.1.2 Frameworks and Libraries • Node.js: Selected as the back-end server to provide server-side JavaScript scripting, guaranteeing effective management of requests and data. • Express.js: Developed as a Node.js web application framework, it makes it easier to create reliable APIs that drive the features of our platform. • Flutter: Developed as an open-source UI software development kit, it makes it pos- sible to create mobile applications that are both aesthetically pleasing and effective. 3.1.3 Development Tools • Visual Studio Code: Because of its vast plugin ecosystem and developer-friendly features, it has been chosen as the main code editor. • Git: Used as the version control system to facilitate collaborative development and manage changes to the source code. • Firebase: Integrated into our project to take use of its cloud storage and real-time database features, guaranteeing safe and efficient data storage. 5 • Postman: Used as an API testing instrument to verify and troubleshoot our back- end services, guaranteeing reliable API operation. 3.2 Database MongoDB was selected due to its scalability and capacity to handle complicated data structures. It effectively handles a variety of data formats, satisfying the ever-changing requirements of ReadShare’s user interactions. The integration of Firebase improved chat functionality and image storage while adding cloud storage and real-time database functions. By ensuring reliable data management and quick user interactions, MongoDB and Firebase work together to improve the ReadShare user experience. Our database includes three primary tables: 3.2.1 Users Tabel Stores user information such as user name, email address, password, date of birth, gender, mobile phone number, location, books, books he liked, and followed users. Figure 3.1: User Table 6 3.2.2 Books Tabel It contains details about the books available on the platform, including titles, authors, Types (physical or digital), book price, cover page, book owner, reviews, rating, requests for the book, likes, and status. This table facilitates the process of exchanging and indexing books. Figure 3.2: Book Table 3.2.3 Posts Tabel Records posts made by users, including likes, comments, photo posts, description, and creation date. Figure 3.3: Posts Table 7 3.2.4 Room Tabel Records user discussion room information, including who created it, members, zoom link, topic, and date created. Figure 3.4: Room Tabel 3.3 System Features Implementation 3.3.1 Mobile Application This section explains the development of the mobile platform and key features, showing screenshots of how everything works. Welcome page: 8 Figure 3.5: Welcome Page 9 Log In page: This screen enables users already registered in the application to enter their data (email and password) to access their accounts. Figure 3.6: Log In page 10 Sign up page: On choosing the “Sign up ” option, users are directed to an intuitive interface where they can register with basic information such as username, email, password, password confirmation, date of birth, and additional data as shown in Figure 3.6. The page relies on Firebase authentication and to ensure seamless security continuity, our user data is encrypted. (a) Sign up page (b) Second Sign up page Figure 3.7: Two sign up pages displayed side by side 11 A unique feature of the registration page is the availability of location information, as this information is captured through an interactive map integrated into the application as shown in Figure 3.7. Users can pinpoint their exact location, which helps improve user experience in collaboration with geo-tailored services. (a) Select Location In sign up page (b) After Select Location Figure 3.8: Select location 12 Home page: The home page in the mobile app is the main hub where users can easily create posts and upload photos. The page also contains a section that displays all the posts made by users who are your friends or not, allowing you to comment on and like them. Figure 3.9: Home page 13 You can publish text only, an image only, or text and an image together. Figure 3.10: Upload an image Figure 3.11: Comments page Book page: On the book page, users can explore a variety of books available on the platform. The book page includes dedicated tabs that categorize books according to their format – paper or PDF. This allows users to easily switch between different types of books based on their reading preferences. 14 Figure 3.12: Book page 15 Search feature: The search feature is one of the essential features of the ReadShare application, as it allows users to quickly and easily find books, posts, and other users on the platform. Figure 3.13: Search for a book Figure 3.14: Search for a user Book details page: When you click on the book image on the books page, the details of the book are displayed, including the title, author, genre, owner, and publication date. This interface allows users to view book covers, rate the book, and add a review. You can also see other people’s ratings and reviews about the book. When you click on the owner’s name, you will be taken to the owner’s profile page 16 Figure 3.15: Book details page Request Book Feature: For physical books, the book page includes a "Request The Book" button prominently displayed on the cover image. When a user clicks this button, a book request box appears, providing essential details such as the price of the book and the owner’s location on the map. Users can then proceed to confirm their order by selecting one of three options: 17 (a) Request The Book (b) Complete The Request Figure 3.16: Request The Book Boxs displayed side by side 18 1. Call Owner: This option directs the user to their phone’s dialer with the owner’s phone number displayed, allowing them to make a call directly. Figure 3.17: Call Owner option 19 2. Confirm and Chat with the Owner: This option sends a predefined message to the owner within the app, indicating the user’s interest in requesting the book. Figure 3.18: Chat with the Owner option 3. Confirm the Order Without Contacting the Owner: This option sends the request electronically to the owner, who then has the right to accept or reject the request. All requests made by the user will appear in the "My Requests" page within the app, enabling the user. 20 PDF Book Reading Feature: For PDF books, instead of the “Request Book” button, there is a “Read Book” button, which enables users to read the book electronically within the application. The page that the user accesses is saved so that he can continue reading later. The read books are also added to the “Continue Reading” page to enable the user to refer to them whenever he wants. Figure 3.19: PDF Book Reading Feature 21 Book preference feature: The book cover has a “Save” button that enables users to save the book on the “Favorite books” page, whether the book is in physical or PDF format. This feature allows users to save books they want to read later or keep them in their personal library within the app. Favorite books page: The Favorite Books page allows users to view all the books they have saved, whether they are paper books or in PDF format. Books are displayed in thumbnail form with basic details such as title and author, making it easier for users to quickly identify books. Figure 3.20: Favorite Books Page 22 Chat Page: The chat page is an important part of the user experience in the ReadShare app, as it provides a way for users to communicate and interact. This page allows users to chat with each other, whether it’s to discuss books, arrange a book exchange, or interact in general. The Chat page displays a list of all the user’s current conversations. Each conversation is clearly displayed with the other user’s name and photo. Users can easily start a new conversation with any other user on the platform. By search- ing for users by their name and start chatting with them with one click. Figure 3.21: Chat page Figure 3.22: Chat with user Page 23 Menu Page: The menu page consists of a side menu containing shortcuts to the main application in the application. Figure 3.23: Menu Page 24 Abbreviations: • Profile Page: Move him to his profile page. The profile picture can be changed. It also displays the posts he published, their number, the number of people he follows, and the number of people who follow him Figure 3.24: Profile Page • My Books: Takes the user to his own books page so he can view his own books and add new books. When you click on Add a Book, a box appears to request basic information, such as the cover image, title, description, author, and the type of book, whether paper or PDF. In the case of choosing a PDF, a link to the PDF is required, but in the case of a physical one, the price of the book is required 25 Figure 3.25: My Book page Figure 3.26: Add New Book 26 Figure 3.27: Add new book of type PDF 27 Figure 3.28: Add new book of type Physic 28 • My Book Requests: Users can follow the orders they have received for paper books from other users.The request can be accepted or rejected There is also an icon for communicating with the user, either by voice call or via messages Figure 3.29: My Book Requests Page • My Requests: A link to the Book Requests page where users can keep track of their current and past orders. This page displays the status of the order with a message icon to send a message to the owner or a call icon to contact them. 29 Figure 3.30: My Requests • Continue Reading: A link to the Continue Reading page where users can continue reading e-books they started previously, with the ability to save the page they left off on. 30 Figure 3.31: Continue Reading • Discussion: A link to the discussion page where users can create a discussion room about books through Zoom. The creator can place a Zoom link in the designated place and show a list of friends for users to choose to join the discussion and choose the discussion topic. When you click on “Create Room”, a notification is sent to members that the discussion has begun, and once they click on the “Join” button, they enter the meeting. 31 Figure 3.32: Discussion Room 32 Figure 3.33: Zoom Meeting 33 • Log Out: Option to log out of the account securely. User Profile Page: The profile page displays basic information about the user such as: The user name as it appears in the application, the personal photo, the number of posts he has published, the number of people who follow him, and the number of people he follows. You can follow him through the follow button And communicate with him through the message button Figure 3.34: User Profile Page 34 3.3.2 Web Application: This section explains the development of the Web platform. Log In Page: Figure 3.35: Log In Page in web Sign Up Page: 35 Figure 3.36: Sign Up Page in web 36 Figure 3.37: Select location in web Home page: It is similar to the home page in the mobile application, but the main difference is that the menu page appears on the far right of the screen instead of being in the Nav bar as shown in the picture. 37 Figure 3.38: Home page in web Figure 3.39: Upload an image in web 38 Book page: Figure 3.40: Book page in web 39 Favorite books page: Figure 3.41: Favorite books page in web 40 Chat page: Figure 3.42: Chat page in web 41 Chapter 4 Results and Discussion The ReadShare application has effectively achieved its intended goals, delivering a high level of efficiency and a user-friendly experience, as illustrated by the visuals showcased earlier. Our primary audience, book enthusiasts looking for a dynamic platform to ex- change and discuss literature, directed our efforts toward crafting a design that is simple, intuitive, and visually clear, ensuring accessibility for all users. However, the development process encountered several technical and practical challenges. From a technical perspective, integrating real-time functionalities using Firebase for chat and image storage presented complexities. The need for frequent updates and the evolu- tion of software versions sometimes clashed with our existing infrastructure. Additionally, establishing a robust and logical database system using MongoDB for efficient data re- trieval and storage posed considerable challenges during the app development journey. Despite facing these obstacles, the application was effectively developed in alignment with our vision, delivering gratifying results. Users now have access to a broad spectrum of book-related services, with the flexibility to expand and tailor them to suit their needs. The platform enables users to create and manage profiles, exchange physical books, read digital books in PDF format, and engage in community discussions through robust tools for chatting, posting, and commenting. The feedback from our users has been overwhelmingly positive, particularly appreciating the platform’s ease of use, comprehensive features, and the ability to connect with fellow book enthusiasts. Some users suggested additional features, such as personalized book recommendations and enhanced community engagement tools, which are being considered for future updates. In essence, the ReadShare platform has succeeded in fostering a vibrant reading culture and meaningful relationships among book lovers within the Arab-Muslim community and beyond. By bridging the gaps in existing book exchange platforms and emphasizing a culturally sensitive approach, ReadShare has laid a strong foundation for promoting reading and intellectual discourse. Continuous feedback and iterative improvements will further enhance the platform’s impact and reach, ensuring its sustainability and relevance in the future. 42 Chapter 5 Conclusion and Recommendation 5.1 Conclusion The development and implementation of the ReadShare platform have successfully ad- dressed the identified market gaps. By providing a comprehensive, user-friendly platform for book exchanges and community engagement, ReadShare has laid the foundation for a thriving reading culture. Continuous feedback and iterative improvements will further enhance the platform’s impact and reach. 5.2 Future Work Future Work To further enhance the ReadShare platform, several key developments are planned. One major area of focus is the implementation of a personalized book recommen- dation system. This feature will utilize user data to suggest books tailored to individual reading preferences, thereby enriching the user experience and promoting greater engage- ment with the platform. Additionally, plans are underway to introduce a book forum. This forum will serve as a dedicated space for users to discuss various literary topics, share insights, and participate in thematic discussions. It will provide a structured environment for deeper intellectual engagement and foster a stronger sense of community among users. By incorporating these features, ReadShare aims to continue evolving and meeting the needs of its users, ensuring the platform remains a vital resource for book lovers and a catalyst for promoting a thriving reading culture. 43 Bibliography [1] A. Al-Khatib. Reading preferences in the arab-muslim world: A cultural perspective. Culture and Communication, 9(2):168–184, 2016. [2] S Anderson, C. Lee. Community engagement in digital platforms: A case study of reddit. Online Information Review,, 41(4):518–534, 2017. [3] A. Brown. An analysis of bookmooch and paperbackswap. library trends,. Book Trading Platforms, 68(1):112–129, 2020. [4] R Hussein. Social networks and cultural identity: The arab-muslim experience. Social Media Studies, 7(3):312–329, 2018. [5] M. Johnson. The role of social media. reading research quarterly,. Online Communities and Reading Engagement, 54(3):287–302, 2019. [6] J. Smith. The social network for book lovers: A review of goodreads. Digital Literature, 15(2):45–49, 2018. [7] K Wilson. Current trends and future directions. information technology and libraries,. Digital Libraries and E-Book Sharing, 40(1):23–352, 2021. 44 Acknowledgment Table of Contents List of Figures Abstract Introduction Background Problem Statement Objectives Importance Literature Review Methodology Tools and Technologies Languages Frameworks and Libraries Development Tools Database Users Tabel Books Tabel Posts Tabel Room Tabel System Features Implementation Mobile Application Web Application: Results and Discussion Conclusion and Recommendation Conclusion Future Work