Build a movie watchlist application that integrates with The Movie Database (TMDB) API. Users can search movies, add them to their personal watchlist, rate them, and write reviews. This project focuses on external API integration, React Query for data fetching, and testing.
Estimated Time: 4-5 days
Frontend
React, React Query, React Router, axios, debounce
Backend
Node.js, Express, JWT, node-cache (optional)
External API
TMDB API (free API key required)
Testing
Jest, SuperTest, React Testing Library
💡 Development Tips:
Sign up for a free TMDB API key before starting. Never expose API keys in frontend code - use backend proxy. Implement debouncing for search (300-500ms) to reduce API calls. Use React Query's staleTime and cacheTime wisely. Write tests as you build features, not after. Mock external API calls in tests to avoid real API requests. Consider implementing pagination for search results.