/MovieScreen-client

project3-client

Primary LanguageJavaScript

MovieScreen

Moviescreen is a social full-stack web application designed for movie enthusiasts. It provides users with the ability to discover, save, review, and share movies within a community-driven platform.

Tech Stack

Client

  • React.js
  • Tailwind CSS
  • DaisyUI
  • React Router
  • Swiper.js
  • TMDB API (The Movie Database API)

Server

  • Mongoose
  • Express.js

Features

Server-side (Express.js and Mongoose):

  • Set up Express.js for routing and handling API requests.
  • Use Mongoose to interact with MongoDB for storing user data, movie information, reviews, and user favorites.

Authentication and Authorization:

  • Implement user authentication using JWT (JSON Web Tokens) for secure and stateless authentication.
  • Use middleware to handle authorization checks for protected routes.

User Profile:

  • Create a user profile system where users can sign up, log in, and customize their profiles.
  • Allow users to update profile details, including avatars and other personal information.

Movie Search and Discovery (TMDB API):

  • Integrate with TMDB API to fetch movie data, including details and images.
  • Implement a search feature for users to discover new movies.

Favorite Movies List:

  • Enable users to save their favorite movies to a personal list.
  • Use MongoDB to store user-specific favorite movie data.

Review and Rating System:

  • Implement a review and rating system where users can provide feedback on movies.
  • Store reviews and ratings in the database and associate them with the corresponding movies.

Community Sharing:

  • Enable users to share their favorite movies and reviews within the community.
  • Implement social features like commenting on reviews or liking a movie.

Client-side (React.js, TailwindCSS, DaisyUI, React Router, Swiper.js):

  • Develop a responsive and interactive user interface using React.js.
  • Utilize TailwindCSS for styling, and integrate DaisyUI components for enhanced UI elements.
  • Implement React Router for navigation between different pages of the app.
  • Use Swiper.js for creating a visually appealing movie carousel or slider.

Lessons Learned

Challenges Faced

Learnings

  • Pair programming practices for efficient collaboration
  • Utilization of Express.js for building a robust server-side application
  • Implementation of Mongoose for interacting with MongoDB databases

Feedback

If you have any feedback, please reach out to us at gregorio.atwork@gmail.com