{"id":13522176,"url":"https://github.com/CollinHeist/TitleCardMaker","last_synced_at":"2025-03-31T22:30:57.214Z","repository":{"id":37026375,"uuid":"420548535","full_name":"CollinHeist/TitleCardMaker","owner":"CollinHeist","description":"Automated title card maker for Plex, Jellyfin, and Emby","archived":false,"fork":false,"pushed_at":"2024-10-24T03:01:42.000Z","size":147538,"stargazers_count":467,"open_issues_count":97,"forks_count":22,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-10-24T19:56:46.493Z","etag":null,"topics":["docker","emby","emby-server","jellyfin","plex","plex-media-server","python"],"latest_commit_sha":null,"homepage":"https://titlecardmaker.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CollinHeist.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":"CollinHeist"}},"created_at":"2021-10-23T23:56:58.000Z","updated_at":"2024-10-22T22:35:55.000Z","dependencies_parsed_at":"2024-06-19T03:03:41.693Z","dependency_job_id":"b49a8579-66ec-4273-8e9e-d0cc5160df65","html_url":"https://github.com/CollinHeist/TitleCardMaker","commit_stats":null,"previous_names":[],"tags_count":67,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CollinHeist%2FTitleCardMaker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CollinHeist%2FTitleCardMaker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CollinHeist%2FTitleCardMaker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CollinHeist%2FTitleCardMaker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CollinHeist","download_url":"https://codeload.github.com/CollinHeist/TitleCardMaker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246552192,"owners_count":20795777,"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":["docker","emby","emby-server","jellyfin","plex","plex-media-server","python"],"created_at":"2024-08-01T06:00:43.494Z","updated_at":"2025-03-31T22:30:52.205Z","avatar_url":"https://github.com/CollinHeist.png","language":"Python","readme":"# \u003cimg src=\"https://user-images.githubusercontent.com/17693271/164274472-c8fa7302-9b38-4fae-94ca-2e683e58d722.png\" width=\"24\" alt=\"logo\"\u003e TitleCardMaker\n[![](https://img.shields.io/github/release/CollinHeist/TitleCardMaker.svg)](https://github.com/CollinHeist/TitleCardMaker/releases)\n[![Docker Pulls](https://img.shields.io/docker/pulls/collinheist/titlecardmaker)](https://hub.docker.com/r/collinheist/titlecardmaker)\n[![GitHub Develop Commits](https://img.shields.io/github/commits-since/CollinHeist/TitleCardMaker/latest/develop?label=Commits%20in%20Develop)](https://github.com/CollinHeist/TitleCardMaker/tree/develop)\n[![Discord](https://img.shields.io/discord/955533113734357125?logo=discord\u0026logoColor=white)](https://discord.gg/bJ3bHtw8wH)\n[![Support](https://img.shields.io/badge/-Support_Development-9cf?color=informational)](https://github.com/sponsors/CollinHeist)\n\nAn automated title card maker for the Plex, Jellyfin, and Emby media servers. All user documentation is available on the [Wiki](https://github.com/CollinHeist/TitleCardMaker/wiki).\n\n\u003e [!IMPORTANT] \n\u003e Version 2.0 - the Web UI - has officially entered pre-release, and is currently available for project [Sponsors](https://github.com/sponsors/CollinHeist).\n\n\u003cimg alt=\"Web UI\" src=\"https://titlecardmaker.com/assets/series_dark.webp\"/\u003e\n\nMore details are located at [titlecardmaker.com](https://titlecardmaker.com/) - this README (and the Wiki documentation) are primarily geared towards the non-UI (v1).\n\n## Table of Contents\n- [Description](#description)\n- [Getting Started](#getting-started)\n- [Usage and Troubleshooting](#usage-and-troubleshooting)\n- [Examples](#examples)\n- [Contributing](#contributing)\n- [Support](#support)\n\n## Description\n`TitleCardMaker` is a program and [Docker container](https://hub.docker.com/r/collinheist/titlecardmaker) written in Python that automates the creation of customized title cards (which are image previews of an episode of TV) for use in personal media server services like [Plex](https://www.plex.tv/), [Jellyfin](https://jellyfin.org/), or [Emby](https://emby.media/).\n\nTitleCardMaker can be automated such that everything can be done without manual intervention. All your series can be read from your media server or Sonarr; episode data can be pulled from Sonarr, your media server, or [TheMovieDatabase](https://www.themoviedb.org/); images from TheMovieDatabase, or your media server; and TitleCardMaker can even utilize an episode's watch status to create \"spoiler free\" versions of title cards automatically, as shown below:\n\n\u003cimg alt=\"card unblurring process\" src=\"https://user-images.githubusercontent.com/17693271/185819730-a2c55a3a-63cc-4f0e-8061-891edd8d64d0.gif\"/\u003e\n  \nAll configuration/automation of the TitleCardMaker is done via YAML files, and the actual image creation is done using the open-source and free image library called [ImageMagick](https://imagemagick.org/).\n\n## Getting Started\n\u003e [!NOTE]\n\u003e The [Wiki](https://github.com/CollinHeist/TitleCardMaker/wiki) has very extensive documentation on every feature and customization available in TitleCardMaker. I __highly__ recommend looking here as the first step when troubleshooting or customizing your setup. [The Discord](https://discord.gg/bJ3bHtw8wH) is also a great place to get detailed help.\n\nRead the [Getting Started](https://github.com/CollinHeist/TitleCardMaker/wiki) page on the Wiki for the traditional install, or the [Getting Started on Docker](https://github.com/CollinHeist/TitleCardMaker/wiki/Docker-Tutorial) page to install using Docker.\n\nIf you're using Unraid, there is a template available for easy setup - just search `titlecardmaker` on the Unraid Community Apps store.\n\n## Usage and Troubleshooting\nAssuming you're using the default preference filename, invoking the Maker is as simple as:\n\n```console\npipenv run python main.py --run\n```\n\nFor invocation and configuration details, read [here](https://github.com/CollinHeist/TitleCardMaker/wiki/Running-the-TitleCardMaker).\n\n\u003e [!TIP]\n\u003e If you have trouble getting the Maker working, or have a problem, [create an issue on GitHub](https://github.com/CollinHeist/TitleCardMaker/issues/new), or [join the Discord](https://discord.gg/bJ3bHtw8wH) for help.\n\n## Examples\nBelow are examples of almost all the types of title card that can be created automatically by TitleCardMaker:\n\n### Built-in Card Types\n\u003cimg alt=\"Anime\" src=\"https://titlecardmaker.com/card_types/assets/anime.webp\" width=\"32%\"/\u003e \u003cimg alt=\"Banner\" src=\"https://titlecardmaker.com/card_types/assets/banner.webp\" width=\"32%\"\u003e \u003cimg alt=\"Calligraphy\" src=\"https://titlecardmaker.com/card_types/assets/calligraphy.webp\" width=\"32%\"\u003e \u003cimg alt=\"Comic Book\" src=\"https://titlecardmaker.com/card_types/assets/comic_book.webp\" width=\"32%\"/\u003e \u003cimg alt=\"Cutout\" src=\"https://titlecardmaker.com/card_types/assets/cutout.webp\" width=\"32%\"/\u003e \u003cimg alt=\"Divider\" src=\"https://titlecardmaker.com/card_types/assets/divider.webp\" width=\"32%\"\u003e \u003cimg alt=\"Fade\" src=\"https://titlecardmaker.com/card_types/assets/fade.webp\" width=\"32%\"/\u003e \u003cimg alt=\"Formula1\" src=\"https://titlecardmaker.com/card_types/assets/formula.webp\" width=\"32%\"\u003e \u003cimg alt=\"Frame\" src=\"https://titlecardmaker.com/card_types/assets/frame.webp\" width=\"32%\"/\u003e \u003cimg alt=\"Graph\" src=\"https://titlecardmaker.com/card_types/assets/graph.webp\" width=\"32%\"\u003e \u003cimg alt=\"Inset\" src=\"https://titlecardmaker.com/card_types/assets/inset.webp\" width=\"32%\"\u003e \u003cimg alt=\"Landscape\" src=\"https://titlecardmaker.com/card_types/assets/landscape.webp\" width=\"32%\"\u003e \u003cimg alt=\"Logo\" src=\"https://titlecardmaker.com/card_types/assets/logo.webp\" width=\"32%\"\u003e \u003cimg alt=\"Marvel\" src=\"https://titlecardmaker.com/card_types/assets/marvel.webp\" width=\"32%\"\u003e \u003cimg alt=\"Music\" src=\"https://titlecardmaker.com/card_types/assets/music.webp\" width=\"32%\"\u003e \u003cimg alt=\"Notification\" src=\"https://titlecardmaker.com/card_types/assets/notification.webp\" width=\"32%\"\u003e \u003cimg alt=\"Olivier\" src=\"https://titlecardmaker.com/card_types/assets/olivier.webp\" width=\"32%\"/\u003e \u003cimg alt=\"Overline\" src=\"https://titlecardmaker.com/card_types/assets/overline.webp\" width=\"32%\"\u003e \u003cimg alt=\"Poster\" src=\"https://titlecardmaker.com/card_types/assets/poster.webp\" width=\"32%\"\u003e \u003cimg alt=\"Roman\" src=\"https://titlecardmaker.com/card_types/assets/roman_numeral.webp\" width=\"32%\"\u003e \u003cimg alt=\"Standard\" src=\"https://titlecardmaker.com/card_types/assets/standard.webp\" width=\"32%\"/\u003e \u003cimg alt=\"Striped\" src=\"https://titlecardmaker.com/card_types/assets/striped.webp\" width=\"32%\"\u003e \u003cimg alt=\"Shape\" src=\"https://titlecardmaker.com/card_types/assets/shape.webp\" width=\"32%\"\u003e \u003cimg alt=\"Star Wars\" src=\"https://titlecardmaker.com/card_types/assets/star_wars.webp\" width=\"32%\"\u003e \u003cimg alt=\"tinted Frame\" src=\"https://titlecardmaker.com/card_types/assets/tinted_frame.webp\" width=\"32%\"\u003e \u003cimg alt=\"Tinted Glass\" src=\"https://titlecardmaker.com/card_types/assets/tinted_glass.webp\" width=\"32%\"\u003e \u003cimg alt=\"White Border\" width=\"32%\" src=\"https://titlecardmaker.com/card_types/assets/white_border.webp\"\u003e\n\n\u003e The above cards are, in order, the [anime](https://github.com/CollinHeist/TitleCardMaker/wiki/AnimeTitleCard), [banner](https://github.com/CollinHeist/TitleCardMaker/wiki/BannerTitleCard), [calligraphy](https://github.com/CollinHeist/TitleCardMaker/wiki/CalligraphyTitleCard), [comic book](https://github.com/CollinHeist/TitleCardMaker/wiki/ComicBookTitleCard), [cutout](https://github.com/CollinHeist/TitleCardMaker/wiki/CutoutTitleCard), [divider](https://github.com/CollinHeist/TitleCardMaker/wiki/DividerTitleCard), [fade](https://github.com/CollinHeist/TitleCardMaker/wiki/FadeTitleCard), [formula 1](https://titlecardmaker.com/card_types/formula/), [frame](https://github.com/CollinHeist/TitleCardMaker/wiki/FrameTitleCard), [graph](https://titlecardmaker.com/card_types/graph/), [inset](https://github.com/CollinHeist/TitleCardMaker/wiki/InsetTitleCard), [landscape](https://github.com/CollinHeist/TitleCardMaker/wiki/LandscapeTitleCard), [logo](https://github.com/CollinHeist/TitleCardMaker/wiki/LogoTitleCard), [marvel](https://github.com/CollinHeist/TitleCardMaker/wiki/MarvelTitleCard), [music](https://titlecardmaker.com/card_types/music/), [notification](https://titlecardmaker.com/card_types/notification/), [olivier](https://github.com/CollinHeist/TitleCardMaker/wiki/OlivierTitleCard), [overline](https://github.com/CollinHeist/TitleCardMaker/wiki/OverlineTitleCard),  [poster](https://github.com/CollinHeist/TitleCardMaker/wiki/PosterTitleCard), [roman](https://github.com/CollinHeist/TitleCardMaker/wiki/RomanNumeralTitleCard), [standard](https://github.com/CollinHeist/TitleCardMaker/wiki/StandardTitleCard), [striped](https://titlecardmaker.com/card_types/striped/), [shape](https://github.com/CollinHeist/TitleCardMaker/wiki/ShapeTitleCard), [star wars](https://github.com/CollinHeist/TitleCardMaker/wiki/StarWarsTitleCard), [tinted frame](https://github.com/CollinHeist/TitleCardMaker/wiki/TintedFrameTitleCard), [tinted glass](https://github.com/CollinHeist/TitleCardMaker/wiki/TintedGlassTitleCard), and the [white border](https://github.com/CollinHeist/TitleCardMaker/wiki/WhiteBorderTitleCard) title cards.\n\n\u003cdetails\u003e\u003csummary\u003e\u003ch3\u003eUser-Created Card Types\u003c/h3\u003e\u003c/summary\u003e\n\nThe TitleCardMaker can also use user-created and maintained card types hosted on the [companion GitHub](https://github.com/CollinHeist/TitleCardMaker-CardTypes), an example of each type is shown below:\n\n\u003cimg src=\"https://i.ibb.co/tBPsxpc/Westworld-2016-S04-E01.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://github.com/Beedman/TitleCardMaker-CardTypes/blob/master/Beedman/The%20Afterparty%20(2022)%20-%20S01E02%20-%20Brett.jpg?raw=true\" height=\"175\"/\u003e \u003cimg src=\"https://i.ibb.co/0tnJJ6P/Stranger-Things-2016-S03-E02.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://cdn.discordapp.com/attachments/975108033531219979/977614937457303602/S01E04.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://raw.githubusercontent.com/Wdvh/TitleCardMaker-CardTypes/c14f1b3759983a63e66982ba6517e2bc3f651dca/Wdvh/S01E01.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://user-images.githubusercontent.com/17693271/169709482-6bb023ab-4986-464e-88d6-0e05ad75d0d3.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://user-images.githubusercontent.com/1803189/171089736-f60a6ff2-0914-432a-a45d-145323d39c42.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://user-images.githubusercontent.com/17693271/169709359-ffc9e109-b327-44e9-b78a-7276f77fe917.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://raw.githubusercontent.com/CollinHeist/TitleCardMaker-CardTypes/110c2ec729dbb20d8ed461e7cc5a07c54540f842/Wdvh/S01E07.jpg\" height=\"175\"/\u003e  \u003cimg src=\"https://user-images.githubusercontent.com/7379812/187586521-353ba09f-30a8-424b-bbf3-ee9036c9e638.jpg\" height=\"175\"/\u003e \u003cimg src=\"https://github.com/khthe8th/TitleCardMaker-CardTypes/assets/5308389/d089a1b1-7458-4eaf-ad8d-59c7f332a7c1\" height=\"175\"/\u003e\n \n\u003e The above cards are, in order, `Yozora/BarebonesTitleCard`, `Beedman/GradientLogoTitleCard`, `Yozora/RetroTitleCard`, `Yozora/SlimTitleCard`, `Wdvh/StarWarsTitleOnly`, `Wdvh/WhiteTextAbsolute`, `lyonza/WhiteTextBroadcast`, `Wdvh/WhiteTextStandard`, `Wdvh/WhiteTextTitleOnly`, `azuravian/TitleColorMatch`, and `KHthe8th/TintedFramePlusTitleCard`\n\n\u003c/details\u003e\n\n## Other Features\nIn addition to title card creation and management, the TitleCardMaker can also be used for other image-creation functionality. For example, the [mini maker](https://github.com/CollinHeist/TitleCardMaker/wiki/Using-the-Mini-Maker) - a.k.a. `mini_maker.py` - can be used to \"manually\" create collection posters, genre cards, movie posters, show summaries, and season posters. An example of each is shown below:\n\n\u003cimg alt=\"Example Collection Poster\" src=\"https://user-images.githubusercontent.com/17693271/180630284-57e6d14a-025b-439f-9a84-696749b92c8d.jpg\" height=\"200\"/\u003e \u003cimg alt=\"Example Genre Card\" src=\"https://user-images.githubusercontent.com/17693271/166091004-c8cf6afe-7cdf-4ba2-b16d-8a1c13236df8.jpg\" height=\"200\"/\u003e \u003cimg alt=\"Example Movie Poster\" src=\"https://user-images.githubusercontent.com/17693271/188292228-c57b7415-63ee-4907-9886-dd94e7d94a6b.jpg\" height=\"200\"/\u003e \u003cimg alt=\"Example Genre Card\" src=\"https://user-images.githubusercontent.com/17693271/188784303-a80f0e1c-e1c3-43b0-8591-fa0eb3aafabc.jpg\" height=\"200\"/\u003e \u003cimg alt=\"Example Genre Card\" src=\"https://user-images.githubusercontent.com/17693271/172294392-ecababbe-eeef-4e28-b08c-814b7e02f4c7.png\" height=\"200\"/\u003e\n\nThis is largely done via the command-line, and is described on the wiki [here](https://github.com/CollinHeist/TitleCardMaker/wiki/Using-the-Mini-Maker).\n\n## Contributing\nIf you'd like to contribute - whether that's a suggested feature, a bug fix, or anything else - please do so on GitHub by creating an issue, or [join the Discord](https://discord.gg/bJ3bHtw8wH). The best way for me to manage technical aspects of the project is on GitHub.\n\n## Support\nThis has taken a pretty substantial amount of effort, so if you find this project useful you can support me on [BuyMeACoffee](https://www.buymeacoffee.com/CollinHeist), or become a [GitHub sponsor](https://github.com/sponsors/CollinHeist) - I would really appreciate it!\n\nA _huge_ thank you to my current and past sponsors.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/CollinHeist/static/main/sponsorkit/sponsors.svg/sponsors.svg\"/\u003e\n\u003c/p\u003e\n","funding_links":["https://github.com/sponsors/CollinHeist","https://www.buymeacoffee.com/CollinHeist"],"categories":["Python","👾 Other"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCollinHeist%2FTitleCardMaker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCollinHeist%2FTitleCardMaker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCollinHeist%2FTitleCardMaker/lists"}