MovieBase API + Clients
A movie database application ecosystem with backend API work and Angular/React client-side interfaces.

Overview
MovieBase is a full-stack movie database ecosystem. The project includes a RESTful API, an Angular client, and a React client — all sharing the same data layer and authentication system. It was built as a comprehensive exercise in full-stack architecture across multiple frontend frameworks.
Backend API
The API is built with Node.js and Express, backed by MongoDB. It handles user authentication (JWT), movie CRUD operations, user profiles, and favorites management. The endpoint design follows REST conventions with consistent error handling and validation.
Angular Client
The Angular client implements the full user flow — registration, login, movie browsing, detailed views, and profile management. It uses Angular Material for UI components and RxJS for state management and API communication.

React Client
The React client covers the same functionality with a different architectural approach. It uses React Router for navigation, Redux for state management, and Bootstrap for responsive layout. Comparing the two clients highlights framework-specific patterns and tradeoffs.

What I Learned
Building the same application in two frameworks clarified the practical differences between Angular and React — particularly around state management, component lifecycle, and routing. The shared API forced consistent data contracts across both clients.
Why It Matters
This project demonstrates the ability to work across the full stack and adapt to different frontend frameworks. The shared backend ensures both clients solve the same problems, making the architectural comparisons meaningful rather than superficial.