dirtystylus / letterboxd

:movie_camera::clapper: get public diary data for letterboxd users

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

letterboxd

npm

get public data for letterboxd users

currently only consumes the RSS feeds from letterboxd, when API is released this will be used

installation

npm install letterboxd --save

usage

function(username, [format], [callback])

Returns a promise if no callback is provided.

import letterboxd from "letterboxd";

letterboxd("rubencordeiro")
  .then((items) => console.log(items))
  .catch((error) => console.log(error));

format

Pass “markdown” as the optional format parameter for Markdown output in each film’s review.

import letterboxd from "letterboxd";

letterboxd("rubencordeiro", "markdown")
  .then((items) => console.log(items))
  .catch((error) => console.log(error));

output

output is an array of items.

there are two types of items: diary entries and lists.

due to the limitation of the data source (scraping a RSS feed), only the 20 most recent diary entries are returned

items of note for the list type:

  • ranked: shows if it was set to ranked (1, 2, 3, 4).
  • films: films in the list, capped at 10
  • totalFilms: the total amount of films in the list, only 10 films are given here.
[
  {
    type: "diary",
    film: {
      title: "Zootopia",
      year: "2016",
      image: { tiny: "...", small: "...", medium: "...", large: "..." },
    },
    rating: { text: "★★★★", score: 4 },
    review: "proper cute, funny and interesting through out. Co-directed by Byron Howard, who also directed Tangled.",
    spoilers: false,
    isRewatch: false,
    date: { watched: 1463702400000, published: 1463784779000 },
    uri: "https://letterboxd.com/zoetrope69/film/zootopia/",
  },
  //...
  {
    type: "list",
    date: {
      published: 1473470608000,
    },
    title: "All The Toy Stories",
    description: "I fucking love these films lol",
    ranked: false,
    films: [
      { title: "Toy Story", uri: "https://letterboxd.com/film/toy-story/" },
      { title: "Toy Story 2", uri: "https://letterboxd.com/film/toy-story-2/" },
      { title: "Toy Story 3", uri: "https://letterboxd.com/film/toy-story-3/" },
      {
        title: "Toy Story That Time Forgot",
        uri: "https://letterboxd.com/film/toy-story-that-time-forgot/",
      },
      {
        title: "Toy Story of Terror!",
        uri: "https://letterboxd.com/film/toy-story-of-terror/",
      },
    ],
    totalFilms: 56,
    uri: "https://letterboxd.com/zoetrope69/list/tiff-2016/",
  },
  //...
];

If “markdown” is passed as the format parameter then HTML elements in the review text will be converted to Markdown:

[
  {
    type: "diary",
    film: {
      title: "Zootopia",
      year: "2016",
      image: { tiny: "...", small: "...", medium: "...", large: "..." },
    },
    rating: { text: "★★★★", score: 4 },
    review: "_proper_ cute, funny and interesting through out. Co-directed by Byron Howard, who also directed [Tangled](https://letterboxd.com/film/tangled-2010/).",
    spoilers: false,
    isRewatch: false,
    date: { watched: 1463702400000, published: 1463784779000 },
    uri: "https://letterboxd.com/zoetrope69/film/zootopia/",
  },
  //...

About

:movie_camera::clapper: get public diary data for letterboxd users


Languages

Language:JavaScript 100.0%