Skip to content

MovieSpot is a website for the latest and favourite TV shows, shipped with a really cool infinite scroll feature!. You can view the details of the show, "like" a show, and even comment. You can also see other comments which might give you a general idea about what people think about the show. It is built with HTML, CSS and JavaScript with data f…

License

Notifications You must be signed in to change notification settings

clintonjosephs/MovieSpot

Repository files navigation

MovieSpot

MovieSpot is website for the latest and favorite TV shows, shipped with a really cool infinite scroll feature!. You can view the details of the show, "like" a show, and even comment. You can also see other comments which might give you a general idea about what people think about the show. It is built with HTML, CSS and JavaScript with data from the TvMaze API(tv show data) and the Involvement API(likes and comments)

Video Presentation

Presentation Link

Live Demo

Website Link

Mini Demo

screenshot

Additional description about the project and its features.

Built With

  • Major languages (HTML, CSS, JavaScript)

  • Frameworks

        Bootstrap css framework
  • Technologies used

    - Webpack(Code Bundlng et al)
    - Jest(for testing)
    - Git(version control)
    - ESLint(JavaScript linting)
    - WebHint(linting tool)
    - Stylelint(style linting)

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

  • A text editor(preferably Visual Studio Code)

Install

Usage

Clone this repository

$ [email protected]:clintonjosephs/MovieSpot.git
$ cd MovieSpot

Run project

$ npm install
$ npm run start # this will make webpack watching for your changes in code
$ npm run test #This is to run the tests on the count method

Open page in browser

$ open dist/index.html

Interaction with the TvMaze API

  • Each new query for TV shows is done with the GET method using the BASEURL
      https://api.tvmaze.com/
    

To get all shows that the title begin with 'a', GET request will be made to the below URL

  https://api.tvmaze.com/search/shows?q=a

Interaction with the Involvement API

  • Each new query for Involvement API is done using the below as the BASEURL

      https://us-central1-involvement-api.cloudfunctions.net/capstoneApi/
    
  • To create a new app, a POST request is made to the API using the endpoint

      /apps/

    This returns the appID

      abc234

    Likes

  • A POST request is made to the API when a user clicks on the like button using this endpoint:

    Endpoint

      /apps/:app_id/likes/

    body parameters

    { 
        "item_id": "item1"
    }

    Return value for POST action: 201 status (created)

  • The GET request returns data in JSON format like this:

    [
      {
          "likes": 5,
          "item_id": "item1"
      },
      {
          "likes": 10,
          "item_id": "item2"
      }
    ]

Comments

  • A POST request is made to the API when a user clicks on the like button using this endpoint:

    Endpoint

      /apps/:app_id/comment/

    body parameters

    {
      "item_id": "item1",
      "username": "Jane",
      "comment": "Hello"
    }

    Return value for POST action: 201 status (created)

  • The GET request returns data in JSON format like this:

    Endpoint

      /apps/abc234/comments?item_id=item1

    It returns

    [
      {
          "comment": "This is nice!",
          "creation_date": "2021-01-10",
          "username": "John"
      },
      {
          "comment": "Great content!",
          "creation_date": "2021-02-10",
          "username": "Jane"
      }
    ]

Authors

👤 Clinton Mbonu

👤 Ahmed Tawfik

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

Show your support

Give a ⭐️ if you like this project!

📝 License

This project is MIT licensed.

About

MovieSpot is a website for the latest and favourite TV shows, shipped with a really cool infinite scroll feature!. You can view the details of the show, "like" a show, and even comment. You can also see other comments which might give you a general idea about what people think about the show. It is built with HTML, CSS and JavaScript with data f…

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published