Giter Club home page Giter Club logo

mcuapi's Introduction

πŸ“– Index


πŸ“‘ About the project

A RESTFul API for MCU (Marvel Cinematic Universe)! Movies and TV Shows. Characters coming soon! See the new documentation! If you have any suggestions, please open an issue!


➑ Endpoints

baseURL: https://mcuapi.herokuapp.com/api/v1

docs: https://mcuapi.herokuapp.com/docs


πŸ†• Next features

  • πŸ”œ Characters information (you can see more details on this issue);
  • ⏳ An edit page where anyone can register, create/update the movies/tv-shows/characters' data and submit for final approval;
  • ⏳ A change in cover_url and trailer_url to get them as an array of covers and trailers;
  • ⏳ A new field for movies/tv-shows indicating the last time the information has been updated (you can see more details on this issue);
  • πŸ”œ A new field for movies/tv-shows indicating the streamings where they can be found (you can see more details on this issue).

❓ How to run

  • clone the project to your local:
 git clone https://github.com/AugustoMarcelo/mcuapi

Running the project in development mode

  • create a .env file and put database and environment information. You can use the .env.example from the project;
  • inside the .env the NODE_ENV variable should be development. This tells the ormconfig where the files are located;
  • to configure the database structure and seeds, you should run the following commands:
  # creating tables
  yarn typeorm:dev migration:run

  # inserting data
  yarn seed:run:dev
  • run yarn dev:server to start the project and access it in the default 3333 port. You can also configure the port in the .env file.

Running the project in production mode

  • create a .env file and put database and environment information. You can use the .env.example from the project;
  • inside the .env the NODE_ENV variable should be production. This tells the ormconfig where the built files are located;
  • to configure the database structure and seeds, you should run the following commands:
  # creating tables
  yarn typeorm migration:run

  # inserting data
  yarn seed:run
  • run yarn build or npm run build to generate the ./dist folder. The ormconfig will point to this folder;
  • run yarn start or npm run start to start the project in the default 3333 port. You can also configure the port in the .env file.

πŸ’₯ Changelogs

2022-08-17: Movies | TV Shows updated
  • UPDATED
    • Doctor Strange in the Multiverse of Madness: box_office
    • Thor: Love and Thunder: box_office
    • I Am Groot: cover_url, directed_by, saga
    • She-Hulk: Attorney at Law: cover_url, release_date
2022-07-25: Movies | TV Shows added/updated
  • ADDED

    • Captain America: New World Order
    • Thunderbolts
    • Avengers: The Kang Dynasty
    • Avengers: Secret Wars
    • Daredevil: Born Again
  • UPDATED

    • Shang-Chi and The Legend of The Ten Rings: saga
    • Eternals: saga
    • Spider-Man: No Way Home: saga
    • Doctor Strange in the Multiverse of Madness: saga, box_office
    • Thor: Love and Thunder: saga, box_office
    • Black Panther: Wakanda Forever: overview, cover_url, trailer_url, saga, chronology
    • Ant-Man and The Wasp: Quantumania: overview, phase, saga, chronology
    • Guardians of the Galaxy Vol. 3: overview, phase, saga, chronology
    • The Marvels: phase, saga, chronology
    • Blade: release_date, phase, saga, chronology
    • Fantastic Four: release_date, phase, saga, chronology, directed_by
    • WandaVision: saga
    • The Falcon and The Winter Soldier: saga
    • Loki: saga
    • What If...?: saga
    • Hawkeye: saga
    • Moon Knight: saga
    • Ms. Marvel: saga
    • I Am Groot: overview, number_episodes, last_aired_date, saga
    • She-Hulk: title, trailer_url, saga
    • Secret Invasion: overview, phase, saga
    • Echo: phase, saga
    • Ironheart: phase, saga
    • Agatha: House of Harkness: title, phase, saga
2022-07-11: Movies | TV Shows added/updated
  • ADDED

    • I Am Groot
    • Secret Invasion
    • Ironheart
    • Armor Wars
    • The Guardians of the Galaxy Holiday Special
    • Echo
    • Agatha: House of Harkness
  • UPDATED

    • She-Hulk: Attorney at Law: release_date
    • Doctor Strange in the Multiverse of Madness: updated box_office
    • Thor: Love and Thunder: updated duration, box_office and post_credit_scenes
2022-06-19: Movies updated
  • UPDATED
    • Doctor Strange in the Multiverse of Madness: updated box_office
    • Shang-Chi: updated box_office
    • Spider-Man: No Way Home: updated box_office
    • Thor: Love and Thunder: updated duration
2022-05-17: Movies updated
  • UPDATED
    • Doctor Strange in the Multiverse of Madness: updated box_office
    • Thor: Love and Thunder: updated trailer_url and cover_url
2022-05-17: Movies|TV Shows added/updated
  • ADDED

    • She-Hulk: Attorney at Law
  • UPDATED

    • Doctor Strange in the Multiverse of Madness: updated box_office
    • Ms. Marvel: updated overview and last_aired_date
2022-05-04: Movies|TV Shows updated
  • UPDATED
    • Ms. Marvel: updated overview and release_date
    • Moon Knight: updated last_aired_date and number_episodes
    • Doctor Strange in the Multiverse of Madness: updated post_credit_scenes
2022-05-01: Movies updated
  • UPDATED
    • The Marvels: updated release_date
    • Ant-Man and The Wasp: Quantumania: update release_date
    • Thor: Love and Thunder: added overview
2022-04-18: Movies updated
  • UPDATED
    • Spider-Man: No Way Home: updated box_office, chronology and related movies
    • Doctor Strange in the Multiverse of Madness: updated duration, chronology and related movies
    • Thor: Love and Thunder: updated cover, trailer_url, chronology and related movies
2022-03-16: TV Shows added/updated
  • ADDED

    • Ms. Marvel
  • UPDATED

    • Moon Knight: updated cover_url
2022-02-20: Movies|TV Shows added/updated
  • UPDATED
    • Doctor Strange in the Multiverse of Madness: updated cover and trailer_url
    • Spider-Man: No Way Home: updated box_office
2022-01-22: Movies|TV Shows added/updated
  • ADDED

    • Moon Knight
  • UPDATED

    • Eternals: updated cover and box_office
    • Spider-Man: No Way Home: updated box_office
    • Shang-Chi: updated box_office
2022-01-06: Movies|TV Shows updated
  • UPDATED
    • Black Panther: Wakanda Forever: updated cover
    • Doctor Strange in the Multiverse of Madness: updated cover
    • Hawkeye: updated cover
2021-12-28: Movies|TV Shows updated
  • UPDATED
    • Spider-Man: No Way Home: updated box_office, duration, cover, trailer_url and post_credit_scenes
    • Eternals: updated box_office
    • Shang-Chi: updated box_office
    • Black Widow: updated box_office
    • Spider-Man: Far From Home: updated box_office
    • Doctor Strange in the Multiverse of Madness: updated trailer_url
    • Hawkeye: updated cover and last_aired_episode
2021-11-13: Movies updated
  • UPDATED
    • Spider-Man: No Way Home: updated cover
2021-11-06: Movies updated
  • UPDATED
    • Eternals: updated duration and post_credit_scenes
    • Doctor Strange in the Multiverse of Madness: update release_date
    • Thor: Love and Thunder: update release_date
    • Black Panther: Wakanda Forever: update release_date
    • The Marvels: update release_date
    • Ant-Man and The Wasp: Quantumania: update release_date
2021-09-19: TV Shows updated
  • ADDED
    • What If...?
    • Hawkeye
2021-08-28: Movies updated
  • UPDATED
    • Spider-Man: No Way Home: updated overview, trailer_url and related_movies
2021-08-21: Movies updated
  • UPDATED
    • Shang-Chi: updated cover, title, duration and post_credit_scenes
    • The Avengers: updated box_office
    • Guardians of the Galaxy: updated box_office
    • Guardians of the Galaxy Vol. 2: updated box_office
    • Avengers: Age of Ultron: updated box_office
    • Captain America: Civil War: updated box_office
    • Doctor Strange: updated box_office
    • Thor: Ragnarok: updated box_office
    • Black Panther: updated box_office
    • Avengers: Infinity War: updated box_office
    • Captain Marvel: updated box_office
    • Avengers: Endgame: updated box_office
    • Spider-Man: Far From Home: updated box_office
    • Black Widow: updated box_office
    • Eternals: updated trailer_url
2021-07-31: Movies updated
  • UPDATED - Black Panther: updated chronology - Avengers: Infinity War: updated chronology - Ant-Man and The Wasp: updated chronology - Black Widow: updated chronology - Shang-Chi: updated cover - Added a property related_movies to movies/{id} endpoint that returns all related movies
2021-07-14: Movies|TV Shows updated
  • UPDATED
    • Loki: updated last_aired_date
    • Black Widow: updated chronology
2021-07-04: Movies|TV Shows updated
  • UPDATED
    • All movies and tv shows: added imdb_id property
    • Black Widow: updated cover
2021-06-12: Movies updated
  • UPDATED
    • The Marvels: updated cover
2021-05-24: Movies|TV Shows updated
  • UPDATED
    • The Eternals: updated title, overview, cover and trailer_url
    • Loki: updated cover
2021-05-04: Movies|TV Shows updated
  • UPDATED
    • Captain Marvel 2: updated title
    • Black Panther 2: updated title and overview
    • Ant-Man and The Wasp: Quantumania: updated release_date
    • Loki: updated overview, cover_url and release_date
  • ADDED
    • Guardians of the Galaxy Vol .3

mcuapi's People

Contributors

augustomarcelo avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

mcuapi's Issues

:exclamation: Breaking Change | TV Show

Hi, guys!

I just decided to create this issue to warn you that soon I'll be releasing a tiny version where the property number_seasons inside the TV Show model will be changed to season. The goal with this change is just to handle the TV Show seasons as a different object since each season can be placed inside different phases/sagas.

Characters model

Hey, everyone!

I'm working on the characters model and I'm thinking about what data would be good to have. This is the minimum that all characters will have:

  • ID
  • Name
  • Bio
  • Posters
  • Related Movies
  • Related TV Shows

Problem: Can't run code on a local server

Modified configuration for using SQLite instead of Postgres. I was able to run migrations, seed database and run in dev mode, but not in production mode. After building with "npm run build" that seems fine, when running "npm run start" I get an error

(path to this file in the src folder)/Movie.ts:1
import { Entity, PrimaryColumn, Column, ManyToMany, JoinTable } from 'typeorm';
^^^^^^

SyntaxError: Cannot use import statement outside a module

Cloned your repo again, installed postgres locally and tried to build and run your unmodified code but got same error.

Googled for a possible solution but adding/changing several properties in tsconfig.json and package.json didn't worked, and as I am not myself a Typescript developer did not really know what I was doing :) any idea what is the problem? (by the way, very nice project!!)

Incorrect/Missing Related Movies

It seems like not all of the related movies are correct. For example, the related movies for Iron Man 2 include Iron Man 2 but not Iron Man:
Screenshot 2023-03-02 at 4 41 37 PM

Similarly, the related movies for Iron Man 3 include Iron Man but not Iron Man 2. I haven't gone through all of the movies or shows, but wanted it to bring it to your attention.

Links caidos

Link de imagen de "Iron Man 2" y "doctor_strange_in_the_multiverse_of_madness" no muestran ninguna imagen.
Captura de pantalla 2023-02-13 125257

More tv shows, parameters and query

More tv shows

Hi can you add more tv shows please? I'm thinking about the ABC series like Agents of SHIELD, Agent Carter and Inhumans. As far as I know Agents of SHIELD and Agent carter are kinda connected to the MCU.

Response parameters

Can you change the directed_by parameter to be a list? For the Avangers Endgame it is confusing to have a list with two names instead of a list with two elements.

Query parameters

Are you tought adding query parameters to the API? It would be really useful for searching by title, phase and saga.

Awesome API, will use in the future. Thanks for your work and for making it open source.

About the tv shows...

I'm working on the tv shows. What kind of information would you like to see? I thought of the following:

  • id
  • title
  • overview
  • cover_url
  • number_seasons
  • number_episodes
  • release_date
  • directed_by

Suggestion: Add last updated data in the API

Hi! It would be nice to have a last updated data point in the API preferably for each TV Shows and Movies.

Also, thank you so much for collecting all the data about all Marvel's TV shows and movies into an API!

API Error

Any request to the api results in an application error. The response is: β€œAn error occurred in the application and your page could not be served. If you are the application owner, check your logs for details. You can do this from the Heroku CLI with the command heroku logs --tail”

Suggestion: Chronology for shows

Currently the movies have a chronology property with a number to order them chronologically. I would also like this property on the tv shows so all the projects can be ordered by that one property. I would love to hear if this is possible in some way.

Suggestion: Add Disney+ links to movies and TV shows

Hi! I think it would be good to also add the Disney+ links to movies and TV shows in "disneyplus_url" field.

For example:

{
  "id":26,
  "title":"Eternals",
  "release_date":"2021-11-05",
  "box_office":"402064929",
  "duration":157,
  "overview":"Marvel Studios' Eternals features an exciting new team of Super Heroes in the Marvel Cinematic Universe, ancient aliens who have been living on Earth in secret for thousands of years. Following the events of Avengers: Endgame, an unexpected tragedy forces them out of the shadows to reunite against mankind's most ancient enemy, The Deviants.",
  "cover_url":"https://raw.githubusercontent.com/AugustoMarcelo/mcuapi/master/covers/the-eternals.jpg",
  "trailer_url":"https://youtu.be/x_me3xsvDgk",
  "disneyplus_url": "https://www.disneyplus.com/movies/eternals/5cmhJAtkt6Jk"
  "directed_by":"ChloΓ© Zhao",
  "phase":4,
  "saga":null,
  "chronology":26,
  "post_credit_scenes":2,
  "imdb_id":"tt9032400",
  "related_movies":[]
}

Also, if there is any way in which I can help contribute to update the data on the API, I would be more than happy to help :)

Suggestion: replace autonumber id with uuid

It would help me if the ids of the movies and shows are an UUID because in my project i want to give users options to save a project and therefore the id of any project needs to be unique. I can add my own UUID but it will change everytime a new api call is executed. If it is not too much trouble of course :).

Suggestion: Add IMDB id to response

Hi,

I love the API and it does have sufficient stuff however, I would also like to build a personal app that has a bit more details, such as actors, additional images etc. Instead of adding those to the API it would be nice to have imdb_id for the movie/show returned so that we could make extra requests to movie databases to get extra info from there.

What do you think?

Question: Trailer URL

Full disclosure first, I'm still somewhat new at web development, so I may be approaching this issue incorrectly.

I would love to be able to play/embed the trailers in my own app, but it seems that the ways I've tried haven't worked (I keep getting a CORB error). It looks like the Trailer URL provided is the URL to watch the trailer, rather than a URL to embed it. Would it be possible to change that trailer_url field to just the ID of the video – that way we would be able to create our own embed link and just use that ID?

Suggestion: Add the newest projects

I would like to see the newest projects in the api. The projects i am missing now are:

  • Deadpool 3
  • Werewolf by night
    If you would like more information i could provide it for you.

Search endpoint

Hey, would it be possible to get a capability to search based on Phase and/or Saga? Or filter the results based on those?

Error getting movies.

Getting the following error in console log.

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

Suggestion: Add Streaming Platforms about the series and movies

** Hi I think you should maybe add a streaming indicator also something like avaibleOn:"Disney+ or Netflix". So nowaways there are many streaming platforms on the internet and I think its a great Idea to add this to the API.

Good Luck on your Project (Starred) **

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.