{"id":13521943,"url":"https://github.com/ghomasHudson/Jellyfin-Auto-Collections","last_synced_at":"2025-03-31T22:30:22.585Z","repository":{"id":38195478,"uuid":"501612725","full_name":"ghomasHudson/Jellyfin-Auto-Collections","owner":"ghomasHudson","description":"Automatically make jellyfin collections from IMDB, Letterboxd lists and more.","archived":false,"fork":false,"pushed_at":"2025-03-07T22:34:15.000Z","size":170,"stargazers_count":135,"open_issues_count":4,"forks_count":16,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-28T19:03:25.941Z","etag":null,"topics":["films","imdb","jellyfin","letterboxd","media","movies","trakt"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ghomasHudson.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"ghomasHudson"}},"created_at":"2022-06-09T10:49:29.000Z","updated_at":"2025-03-21T03:12:44.000Z","dependencies_parsed_at":"2024-03-07T12:43:56.577Z","dependency_job_id":"2a927ec1-085b-48e7-b8fd-5cc0c18e9fc1","html_url":"https://github.com/ghomasHudson/Jellyfin-Auto-Collections","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghomasHudson%2FJellyfin-Auto-Collections","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghomasHudson%2FJellyfin-Auto-Collections/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghomasHudson%2FJellyfin-Auto-Collections/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghomasHudson%2FJellyfin-Auto-Collections/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ghomasHudson","download_url":"https://codeload.github.com/ghomasHudson/Jellyfin-Auto-Collections/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246552037,"owners_count":20795755,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["films","imdb","jellyfin","letterboxd","media","movies","trakt"],"created_at":"2024-08-01T06:00:39.991Z","updated_at":"2025-03-31T22:30:22.577Z","avatar_url":"https://github.com/ghomasHudson.png","language":"Python","funding_links":["https://github.com/sponsors/ghomasHudson"],"categories":["Python","👾 Companion Apps \u0026 Tools"],"sub_categories":["📁 Media Organization"],"readme":"# Jellyfin Auto Collections\n\nA tool to automatically make and update [jellyfin](https://jellyfin.org) collections based on internet lists such as IMDb and letterboxd.\n\n```\nGetting collections list...\n\nfound /r/TrueFilm Canon (1000 films) 015dee24c79dacfa80300afb7577fc37\n************************************************\n\nCan't find A Trip to the Moon\nCan't find The Birth of a Nation\nCan't find Intolerance: Love\u0026#039;s Struggle Throughout the Ages\nCan't find A Man There Was\nCan't find The Cabinet of Dr. Caligari\nAdded Big Buck Bunny cc561c8b1d5da3a080cdb61ebe44d1a7\nAdded Big Buck Bunny 2 0515533b716e8fe76d3b630f9b9b6d51\nCan't find Nosferatu\nCan't find Dr. Mabuse, the Gambler\nCan't find Häxan\nAdded Big Buck Bunny 3 9a6b8002ef8f12a0611e92f5104d8b8e\nCan't find Sherlock, Jr.\nCan't find Greed\nCan't find The Last Laugh\nCan't find Battleship Potemkin\nAdded Big Buck Bunny 5 98690cc73413b12593988687ee737a27\nCan't find Ménilmontant\n...\n```\n\n![pic-selected-220609-1405-13](https://user-images.githubusercontent.com/13795113/172853971-8b5ab33b-58a9-4073-8a28-c471e9710cdc.png)\n\n## Supported List Sources\n\n- IMDB Charts - e.g. [Top 250 Movies](https://imdb.com/chart/top), [Top Box Office](https://imdb.com/chart/boxoffice)\n- IMDB Lists - e.g. [Top 100 Greatest Movie of All time](https://imdb.com/list/ls055592025)\n- Letterboxd - e.g. [Movies everyone should watch at least once...](https://letterboxd.com/fcbarcelona/list/movies-everyone-should-watch-at-least-once)\n- mdblist - e.g. [Top Movies of the week](https://mdblist.com/lists/garycrawfordgc/top-movies-of-the-week)\n- They Shoot Pictures, Don't They - [The 1,000 Greatest Films](https://www.theyshootpictures.com/gf1000_all1000films_table.php)\n- Trakt - e.g. [Popular Movies](https://trakt.tv/movies/popular). See the [Wiki](https://github.com/ghomasHudson/Jellyfin-Auto-Collections/wiki/Plugin-%E2%80%90-Trakt) for instructions.\n- Jellyfin API Queries - Make lists which match a particular filter from the [Jellyfin API](https://api.jellyfin.org/). See the [Wiki](https://github.com/ghomasHudson/Jellyfin-Auto-Collections/wiki/Plugin-%E2%80%90-Jellyfin-API) for some usage examples. \n\nPlease feel free to send pull requests with more!\n\n## Usage\n\nFirst, copy `config.yaml.example` to `config.yaml` and change the values for your specific jellyfin instance.\n\n### Bare Metal\n\nMake sure you have Python 3 and pip installed.\n\nInstall the requirements with `pip install -r requirements.txt`.\n\nThen run `python main.py`.\n\n### Docker\n\nThe easiest way to get going is to use the provided `docker-compose.yml` configuration. Whatever directory you end up mapping to the `/app/config` directory needs to contain your updated `config.yaml` file:\n\n```yaml\nservices:\n  jellyfin-auto-collections:\n    image: ghcr.io/ghomashudson/jellyfin-auto-collections:latest\n    container_name: jellyfin-auto-collections\n    environment:\n      - CRONTAB=0 0 * * *\n      - TZ=America/New_York\n      - JELLYFIN_SERVER_URL=https://www.jellyfin.example.com\n      - JELLYFIN_API_KEY=1a1111aa1a1a1aaaa11a11aa111aaa11\n      - JELLYFIN_USER_ID=2b2222bb2b2b2bbbb22b22bb222bbb22\n    volumes:\n      - ${CONFIG_DIR}/jellyfin-auto-collections/config:/app/config\n    restart: unless-stopped\n```\n\n\n#### Configuration Options\n\n| Environment Variable           | Description                                                                                                  |\n| ------------------------------ | ------------------------------------------------------------------------------------------------------------ |\n| JELLYFIN_SERVER_URL            | The URL of your Jellyfin instance                                                                            |\n| JELLYFIN_API_KEY               | Generated API Key                                                                                            |\n| JELLYFIN_USER_ID               | UserID from the URL of your Profile in Jellyfin                                                              |\n| CRONTAB                        | The interval the scripts will be run on in crontab syntax. Blank to disable scheduling.                      |\n| TZ                             | Timezone the interval will be run in. No effect is scheduling is disabled.                                   |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FghomasHudson%2FJellyfin-Auto-Collections","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FghomasHudson%2FJellyfin-Auto-Collections","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FghomasHudson%2FJellyfin-Auto-Collections/lists"}