Project Purpose and Goal
The main purpose of the BestBuy web app is to provide a convenient and user-friendly platform for customers to purchase products online. I wanted to create a seamless shopping experience that would make it easy for customers to browse and purchase products from their favorite brands. To achieve this goal, I included features such as product filtering and search functionality, a user-friendly checkout process, and multiple payment options, including integration with the Payhere payment gateway.
Web Stack and Explanation
The BestBuy web app was built using the MERN stack, which stands for MongoDB, Express, React, and Node.js. MongoDB is a NoSQL database that I used to store and retrieve user and product data. Express is a web application framework that I used to build the backend of the app, including the routes and logic for handling user requests. React is a frontend JavaScript library that I used to build the user interface of the app. And Node.js is a runtime environment that I used to execute JavaScript code on the server side.
Problems and Thought Process
One of the biggest challenges I faced while building the BestBuy web app was integrating the Payhere payment gateway. Initially, I struggled to understand the documentation and get the integration working properly. However, after spending some time researching and experimenting with different configurations, I were able to get the payment gateway working as expected. This experience taught us the importance of persistence and problem-solving skills when building web applications.
Lessons Learned
Building the BestBuy web app was a great learning experience for me. I gained a deeper understanding of the MERN stack and how to build a full-stack web app from scratch. I also learned valuable lessons about the importance of user experience and the role of payment gateway integration in e-commerce projects. Overall, this project helped me improve my coding skills and gave us the confidence to tackle larger and more complex projects in the future.