An automated title card maker for the Plex, Jellyfin, and Emby media servers. All user documentation is available on the Wiki.
Important
Version 2.0 - the Web UI - has officially entered pre-release, and is currently available for project Sponsors.
More details are located at titlecardmaker.com - this README (and the Wiki documentation) are primarily geared towards the non-UI (v1).
TitleCardMaker
is a program and Docker container 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, Jellyfin, or Emby.
TitleCardMaker 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; 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:
All 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.
Note
The 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 is also a great place to get detailed help.
Read the Getting Started page on the Wiki for the traditional install, or the Getting Started on Docker page to install using Docker.
If you're using Unraid, there is a template available for easy setup - just search titlecardmaker
on the Unraid Community Apps store.
Assuming you're using the default preference filename, invoking the Maker is as simple as:
pipenv run python main.py --run
For invocation and configuration details, read here.
Tip
If you have trouble getting the Maker working, or have a problem, create an issue on GitHub, or join the Discord for help.
Below are examples of almost all the types of title card that can be created automatically by TitleCardMaker:
The above cards are, in order, the anime, banner, calligraphy, comic book, cutout, divider, fade, formula 1, frame, graph, inset, landscape, logo, marvel, music, notification, olivier, overline, poster, roman, standard, striped, shape, star wars, tinted frame, tinted glass, and the white border title cards.
The TitleCardMaker can also use user-created and maintained card types hosted on the companion GitHub, an example of each type is shown below:
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
, andKHthe8th/TintedFramePlusTitleCard
In addition to title card creation and management, the TitleCardMaker can also be used for other image-creation functionality. For example, 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:
This is largely done via the command-line, and is described on the wiki here.
If 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. The best way for me to manage technical aspects of the project is on GitHub.
This has taken a pretty substantial amount of effort, so if you find this project useful you can support me on BuyMeACoffee, or become a GitHub sponsor - I would really appreciate it!
A huge thank you to my current and past sponsors.