An app that provides movie information by displaying a list of films sourced from The Movie Database (TMDb) API. It features the top movies for each year, allows users to filter by genre, and offers smooth scrolling. Built with React Native.
-
Install dependencies
npm install
-
Download the Expo app on your mobile Access the below link, select the device which you have android or ios, scan the QR code and download the app
- Expo Go, a limited sandbox for trying out app development with Expo
-
Start the app
NOTE: Please make sure your laptop / PC and Mobile device is connected to the same wifi/network
npx expo start
After running the above command, a QR code will be generated. Please scan the QR code and the app will start running on your device
- Display a list of movies from the TMDb API
- Filter movies by genre
- Smooth scrolling
- Fetching subsequent year movies by scrolling to the bottom
- Fetching previous year movies on refresh
- Search Functionality with scrolling and fetching new movies
- Component Unit Test cases
- Centralised Store using Zustand
- Usage of TypeScript for enhanced type safety and code quality.
- Implementation of this project in React Native
- More Test Coverage, in terms of component and store testing
- Movie Detail Page providing more information of the movie
- Advanced search functionality
- Multiple Device compatibility testing
- TypeScript: A typed superset of JavaScript that compiles to plain JavaScript.
- React Native: A framework for building native applications using React.
- Zustand: A small, fast and scaleable state management library for React.
- Axios: A promise-based HTTP client for making HTTP requests in the browser and Node.js.
- Expo: A framework and platform for universal React applications.
- Jest: A delightful JavaScript testing framework with a focus on simplicity.
- react-test-renderer: A package that provides a React renderer that can be used to render React components to pure JavaScript objects.