Assignment For Full Stack Developer Intern
Assignment For Full Stack Developer Intern
Objective:
Create a simple Movie List Platform by integrating a third-party movie API. The task will
test your backend development, API integration, and ability to present data in a user-
friendly format.
Task
Build a platform that fetches movie data from a movie database API (e.g., TMDb API)
and displays it on a simple web interface.
Requirements
Backend Requirements:
1. API Integration:
o Use a third-party movie database API to fetch movie data.
o Register and obtain an API key (if required) from the API provider.
o Pull data for movies, including details such as:
▪ Title
▪ Release date
▪ Rating
▪ Poster image
▪ Description
▪ Genre
2. Features to Implement:
o Fetch and display highest-rated movies.
o Display recently released movies.
o Allow filtering movies by genre or release year.
3. Data Handling:
o Cache API results locally (e.g., in a database like MongoDB or a simple in-
memory cache) to minimize API calls.
o Design a robust backend to handle API calls and serve data to the
frontend.
4. Testing:
o Include API endpoints to test backend functionality using tools like
Postman.
Frontend Requirements:
1. Home Page:
o Display a list of highest-rated movies (based on the data fetched from
the API).
o Showcase movie posters, titles, release dates, and ratings in a grid or
card layout.
2. Filters:
o Add dropdowns or buttons to filter movies by genre or release year.
3. Details Page (Optional):
o Clicking on a movie should navigate to a detailed page showing additional
details (e.g., description, genre, and similar movies).
4. Design:
o Use any frontend framework/library (e.g., React, Vue.js) or simple
HTML/CSS for the UI.
Submission Guidelines
1. Repository:
o Share your project repository via GitHub (ensure the repository is public
or accessible).
2. README File:
o Provide clear instructions on how to run the project locally.
o Mention any additional libraries or frameworks used.
3. Demo (Optional):
o If possible, deploy your application (e.g., on Heroku, Vercel, or Netlify)
and share the live link.
Deadline
Evaluation Criteria