Undoubtedly, the largest and most complex project I've undertaken thus far. It's an application featuring an array of functionalities, including a user account system, JWT authentication, robust CRUD operations, review creation, user profiles with review summaries, and much more. Additionally, the project involves managing a significant amount of relational data, utilizing PostgreSQL and Prisma as the ORM.
I began this project near the start of my last high school class with the initial goal of learning React, Next.js, and a serverless approach. Due to the numerous responsibilities associated with impending final exams, this project took significantly more time than expected. Nonetheless, I'm rather proud of its final state, but I still see room for further improvements. The project's visual design has been entirely revamped, including everything from the color palette and fonts to content placement, and I even changed the tech stack twice. I always strive to do my best and put a significant amount of effort into ensuring the quality meets my standards.
The primary concept of this application is to enable users to add various travel destinations and then highlight places worth visiting, such as restaurants, museums, art galleries, and more. Additionally, the application features a highly effective review system for both destinations and landmarks, allowing users to share their experiences with the site's content. Each review includes a score from 0-10, a description, and relevant aspects of the subject being reviewed. Other users can then rate your review by giving it a thumbs-up or thumbs-down.
I take great pride in my ability to sustain my motivation and work on this project for over 6 months. It's evident that this journey has taught me a lot. After facing various challenges with Next.js (and React as well), I am now more aware of their intricacies and more efficient at problem-solving in this field than ever before.
This particular project includes 18 features in total.