diff --git a/defaults/chart/letterboxd.yml b/defaults/chart/letterboxd.yml new file mode 100644 index 00000000..81fd4e5b --- /dev/null +++ b/defaults/chart/letterboxd.yml @@ -0,0 +1,230 @@ +############################################################################## +# Letterboxd Charts Collections # +# Created by Yozora, Bullmoose20, & Sohjiro # +# Special thanks to Kevin2kkelly for their contributions to this # +# EDITING THIS FILE MAY CAUSE PULLING NEW UPDATES TO FAIL # +# https://kometa.wiki/en/latest/defaults/chart/letterboxd.html # +############################################################################## + +external_templates: + default: templates + template_variables: + collection_section: "020" + image: chart/<> + sort_title: <><><
><>>>LB_<>
+
+templates:
+  letterboxd_list:
+    letterboxd_list: https://letterboxd.com/<>/list/<>
+
+collections:
+  "Letterboxd Top 250":
+    variables:
+      key: top_250
+    template:
+      - name: letterboxd_list
+        user: dave
+        list: official-top-250-narrative-feature-films
+      - name: shared
+        translation_key: letterboxd_top_250
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Box Office Mojo All Time 100":
+    variables:
+      key: boxofficemojo_100
+    template:
+      - name: letterboxd_list
+        user: matthew
+        list: box-office-mojo-all-time-worldwide
+      - name: shared
+        translation_key: box_office_mojo_all_time_100
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "AFI 100 Years 100 Movies":
+    variables:
+      key: afi_100
+    template:
+      - name: letterboxd_list
+        user: afi
+        list: afis-100-years100-movies-10th-anniversary
+      - name: shared
+        translation_key: afi_100_years_100_movies
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Sight & Sound Greatest Films":
+    variables:
+      key: sight_sound
+    template:
+      - name: letterboxd_list
+        user: bfi
+        list: sight-and-sounds-greatest-films-of-all-time
+      - name: shared
+        translation_key: sight_and_sound_greatest_films
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "1,001 To See Before You Die":
+    variables:
+      key: 1001_movies
+    template:
+      - name: letterboxd_list
+        user: gubarenko
+        list: 1001-movies-you-must-see-before-you-die-2021
+      - name: shared
+        translation_key: 1001_movies_to_see_before_you_die
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Edgar Wright's 1,000 Favorites":
+    variables:
+      key: edgarwright
+    template:
+      - name: letterboxd_list
+        user: crew
+        list: edgar-wrights-1000-favorite-movies
+      - name: shared
+        translation_key: edgar_wrights_1000_favorites
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Roger Ebert's Great Movies":
+    variables:
+      key: rogerebert
+    template:
+      - name: letterboxd_list
+        user: dvideostor
+        list: roger-eberts-great-movies
+      - name: shared
+        translation_key: roger_eberts_great_movies
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Top 250 Women-Directed":
+    variables:
+      key: women_directors
+    template:
+      - name: letterboxd_list
+        user: jack
+        list: women-directors-the-official-top-250-narrative
+      - name: shared
+        translation_key: top_250_women_directed
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Top 100 Black-Directed":
+    variables:
+      key: black_directors
+    template:
+      - name: letterboxd_list
+        user: jack
+        list: black-directors-the-official-top-100-narrative
+      - name: shared
+        translation_key: top_100_black_directed
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Top 250 Most Fans":
+    variables:
+      key: most_fans
+    template:
+      - name: letterboxd_list
+        user: jack
+        list: official-top-250-films-with-the-most-fans
+      - name: shared
+        translation_key: top_250_most_fans
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Top 250 Documentaries":
+    variables:
+      key: documentaries
+    template:
+      - name: letterboxd_list
+        user: jack
+        list: official-top-250-documentary-films
+      - name: shared
+        translation_key: top_250_documentaries
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Top 100 Animation":
+    variables:
+      key: animation
+    template:
+      - name: letterboxd_list
+        user: lifeasfiction
+        list: letterboxd-100-animation
+      - name: shared
+        translation_key: top_100_animation
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "Top 250 Horror":
+    variables:
+      key: horror
+    template:
+      - name: letterboxd_list
+        user: darrencb
+        list: letterboxds-top-250-horror-films
+      - name: shared
+        translation_key: top_250_horror
+        summary: <>>>
+      - name: arr
+      - name: custom
+
+  "IMDb Top 250 (Letterboxd)":
+    variables:
+      key: imdb_top_250
+    template:
+      - name: letterboxd_list
+        user: dave
+        list: imdb-top-250
+      - name: shared
+        translation_key: imdb_top_250
+        summary: <>>>
+        use_imdb_top_250: false
+      - name: arr
+      - name: custom
+
+  "Oscar Best Picture Winners":
+    variables:
+      key: oscars
+    template:
+      - name: letterboxd_list
+        user: jake_ziegler
+        list: academy-award-winners-for-best-picture
+      - name: shared
+        translation_key: oscars_best_picture_winners
+        summary: <>>>
+        use_oscars: false
+      - name: arr
+      - name: custom
+
+  "Cannes Palme d'Or Winners":
+    variables:
+      key: cannes
+    template:
+      - name: letterboxd_list
+        user: brsan
+        list: cannes-palme-dor-winners
+      - name: shared
+        translation_key: cannes_palmes_dor_winners
+        summary: <>>>
+        use_cannes: false
+      - name: arr
+      - name: custom
diff --git a/docs/branding/!_branding_grid.jpg b/docs/branding/!_branding_grid.jpg
new file mode 100644
index 00000000..072b6178
Binary files /dev/null and b/docs/branding/!_branding_grid.jpg differ
diff --git a/docs/defaults/chart/letterboxd.md b/docs/defaults/chart/letterboxd.md
new file mode 100644
index 00000000..1b85f1f7
--- /dev/null
+++ b/docs/defaults/chart/letterboxd.md
@@ -0,0 +1,105 @@
+# Letterboxd Charts Collections
+
+The `letterboxd` Default Collection File is used to create collections based on lists from Letterboxd.
+
+![](../images/letterboxd.png)
+
+## Requirements & Recommendations
+
+Supported Library Types: Movie
+
+Recommendations: Users might consider increasing the value set for the template variable `cache_builders:` as several lists are in excess of 1,000 items and are not updated daily. 
+
+The collections `IMDb Top 250 (Letterboxd)`, `Oscar Best Picture Winners`, and `Cannes Palme d'Or Winners` are turned off by default as these collections already exist within other defaults. Refer to the examples below for turning the collections on within the Letterboxd defaults using template variables.
+
+## Collections Section 020
+
+| Collection                       | Key                 | Description                                                                   |
+|:---------------------------------|:--------------------|:------------------------------------------------------------------------------|
+| `Letterboxd Top 250`             | `top_250`           | Collection of the Top 250 films on Letterboxd.                                |
+| `Box Office Mojo All Time 100`   | `boxofficemojo_100` | Collection of Box Office Mojo's all-time top 100 films.                       |
+| `AFI 100 Years 100 Movies`       | `afi_100`           | Collection of AFI's 100 Years...100 Movies.                                   |
+| `Sight & Sound Greatest Films`   | `sight_sound`       | Collection of Sight and Sound's Greatest Films of All Time.                   |
+| `1,001 To See Before You Die`    | `1001_movies`       | Collection of 1,001 Movies You Must See Before You Die.                       |
+| `Edgar Wright's 1,000 Favorites` | `edgarwright`       | Collection of Edgar Wright's 1,000 Favorite Movies.                           |
+| `Roger Ebert's Great Movies`     | `rogerebert`        | Collection of films from Roger Ebert's "Great Movies" essays.                 |
+| `Top 250 Women-Directed`         | `women_directors`   | Collection of the Top 250 Women-Directed films on Letterboxd.                 |
+| `Top 100 Black-Directed`         | `black_directors`   | Collection of the Top 100 Black-Directed films on Letterboxd.                 |
+| `Top 250 Most Fans`              | `most_fans`         | Collection of the Top 250 films with the most fans on Letterboxd.             |
+| `Top 250 Documentaries`          | `documentaries`     | Collection of the Top 250 documentary films on Letterboxd.                    |
+| `Top 100 Animation`              | `animation`         | Collection of the Top 100 animated films on Letterboxd.                       |
+| `Top 250 Horror`                 | `horror`            | Collection of the Top 250 horror films on Letterboxd.                         |
+| `IMDb Top 250 (Letterboxd)`      | `imdb_top_250`      | Collection of the Top 250 Movies on IMDb, from Letterboxd.                    |
+| `Oscar Best Picture Winners`     | `oscars`            | Collection of films that have won the Academy Award for Best Picture.         |
+| `Cannes Palme d'Or Winners`      | `cannes`            | Collection of films that have won the Palme d'Or at the Cannes Film Festival. |
+
+## Config
+
+The below YAML in your config.yml will create the collections:
+
+```yaml
+libraries:
+  Movies:
+    collection_files:
+      - default: letterboxd
+```
+
+## Template Variables
+
+Template Variables can be used to manipulate the file in various ways to slightly change how it works without having to 
+make your own local copy.
+
+Note that the `template_variables:` section only needs to be used if you do want to actually change how the defaults 
+work. Any value not specified will use its default value if it has one if not it's just ignored.
+
+??? abstract "Variable Lists (click to expand)"
+
+    * **File-Specific Template Variables** are variables available specifically for this Kometa Defaults file.
+
+    * **Shared Template Variables** are additional variables shared across the Kometa Defaults.
+
+    === "File-Specific Template Variables"
+
+        | Variable                               | Description & Values                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
+        |:---------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+        | `sync_mode`                            | **Description:** Changes the Sync Mode for all collections in a Defaults file.
**Default:** `sync`
**Values:**
`sync`Add and Remove Items based on Builders
`append`Only Add Items based on Builders
| + | `sync_mode_<>`1 | **Description:** Changes the Sync Mode of the specified key's collection.
**Default:** `sync_mode`
**Values:**
`sync`Add and Remove Items based on Builders
`append`Only Add Items based on Builders
| + | `collection_order` | **Description:** Changes the Collection Order for all collections in a Defaults file.
**Default:** `custom`
**Values:**
`release`Order Collection by Release Dates
`alpha`Order Collection Alphabetically
`custom`Order Collection Via the Builder Order
[Any `plex_search` Sort Option](../../files/builders/plex.md#sort-options)Order Collection by any `plex_search` Sort Option
| + | `collection_order_<>`1 | **Description:** Changes the Collection Order of the specified key's collection.
**Default:** `collection_order`
**Values:**
`release`Order Collection by Release Dates
`alpha`Order Collection Alphabetically
`custom`Order Collection Via the Builder Order
[Any `plex_search` Sort Option](../../files/builders/plex.md#sort-options)Order Collection by any `plex_search` Sort Option
| + + 1. Each default collection has a `key` that when calling to effect a specific collection you must replace + `<>` with when calling. + + === "Shared Template Variables" + + {% + include-markdown "../collection_variables.md" + %} + +???+ example "Example Template Variable Amendments" + + The below is an example config.yml extract with some Template Variables added in to change how the file works. + + Click the :fontawesome-solid-circle-plus: icon to learn more + + ```yaml + libraries: + Movies: + collection_files: + - default: letterboxd + template_variables: + use_imdb_top_250: true #(1)! + use_oscars: true #(2)! + use_cannes: true #(3)! + visible_library_top_250: true #(4)! + visible_home_top_250: true #(5)! + visible_shared_top_250: true #(6)! + ``` + + 1. Create the "IMDb Top 250 (Letterboxd)" collection + 2. Create the "Oscar Best Picture Winners" collection + 3. Create the "Cannes Palme d'Or Winners" collection + 4. Pin the "Letterboxd Top 250" collection to the Recommended tab of the library + 5. Pin the "Letterboxd Top 250" collection to the home screen of the server owner + 6. Pin the "Letterboxd Top 250" collection to the home screen of other users of the server + diff --git a/docs/defaults/images/letterboxd.png b/docs/defaults/images/letterboxd.png new file mode 100644 index 00000000..292c892f Binary files /dev/null and b/docs/defaults/images/letterboxd.png differ