Code Monkey home page Code Monkey logo

movie_listing_webapp's Introduction

Movie_Listing_Webapp

GitHub issues GitHub forks GitHub stars

Features

  • LogIn, SignUp and LogOut

    • google authorization is also available while signIn

  • Search movies via Keywords

  • Get the following details for a specific movie:

    • Runtime
    • Release Date
    • Votes
    • Genres
    • Description
    • Cast
    • Languages Spoken
    • Production Companies
  • Add/Remove Favourites

It uses The Movie DB API for movie listing, searching, and to fetch details for the selected movie.

Get Started

  • Fork the repository. With the repository forked, you’re ready to clone it so that you have a local working copy of the code base.
  • Clone the Repository.

Server Setup...

Here , the root folder is the server folder and the client folder contains the frontend part of this webapp. So to run the server :

  • You will need a .env file in the root folder for the system to run successfully. An example for the .env file has been written in .env.example. Modify the environment variables as you need and required before starting. Set NODE_ENV to development while running it in development mode.
  • Then in the root directory , to run the server :
npm install
npm start

Server should start running!.

Frontend Setup...

  • Change the directory to client (cd client) and run:
npm install
npm start

server will run in port 5000 and frontend will request to 5000 port itself due proxy url in package.json file.

Screenshots :

Login/Signup Screen

Login/SignUp

Home Screen

Search

Movie Screen

Movie

Favourites Screen

Favourites

movie_listing_webapp's People

Contributors

swarnim01 avatar arun-kushwaha04 avatar manoramsharma avatar amanpachori avatar kailash360 avatar adarsharyan002 avatar kshitij-404 avatar dipankar-medhi avatar gurpreet-legend avatar harshgupta1249 avatar arushi2715 avatar disha9112 avatar pratul20 avatar

Stargazers

 avatar

Watchers

 avatar

movie_listing_webapp's Issues

Make the navbar sticky

@Swarnim01, currently the navbar moves up as we scroll down.
image

This can be fixed by making the navbar sticky and it will provide better user experience. Can I work on this?

Adding a Pre Loader

I think a Pre loader when the website loads would enhance the user experience.

Refreshing webapp shows invalid screen.

When running locally, after logging In to the web app and refreshing the screen, the user still remains in the home screen due the presence of auth token in cookie but after hosting , it shows invalid screen when refreshed. Its possibly due to some wrong server setup. Try to fix it up.

Improper Navigation

@Swarnim01 Currently If I view details of a movie from page three and return back to home I am on the page 1. Ideally I should be directed to page 3.
Possible fix could be using params when we change page like "/home/:pageNumber" so this will ensure proper navigation of the pages.

Add a favicon

Your website is very beautiful. It will look more attractive with a favicon

Change the left/right arrows feature to pagination feature

Since arrows work fine on desktop screens but on mobile screens arrows take too much space and it doesn't look good. Therefore change the arrowhead feature to the pagination feature ( page numbers should appear at the very bottom and should be horizontally centered).

Add Features by yourself

If anyone of you feels that this listing webapp could have more features. Just open a pull request with the same and I'll look into the idea and if it seems good we'll go with it.
Some examples could be :

  1. Adding the profile section of the user(think of what fields you can show there in his profile)
  2. We can also allow users the edit their profile ( changing username/password and all)
  3. Show movies on the home screen according to different genres if available in MovieDB API(explore the API and if feasible, we can do it)
    .... my part is over , now you guys think of some feature and add it..

Movie details screen

Add another screen for the details of the movie (eg. genre , release data , imdb rating , cast etc.) using the moviedb API ( like any typical movie/series screen opens when clicking on it)

Adding Confirm Password Functionality

We could have a confirm password field and the user will only be registered if both the passwords entered match. Additionally, we could also check if the password is 8 characters long or not as lengthier passwords are safer.

Add link for homepage of the movie

For each movie, the API returns a link for the homepage of the movie. We can add a button beside the movie name to redirect to that page. Can I do this?

Update Readme.md

Add info about : now we can also see the details of a specific movie.

Also, Update the Screenshots added as the UI has changed a lot ( just add the image in the PR and pick the URL and use it in readme.md as previously done )

You can also add anything missing or any new feature we added.

Add a better text in favourites

@Swarnim01, when there are no movies in the favorites, the screen is blank. We can rather add a text to show that it is empty or no favorites are added . Can I work on it?

Add a loader

Currently, till the cards of movies are fetched the screen remains black. It would be better to add a loader for better user experience. Can I work on it?

Add Google Authentication

1> I would like to add google authentication to the sign up page , making it more convenient for the user.
2> providing more authenticated database , then after.

so create an issue and assign it to me .

Originally posted by @Manoramsharma in #10 (comment)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.