An-Najah National University Faculty of Engineering & Information Technology Department of Computer Engineering Graduation Project I HardwareBazaar Prepared by: Amer Kobari Tariq Marmash Supervised by: Dr. Abdallah Rashed Presented in partial fulfilment of the requirements for Bachelor Degree in Computer Engineering 2025 Table of Content Abstract.............................................................................................................................................. 7 Chapter 1: Introduction ......................................................................................................................... 8 1.1 Background ................................................................................................................................. 8 1.2 Objectives .................................................................................................................................... 8 1.3 Scope of Work ............................................................................................................................ 9 1.4 Importance of the Project.......................................................................................................... 9 1.5 Report Organization ................................................................................................................ 10 Chapter 2: Constraints, standards and earlier work ......................................................................... 11 2.1 Constraints ................................................................................................................................ 11 2.2 Standards ................................................................................................................................... 11 2.3 Related Projects and Earlier Coursework ............................................................................... 12 Chapter 3: Literature review ................................................................................................................ 13 Chapter 4: Methodology ...................................................................................................................... 14 4.1 Technical Stack ......................................................................................................................... 14 4.2 Tools, Programming Languages, and Technologies .............................................................. 15 4.2.1 Mobile Application .......................................................................................................... 15 4.2.2 Website ............................................................................................................................. 16 4.2.3 Admin portal.................................................................................................................... 16 4.2.4 IDEs and Code Editors ................................................................................................... 16 4.3 Architecture and Implementation ........................................................................................... 17 4.3.1 Mobile Application .......................................................................................................... 17 4.3.2 Website ............................................................................................................................. 18 4.3.3 Admin Website ................................................................................................................ 20 4.5 Feature Implementation........................................................................................................... 23 4.5.1 User Verification.............................................................................................................. 23 4.5.2 In-App Messaging ........................................................................................................... 24 4.5.3 Wishlist............................................................................................................................. 27 4.5.4 Community System......................................................................................................... 27 4.5.5 Virtual Build Assistant .................................................................................................... 30 4.5.6 User’s Rating.................................................................................................................... 31 4.5.7 User’s Cart ....................................................................................................................... 32 4.5.8 Order Tracking ................................................................................................................ 32 4.5.9 Requesting A Shop .......................................................................................................... 33 4.5.10 Item Placing ................................................................................................................... 37 4.5.11 User Profile .................................................................................................................... 40 4.5.12 Payment Options ........................................................................................................... 43 4.6 Database design ........................................................................................................................ 45 Chapter 5: Results, Discussion, and Analysis .................................................................................... 48 5.1 Challenges ................................................................................................................................. 48 5.2 User Feedback ........................................................................................................................... 48 5.3 Comparative Analysis .............................................................................................................. 49 Chapter 6: Conclusion and Recommendations ................................................................................. 50 6.1 Conclusion ................................................................................................................................ 50 6.2 Recommendations and Future Enhancements ...................................................................... 50 Chapter 7: References .......................................................................................................................... 51 Table of figures Figure 1 Website - Home page (1) 18 Figure 2 Website – Home page (2) 19 Figure 3 Website - Sign In page 19 Figure 4 Website - Password Reset 19 Figure 5 Website - Sign Up page 20 Figure 6 Admin - Requests Tab 21 Figure 7 Admin - Orders Tab 21 Figure 8 Admin - Statistics Tab (1) - Charts 21 Figure 9 Admin - Statistics Tab (2) - Tables 22 Figure 10 Admin - Orders page 22 Figure 11 Admin - Order Details 22 Figure 12 User verification 23 Figure 13 User verification - Verification code via Email 24 Figure 14 Send message button 25 Figure 14.1 Chat page 25 Figure 15 Messages notification 26 Figure 16 Messages notification - Messages Tab 26 Figure 17 App drawer - Favorites (Wishlist) 27 Figure 18 Favorites (Wishlist) Page 27 Figure 19 Community Tab 28 Figure 20 Post Details 28 Figure 21 Posts notifications 29 Figure 22 Posts notifications - Notifications Popup 29 Figure 23 Home Tab - ByteBuddy (AI Chatbot) 30 Figure 24 ByteBuddy Page 30 Figure 25 Rate Seller 31 Figure 26 Seller's page - Rating 31 Figure 27 App drawer - My Cart 32 Figure 28 My Cart page 32 Figure 29 Orders Tab - Order's status 33 Figure 30 Order status update Email 33 Figure 31 App drawer - Request New Shop 34 Figure 32 Add New Shop page (1) 34 Figure 33 Add New Shop page (1) - Subscription 35 Figure 34 New Shop Request Email 35 Figure 35 Unconfirmed Shops 36 Figure 35.1 Shop page - Website 36 Figure 35.2 Shop page - App 37 Figure 36 App drawer - Add New Item 38 Figure 37 Add New Item page (1) 38 Figure 38 Add New Item page (2) 39 Figure 39 Unconfirmed Items 39 Figure 40 Item Confirmation Email 40 Figure 41 User's Profile 41 Figure 42 User's Profile - Sold items history 41 Figure 43 Personal Information 42 Figure 44 User's Items 42 Figure 45 User's Posts 43 Figure 46 Checkout page (1) - Payment Options 44 Figure 47 Checkout page (2) - Promo Code 44 Figure 48 Order Details Email 45 Figure 49 Database - Carts 45 Figure 50 Database - Favorites (Wishlist) 46 Figure 51 Database - Items 46 Figure 52 Database - Shops 47 Figure 53 Database - Orders 47 Figure 54 Database - Users 47 Acknowledgment We would like to express our deepest gratitude to everyone who has significantly contributed to the success of this project. Our heartfelt appreciation goes to our families for their unwavering emotional support throughout our academic journey, providing the foundation for our perseverance and dedication. We extend our sincere thanks to our friends, who stood by us during moments of exhaustion and discouragement, offering encouragement and motivation when it was needed most. Our immense gratitude also goes to the Computer Engineering Department, from teaching assistants to professors, whose guidance and expertise have been instrumental in our growth and success. Their mentorship and dedication have been invaluable. A special acknowledgment is due to our supervisor, Dr. Abdallah Rashed, whose insightful advice, consistent support, and readiness to assist have been pivotal throughout the course of this project. His guidance has been a cornerstone of our success, and we are truly thankful for his contributions. Abstract This project is a revolutionary resource called HardwareBazaar. It is designed to revolutionize the way hardware components are sold and bought. This project is an extensive web and mobile application that manages to cater both individual consumers and hardware businesses. It streamlines and makes it easier to make more transactions for components such as Rams, CPUs, and GPUs. Not only does this platform aid in and facilitate buying and selling but it also ensures a secure and user - friendly experience. This is through vigorous features like in-app messaging, user verification, and multiple payment options, and wishlist management. These features include cash-on-delivery and online payments. A preeminent feature of HardwareBazaar is the Virtual Build Assistant. This feature empowers and enables users to design and configure setups customized to meet their needs. One of the most important factors is that this platform focuses on fostering a sense of community. This is done by discussion forums and peer-to-peer support systems. With the integration of a well-structured database and cutting-edge technology, HardwareBazaar manages to amplify and strengthen user satisfaction and engagement by offering efficient real-time operations. This report details the concept of HardwareBazaar, and other related aspects like the challenges, methodologies, objectives, and outcomes. In which highlights the importance of reducing electronic waste by encouraging the reuse of hardware pieces that stresses the importance of a circular economy. Furthermore, this document explores the architectural system technical stack, and the probable future developments envisioned to expand the reach and capabilities of the platform. Chapter 1: Introduction 1.1 Background Due to increasing demand for advanced technology and maximum performance in today’s high technological world, most of the components like CPUs, GPUs, and RAMs are changing. However, this fastest growing market has left a gap. Where there is no well-structured and safe system through which the user can purchase, sell or even exchange these components with efficiency. The lack of such a platform results in disconnected transactions, distrust among users of an application, and possibly security risks. Thus, the current competitor model such as the existing general e-commerce platforms or social networks providing market spaces, are insufficient in meeting the requirements of the audience interested in hardware. HardwareBazaar is dedicated to becoming the primary shopping site specialized for selling and buying electronic and computer hardware. This becomes very important since current sites lack feature-enhanced sophistication, trustworthiness, and user-friendly features for consumers as well as sellers. 1.2 Objectives The main objective of HardwareBazaar is to modify the traditional flow of exchanging and selling hardware components by introducing a straightforward, safe, user friendly, and convenient platform. The objectives include: ● Creating an all inclusive system that provides end-to-end solutions for buyers and sellers to exchange hardware items. This includes user verification, processing payments, and delivery trackers. ● Increasing user engagement and interaction. This is done using features like real time chats, personalized recommendations, and creating communities where people can interact through posts and chats. ● Our platform focuses on implementing environmental sustainability where it reduces electronic waste by encouraging the reuse of hardware components. ● Incorporating innovative tools such as an AI chatbot (ByteBuddy) which assists users in designing their custom hardware setups. 1.3 Scope of Work HardwareBazaar aims to meet users of different backgrounds, starting from individual sellers and buyers of used and new parts to hardware businesses with the intention to expand their opportunities. The platform encompasses: ● Secure account creation and verification processes to build user trust. ● Integration of diverse payment options, including cash-on-delivery and online payments. ● A database-driven system to ensure accurate and real-time updates of product listings and transactions. ● Advanced filtering and sorting options to help users find components that match their specifications. ● A special section for verified hardware stores to showcase new and used products. ● This scope ensures that HardwareBazaar can address the needs of both casual users and industry professionals. 1.4 Importance of the Project HardwareBazaar is potentially beneficial for several issues that are at present critical in the hardware reselling business. In doing so, it eliminates the potential of being scammed, and unsafe transactions through the consolidation of transactions into one platform. Furthermore, the use of the platform enables a longer lifespan of the components of the hardware used, encouraging reuse and decreasing electronic waste. In addition, due to the fact that it is a platform that unites enthusiasts of hardware, the prospect opens up additional opportunities for knowledge sharing and cooperation, which in turn contributes to the development of the project and the user experience becomes more diverse. The availability of new features such as the Virtual Build Assistant also highlights the ought to be role of the platform in keeping tasks manageable for the user. 1.5 Report Organization The structure of this report follows the structure which is aimed at giving a clear understanding of the objectives, scope and importance of the HardwareBazaar project. The subsequent chapters delve into: Chapter 2: Challenges faced and previous studies, where the difficulties met and the courses taken before developing the project are presented. Chapter 3: A comparison of HardwareBazaar with the current solutions in the market and explaining the specific aspects of HardwareBazaar. Chapter 4: Methodology which includes technical stack, features and databases. Chapter 5: Conclusion, summarizing the work and findings completed while considering the users’ feedback. Chapter 6: The project conclusion along with the recommendation for future improvements. Chapter 7: Appendices, which contains the list of resources and documents used in the course of the project. This approach also guarantees a structural analysis of the project right from the conceptual stage to the operational stage. Chapter 2: Constraints, standards and earlier work 2.1 Constraints The technical and operational challenges of creating and launching HardwareBazaar include: The first limitation was the need to provide security to the user’s transactions and personal information. Since user verification and payments require a lot of user information, security through encryption and protocols was paramount. Another important limitation was the integration of the data in real time across the web and the mobile versions of the application, requiring good back-end solutions and low-latency networking. Also, since the users have different devices, a constant and smooth interface of the application was necessary. Restrictions in resources such as time and financial constraints and few access to some high-quality API’s affects the process. The addition of the Virtual Build Assistant and Community Forums also meant that the databases had to be much more integrated and the application had real - time interaction aspects; all adding to the workload. However, we handled these difficulties using appropriate problem-solving tactics, and most of the solutions were based on open-source instruments, if possible. 2.2 Standards This is a mobile application that has front-end development done in Flutter framework to make it easier to design the UI controls as well as to interact with the back end. We learned the use of Flutter and Dart by taking courses on the Web, official documentation, and forums. Back end operations, such as data retrieval and posts to MongoDB, were implemented with RESTful APIs built using Node.js and Express. We learned these technologies through tutorials, online articles and practical exercises. As for the web site and admin panel design, we used HTML, CSS, JavaScript; The experience was gained during the university courses on Web Development. 2.3 Related Projects and Earlier Coursework HardwareBazaar was designed and implemented based on current platforms and academic studies findings. Some of the existing solutions sourced from WataniMall and Amazon gave an idea on the structure of the user interface and transaction process, but these general e-commerce models were inadequate for parts and hardware. HardwareBazaar differentiates itself by providing Virtual Build Assistant for customizations like compatibility scans, and a platform specifically for used and new parts. Curriculum studies acted as the basis in preparing the team towards the successful completion of the training. Database Management courses formed the basis of developing the MongoDB schema as well as Web Development courses in developing the responsive user interface in HTML, CSS and JS and the self-learning of the Flutter framework which was the core of the project. Engineering principles from Software Engineering were used to make the code base modular, scalable and maintainable. Moreover, knowledge from the modules such as Advanced Software Engineering, Information Security as well as APIs was useful in developing secure and efficient system components. All these influences used came into play and helped in the development process of the project. Chapter 3: Literature review HardwareBazaar was designed after a critical analysis of existing platforms and academic literature to determine areas to improve on and replicate the best practices. Popular industry solutions were scrutinized with respect to the focus on the user, framework for payment, and verification. While these platforms are proficient at offering generalized e-commerce solutions, they do not contain the options specific to the hardware sales like check for compatibility and clear description of the state. However, other specific hardware forums for enthusiasts were identified to be dispersed, with insecure payment platforms, or lacking inherent shipping progress and social interactions components. HardwareBazaar fills these voids by utilizing features of open common platforms while having enough of specificity for the actual hardware exchange. This encompassed secure transactions, capability for a Virtual Build Assistant which checks compatibility and a marketplace suited for the hardware enthusiasts and professionals alike. The project also relies on research. Research on user interface design was used when developing an easy-to-use and understandable platform based on Flutter for cross-platform features. Studying the subject of secure e-commerce systems contributed towards the incorporation of encryption and secure payment gateway solutions that guarantee user’s safety. Best practices for database design learned in university made it possible to make MongoDB schema both horizontally and vertically scalable, so it can handle complex queries and big data. Community features based on the findings on users’ activities were the other fundamental elements of HardwareBazaar. Most forums and discussion boards engage users in the sharing of experiences and posting of questions and solutions. This builds a community, increases user engagement and therefore usage of the site, and helps in the creation of a more sociable commercial platform rather than just a market. Combining the best features of contemporary platforms and the findings of academic research, HardwareBazaar presents a holistic, novel, and customer-oriented approach to the problems in the hardware resale market. Chapter 4: Methodology In this chapter we will talk about how each section of the project was implemented and the tools used for each one. 4.1 Technical Stack ● Frontend Development: The frontend for the mobile application was developed using Flutter, and the website was developed using HTML/CSS/JS, a UI toolkit that enables cross-platform compatibility and provides a native performance feel. Flutter was chosen for its rich widget library and rapid development capabilities. ● Backend Development: The backend was implemented using Node.js, known for its event-driven, non-blocking I/O model. This ensured efficient handling of multiple simultaneous requests. RESTful APIs were employed to enable smooth communication between the frontend and backend systems. ● Database Management: The project relied on MongoDB as its database, chosen for its flexibility in handling unstructured and semi-structured data. This NoSQL database allowed for quick iterations and seamless scaling. ● Authentication and Security: JWT (JSON Web Tokens) was used to secure user authentication, and for creating sessions when logged in, while sensitive data was encrypted using industry-standard algorithms. ● Real-time Features: For real-time communication, especially in the in-app messaging system, firebase was employed. This allowed instantaneous updates between users and enhanced the overall platform responsiveness. 4.2 Tools, Programming Languages, and Technologies 4.2.1 Mobile Application The mobile application was designed to provide a seamless experience for Android users and in the future for IOS users. 4.2.1.1 Client Side ● Frameworks: The mobile application was built using Flutter, an open-source framework for creating cross-platform apps. Flutter was chosen for its flexibility, allowing developers to use a single codebase to develop apps for both Android. Its rich set of pre-built widgets and extensive community support enabled efficient development and ensured a smooth and responsive user experience. ● Programming Languages: Dart, the programming language used with Flutter, was chosen for its strong performance and easy-to-learn syntax. Dart's asynchronous programming features facilitated the creation of a highly responsive and fast user interface. 4.2.1.2 Server Side ● Framework: On the server side there was Node.js, MongoDB and Firebase Realtime Database to perform back-end operations. Node.js, which is a cross-platform JavaScript runtime, applied scalability and performance. This was accompanied by Express.js, which is an open-source web application framework for developing server-side applications that are supported by numerous plugins as well as packages available. These tools made the control flexible and ensured efficient connection to the databases. Firebase Realtime Database was used to fasten the real-time communication and backend support without the necessity to organize the server. ● Languages: The Node.js backend was implemented using JavaScript same as the Flutter app frontend while data was easily passed between the mobile app and the Firebase backend due to Firebase’s integration with Dart. Node.js was used on the server side, and it is a cross-platform. 4.2.2 Website 4.2.2.1 Client Side ● Languages: The website's frontend was developed using HTML, CSS, and JavaScript, which are foundational web technologies. HTML provided the structure of the web pages, CSS ensured visually appealing and responsive designs, and JavaScript enabled dynamic and interactive user experiences. These technologies were chosen for their simplicity, compatibility, and effectiveness in creating modern web interfaces. 4.2.2.2 Server Side ● Framework and Languages: The backend for the website was built using Node.js with Express.js, ensuring fast and scalable performance. JavaScript was used consistently across both client and server sides, simplifying the development process and enhancing maintainability. 4.2.3 Admin portal 4.2.3.1 Client Side ● Languages: The admin portal's frontend was designed with HTML, CSS, and JavaScript, providing a clean and structured layout. These technologies ensured responsiveness and compatibility across devices. 4.2.3.2 Server Side ● Framework and Languages: The backend utilized Node.js and Express.js, along with MongoDB for database interactions. JavaScript's universal use across the portal facilitated efficient development and integration with other platform components. 4.2.4 IDEs and Code Editors To streamline development, several tools were employed: ● Visual Studio Code: A flexible and portable HTML, CSS and JavaScript editor, used a lot for coding the mobile application, website, and admin portal. Extensions related to it and debugging tools improved productivity to the greatest extent. ● Android Studio: Used for testing and debugging the mobile app on Android devices, ensuring compatibility and performance. ● Postman: Employed for testing APIs, ensuring reliable communication between the frontend and backend systems. ● Firebase Console: Used for managing backend configurations and real-time database interactions, particularly for the in-app messaging feature. ● MongoDB Compass: A GUI-based tool for MongoDB used for administering as well as viewing the database. It made querying, monitoring and even database schema much easier. 4.3 Architecture and Implementation HardwareBazaar architecture was carefully planned to be modular with each component being designed to be scaled up or down to meet the demands of the project. The project is divided into three main parts: there are three divisions that can be named – the Mobile Application, the Website, and the Admin Website. Every part contributes towards the whole system and performance of the system is holistic. 4.3.1 Mobile Application The main form of user engagement is a mobile application where a user can work with the platform using a smartphone. To be precise, it is developed targeting the Android and iOS operating systems using Google Flutter SDK to allow users similar UI experiences regardless of the device they use. ● Functionality: The app enables users to browse hardware components, manage their wishlist, chat with sellers, and place orders, and a community to interact with other users. Real-time updates and synchronization with the backend, powered by Firebase Realtime Database, ensure that users always have access to the latest data. The app also includes features such as user profiles, cart management, and order tracking. ● Integration: The mobile application communicates with the backend through RESTful APIs. This ensures that user actions, such as placing an order or updating their cart, are reflected across all components of the platform in real time 4.3.2 Website The website is the primary tool for users who prefer accessing the platform via a desktop or laptop. Built using HTML, CSS, and JavaScript, the website offers a lightweight and responsive interface for browsing, and creating accounts. ● Functionality: The website mirrors the mobile app’s functionality, enabling users to browse products, and manage their accounts. It is optimized for a smooth and intuitive user experience. ● Integration: Similar to the mobile app, the website connects to the backend using APIs, ensuring consistent data across all platforms. User actions performed on the website, such as updating a profile or placing an order, are synchronized with the mobile app and admin portal. Figure 1 Website - Home page (1) Figure 2 Website – Home page (2) Figure 3 Website - Sign In page Figure 4 Website - Password Reset Figure 5 Website - Sign Up page 4.3.3 Admin Website The admin website is designed for platform administrators and who manage shops and listings. It provides tools for moderation, seller approval, and order tracking. ● Functionality: Admins can use the portal to verify new shops, monitor sales, resolve user issues, view stats and all the data about the market and tracking orders. ● Integration: The admin portal is connected to the backend, allowing it to fetch and update data as needed. This ensures that administrative actions, such as approving a vendor or updating a product listing, are immediately reflected across the system. Figure 6 Admin - Requests Tab Figure 7 Admin - Orders Tab Figure 8 Admin - Statistics Tab (1) - Charts Figure 9 Admin - Statistics Tab (2) - Tables Figure 10 Admin - Orders page Figure 11 Admin - Order Details 4.5 Feature Implementation The development of HardwareBazaar focused on implementing core features that enhance user experience, security, and functionality. Each feature was carefully designed to address specific needs of the platform's users. 4.5.1 User Verification To ensure a secure and trusted environment, a robust user verification system was implemented: ● Email Verification: Upon registration, users receive a verification email containing a unique code to confirm their account. ● Two-Factor Authentication (2FA): Additional security is provided by integrating 2FA, requiring users to input a code sent to their email. ● Admin Approval for sellers: sellers creating stores must undergo an additional verification process, where admins validate their details before the shop is added to the market. Figure 12 User verification Figure 13 User verification - Verification code via Email 4.5.2 In-App Messaging A real-time messaging system was created to facilitate communication between buyers and sellers: ● Firebase Realtime Database: Used for instant message synchronization and delivery across devices. ● Threaded Conversations: Messages are grouped by transactions or user connections for easier tracking. Figure 14 Send message button Figure 14.1 Chat page ● Notification System: Push notifications alert users of new messages or updates, ensuring they stay informed. Figure 15 Messages notification Figure 16 Messages notification - Messages Tab 4.5.3 Wishlist The wishlist feature allows users to save items they are interested in: ● Add to Wishlist: Users can add hardware components to their wishlist for future reference. ● Dynamic Updates: This integration is updated in real time within the database, thus making it possible for a user to access their wish lists. Figure 17 App drawer - Favorites (Wishlist) Figure 18 Favorites (Wishlist) Page 4.5.4 Community System To create a welcoming community where people feel connected and can share their knowledge: ● Forums and Discussion Boards: Users can participate in technical discussions, exchange insights, and ask the community for advice. ● Q&A Sections: Special areas in which the users can post questions and provide answers, to promote individuals’ interaction and problem-solving. ● Post Reviews: Users can rate and review items after their order has been successfully completed and delivered. Figure 19 Community Tab Figure 20 Post Details Figure 21 Posts notifications Figure 22 Posts notifications - Notifications Popup 4.5.5 Virtual Build Assistant One of the most innovative features of HardwareBazaar is the Virtual Build Assistant: ● Hardware Compatibility Checks: Users can input existing components or desired configurations, and the system verifies compatibility. ● Recommendations: Based on user preferences and budget, the assistant suggests the best options available. ● Integration with Vendor Listings: Recommended items are linked directly to listings on the platform, streamlining the purchase process. Figure 23 Home Tab - ByteBuddy (AI Chatbot) Figure 24 ByteBuddy Page 4.5.6 User’s Rating This feature enables users to rate their experiences with sellers, promoting transparency and trust within the community. Ratings appear on seller profiles, helping buyers make informed decisions. Users can leave a rating only after their order has been successfully delivered. Figure 25 Rate Seller Figure 26 Seller's page - Rating 4.5.7 User’s Cart The shopping cart simplifies the buying process by enabling users to add and remove multiple items for bulk checkout. Real-time synchronization ensures users can access their carts across devices. Delivery fees are computed according to the OpenCage API which was created to calculate the distance between the item and the buyer’s location which the estimated fees depend on. Figure 27 App drawer - My Cart Figure 28 My Cart page 4.5.8 Order Tracking This feature allows users to track the status of their orders in real-time. It provides updates through emails for each stage, from processing and shipping to delivery, ensuring a transparent transaction experience. Figure 29 Orders Tab - Order's status Figure 30 Order status update Email 4.5.9 Requesting A Shop Users can submit requests to create their shops on the platform. Once verified by admins, these shops enable sellers to list and edit items, increasing their reach and visibility in the market. Figure 31 App drawer - Request New Shop Figure 32 Add New Shop page (1) Figure 33 Add New Shop page (1) - Subscription Figure 34 New Shop Request Email Figure 35 Unconfirmed Shops Figure 35.1 Shop page - Website Figure 35.2 Shop page - App 4.5.10 Item Placing Users can easily upload, edit and manage product listings. This feature includes tools for adding descriptions, photos, and pricing details, streamlining the process of showcasing hardware items. Once verified by admins, the item will be available in the market based on its category. Figure 36 App drawer - Add New Item Figure 37 Add New Item page (1) Figure 38 Add New Item page (2) Figure 39 Unconfirmed Items Figure 40 Item Confirmation Email 4.5.11 User Profile The user profile includes all the personal details/contexts and activity details such as user picture, transaction record, items posted, blog entries, balance, number of orders, and ratings. It is used to increase user interactions and make it easier for them to access some of the most important functions. Figure 41 User's Profile Figure 42 User's Profile - Sold items history Figure 43 Personal Information Figure 44 User's Items Figure 45 User's Posts 4.5.12 Payment Options Multiple payment options have been integrated to accommodate a variety of user preferences, Promocode can be applied when placing an order which allows the users to get a discount for the total price. ● Cash on Delivery (COD): For users who prefer physical payments, COD is supported with location-based tracking for delivery agents. ● Online Payments: Users can make secure online payments through trusted platforms. Figure 46 Checkout page (1) - Payment Options Figure 47 Checkout page (2) - Promo Code Figure 48 Order Details Email 4.6 Database design The database design includes the following collections (or tables, depending on the database type): ● Carts: Used to store information about users' shopping carts, including items they plan to purchase, quantities, and total prices. Figure 49 Database - Carts ● Favorites: A collection to keep track of items users have marked as favorites or added to their wishlist. Figure 50 Database - Favorites (Wishlist) ● Items: This collection stores the details of hardware products available on the platform, such as descriptions, pricing, and condition. Figure 51 Database - Items ● NewShops: This collection manages requests for new shops created by users or sellers, storing information about shop applications and their verification status. Figure 52 Database - Shops ● Orders: Used to track user orders, including the status (e.g., pending, shipped, delivered), payment information, and associated user details. Figure 53 Database - Orders ● Users: This collection stores user profiles, including their personal information, ratings, and transaction history. Figure 54 Database - Users Chapter 5: Results, Discussion, and Analysis 5.1 Challenges The creation and deployment of HardwareBazaar was done with various difficulties which were met systematically to create a strong & user-friendly platform: ● Integration Complexity: Integrating Firebase with Node.js and MongoDB needed a lot of thinking to understand how the data would traverse through different technologies before reaching its destination ● Scalability Issues: In the early phases of the platform there were issues associated with the scalability of the application when used with a large number of concurrent users. Improving back-of-house functions and using MongoDB in shared form eliminated this problem. ● Real-Time Synchronization: The integration of features that are real-time like in-app messaging or status updates to the order required elegant navigation around Firebase’s Realtime Database. This was made possible by stringent testing to make sure that there was little or no delay and that the data being updated was accurate. ● User Experience Optimization: It was a particular challenge to design an interface which would suit the hardware geeks who enjoy delving deep into the settings as well as ordinary users. 5.2 User Feedback User feedback played a crucial role in improving the platform and ensuring it met user expectations: ● Positive Feedback: o Users appreciated how easy it was to navigate the platform and praised its visually appealing design. o Features such as the Virtual Build Assistant and Wishlist received widespread appreciation. o The admin portal was commended by vendors for how simple and efficient it was in performing shop related tasks. ● Constructive Criticism: o Some users requested advanced filtering and sorting options for faster product discovery. o A small number of users suggested integrating analytics-driven recommendations for personalized shopping experiences. 5.3 Comparative Analysis HardwareBazaar was compared with similar platforms to evaluate its unique strengths and areas for improvement: ● Features: HardwareBazaar stands out from general e-commerce platforms like Amazon or eBay in that the focus is on hardware specific features such as compatibility checks and the Virtual Build Assistant. It is also unique, using community engagement tools such as forums and ratings. ● User Experience: Market feedback was that HardwareBazaar's technology provides a more customized and involving experience for hardware enthusiasts over competitors. Particularly praised were its intuitive design, real time features and cost. ● Areas for Growth: While the platform offers a rich feature set, expanding into analytics- driven recommendations and integrating with third-party delivery services could enhance its competitive edge. Chapter 6: Conclusion and Recommendations 6.1 Conclusion The challenge of buying and selling hardware components is successfully addressed by HardwareBazaar, which provides a platform so dedicated, secure, and user friendly. The platform has been designed with features like user verification, live messaging, compatibility checks and a Virtual Build Assistant that has made reselling hardware easy and trust and transparent for the users involved. Flutter, Firebase, and MongoDB integration allowed us to create a scalable and robust system which can work for a big customer base. HardwareBazaar has been a positive revolution in the e-commerce space with a strong, competitive feature set and positive user feedback aimed towards hardware enthusiasts. 6.2 Recommendations and Future Enhancements ● AI-Driven Recommendations: Machine learning algorithms for personalized recommendations, such as recommendation systems, where you are integrated with user preferences, and history of browsing. ● Third-Party Logistics Integration: Provide real time delivery tracking and improvement to shipping options to users through collaboration with logistics providers. ● Augmented Reality (AR) Integration: Introduce AR features for users to visualize hardware components in their setups, improving decision-making. ● Gamification Features: Add elements like badges or rewards for buyers or sellers to encourage engagement and loyalty. Chapter 7: References [1] Flutter Tutorial [2] OpenCage [3] OpenAI [4] Nodemailer [5] Firebase real-time messaging tutorial [6] Firebase community tutorial [7] Firebase notification tutorial https://youtube.com/playlist?list=PL4cUxeGkcC9jLYyp2Aoh6hcWuxFDX6PBJ&si=0Nar--pKsUbHE8OP https://opencagedata.com/ https://reader.elsevier.com/reader/sd/pii/S1877050918302473?token=BC523EF8FCA8EBAE1B44ED0A217AE11899FFBEE83420F2FC024EF131D61CBE1DB641266DB51D3267FBAAFAFDBBFC1082&originRegion=eu-west-1&originCreation=20211218162919 https://platform.openai.com/docs/overview https://agri.najah.edu/sites/default/files/Smart%20Hydroponic.pdf https://www.nodemailer.com/usage/ https://www.youtube.com/watch?v=1kOMoncF4p4 https://www.engineersgarage.com/arduino-water-quantity-monitoring-in-a-tank/?fbclid=IwAR2hQDVUQ3zdOVBa0LopL2a2kJxxQ8KV5uZz8AnAHoD-lS1AITJvqXw9sas https://www.youtube.com/watch?si=B-D24DmIlRq9hxsp&v=prp8-j3W_V0&feature=youtu.be https://youtu.be/k0zGEbiDJcQ?si=l14ocyBXhEGDcMZE https://appinventor.mit.edu/