npm.io
3.0.2 • Published 1 month agoCLI

movie-art

Licence
MIT
Version
3.0.2
Deps
2
Size
12 kB
Vulns
0
Weekly
0
Stars
11
movie-art

Fetch movie and TV poster + backdrop URLs ➔ "Crash" → http://path/to/crash.jpg

npm version npm downloads CI License Try on RunKit

movie-art demo

This library is feature-complete and only receives bug-fix updates. Feature requests still welcome — please open an issue.

Features

  • Use anywhere — browser or Node, UMD bundle (browser support)
  • Works in React + Next.js, client and server, via isomorphic-fetch
  • Promise and callback API
  • Movies and television
  • Poster (portrait) or backdrop (landscape) — or both at once
  • Multiple poster sizes from TMDB

Install

npm install movie-art

In the browser:

<!-- movieArt as a window global -->
<script src="https://unpkg.com/movie-art"></script>

Also available via JSDelivr.

Usage

const movieArt = require("movie-art");

movieArt("Oceans Eleven").then(console.log);
//=> http://path/to/oceans_eleven.jpg
Callback form
movieArt("Oceans Eleven", (error, response) => {
  console.log(response);
  //=> http://path/to/oceans_eleven.jpg
});
Year + size options
movieArt("Oceans Eleven", { year: "1960", size: "w92" }).then(console.log);
//=> http://path/to/oceans_eleven_poster_1960_small.jpg
Backdrop + poster at once
movieArt("Oceans Eleven", { output: "all" }).then(console.log);
//=> {
//     poster:   "http://path/to/oceans_eleven_poster.jpg",
//     backdrop: "http://path/to/oceans_eleven_backdrop.jpg",
//   }
Television
movieArt("Star Trek: The Original Series", { type: "tv", output: "all" })
  .then(r => console.log(r.poster));
//=> http://path/to/star_trek_the_original_series_poster.jpg

Try it live — open in RunKit (here's an example output).

API

movieArt(search [, options] [, callback])

Accepts a movie or TV show title and returns a Promise resolving to a URL string (or an object, with output: "all").

Option Type Default Description
year string Optional release year disambiguator
size "w92" | "w154" | "w185" | "w342" | "w500" | "w780" | "original" "original" Poster size
type "movie" | "tv" "movie" Movie or television search
output "poster" | "backdrop" | "all" "poster" What to return

The third argument may also be a Node-style (err, response) => void callback.

CLI

npm install --global movie-art

movie-art --help
#  Usage
#    $ movie-art <search> [flags]
#
#  Flags
#    --year,   -y  Release year
#    --size,   -s  w92 | w154 | w185 | w342 | w500 | w780 | original
#    --type,   -t  tv | movie     (default: movie)
#    --output, -o  poster | backdrop | all  (default: poster)
#
#  Example
#    $ movie-art 'Oceans Eleven' --year 1960 --size w92
#    => http://path/to/oceans_eleven_poster_1960_small.jpg

Part of a small family of media-data utilities:

Acknowledgments

License

MIT Lacy Morrow

If movie-art saved you time, consider sponsoring on GitHub, supporting on Patreon, or buying a coffee.