Problems
I learned a lot of new things during this project because this was my first experience working with a team on a real project. I learned how to communicate with my team members and how to manage a project.
Using jsonwebtoken to create the JWT was a bit challenging because I had to make sure that the JWT was valid and that the user was authorized to access the app. I also had to make sure that the unauthorized users are redirected to the login page.
The 2fa was a bit challenging because I never worked with qr codes before. I had to learn how to generate the qr code and the secret key. I also had to learn how to validate the qr code and the secret key.
Managing the dates was a bit challenging because I had to make sure that the dates were valid and that the dates were not in the past. I also had to make sure that the dates were in the correct format.