In this blog, I will share details about the project I am currently volunteering for at my college.
Project E-Library
In this story, I will discuss the technologies we have used, the challenges we are currently facing, the possible solutions, and the requirements needed to address them.
- Read the entire blog — it promises to be both entertaining and informative!
The story starts
We started this project as an E-library on March 10, 2022. The project planning, requirements gathering, and team setup were completed in just two days..
- The actual project began on March 12, 2022. We planned to develop an admin panel using Angular, a front-end framework. For the back-end, we chose Node.js, and for the database, we decided on MongoDB
After planning everything, we began working on the basic requirements we had gathered. This is when the first twist in the project emerged.
Twist One
- We started the project with the basic requirements for the E-library, such as adding books, updating books, issuing books, returning books, tracking due dates, and other core functionalities. Two days passed, and now the date is March 14, 2022. We had completed the admin panel with basic functionality, so we asked our management to arrange a meeting with the client to gain clarity on the full project. They informed us that the meeting would be scheduled for the next day.
- The following day, March 17, 2022, the management informed us that, due to some issues, they couldn’t reach the client today and advised us to continue working on the current requirements. By this time, the admin panel was completed with its basic template and functionality.
- On day 9, March 19, 2022, we began working on the materials section. We received some specific requirements, such as limiting students to borrowing up to four materials per day. At the same time, we started developing the student portal using React.js. Suddenly, we encountered an issue with displaying PDFs using an iframe. On desktop, everything worked fine, but on mobile devices, the PDF would download instead of being displayed. We tried several solutions, but eventually, we decided to stop using the iframe and found an excellent npm package to properly display PDFs.
After successfully implementing the PDF module, we began working on the Book Issuing module. This module had three main components: Book Issue, Book Return, and Book Renewal, along with the calculation of the due amount. However, this is where the second problem arose.
- While working on the Book Issuing module, we encountered a problem with calculating the due amount. We got stuck at this point for a while. After referring to numerous resources, we finally found a solution for calculating the due amount in Node.js with MongoDB.
After completing all those tasks, we were feeling a bit happy. Now, the date is March 23, 2022, and we have completed almost 75% of the project. However, our happiness didn’t last for long. On March 24, 2022, our management called us again and introduced a new requirement: membership renewal.
New requirement begins here…
The upcoming posts will be very interesting, with new requirements and challenges to solve! Stay tuned!
Stay connected with me for the upcoming post