CineVault
CineVault is a movie and TV series watchlist application that allows users to search for titles, view detailed information, and save the content they want to watch later. This project started as a solo project from the Scrimba Full Stack Developer Path, where the initial design and basic functionality were provided as a starting point. Rather than stopping at the given requirements, I expanded the project significantly by implementing user authentication, building a complete backend with Express and PostgreSQL, and adding persistent watchlist functionality so each user can securely manage their own collection across sessions and devices.

Project Purpose and Goal
I built this project to gain hands-on experience developing a complete fullstack application from scratch. It combines a modern React frontend with an Express and PostgreSQL backend, while integrating the OMDb API to deliver real time movie data. The application also implements JWT authentication with refresh token rotation to provide a secure user experience.
Spotlight
One of the main challenges was designing a secure authentication flow that felt seamless from the user's perspective. I spent considerable time researching how access tokens, refresh tokens, and token rotation work together before implementing the solution. Another challenge was deciding how movie data should flow between the OMDb API, the backend, and the frontend while keeping the application responsive and maintainable. Building the watchlist functionality also required careful planning to ensure that each user could securely manage their own data without exposing information to others.
Lessons Learned
This project gave me a much deeper understanding of how frontend and backend applications communicate in a real world environment. I learned how to design REST APIs, structure a PostgreSQL database, implement secure authentication, and manage application state across multiple pages. Beyond the technical skills, I gained experience debugging complex issues, researching unfamiliar concepts, and breaking larger problems into smaller, manageable tasks.
Other Projects

Quizzical
A trivia web app that lets users pick a category, difficulty, and question type, then puts their knowledge to the test.
VIEW PROJECT >