LaunchBox Theme Files and Folder Structure
Written By launchbox
Last updated About 1 month ago
LaunchBox Desktop themes live in the LBThemes folder. Each theme is its own folder, and most theme work happens inside that theme's Views folder.
A typical LaunchBox theme looks like this:
LaunchBox\LBThemes\[Theme Name] LaunchBox\LBThemes\[Theme Name]\Views LaunchBox\LBThemes\[Theme Name]\Images LaunchBox\LBThemes\[Theme Name]\Fonts LaunchBox\LBThemes\[Theme Name]\PluginsThe Views folder is required for any XAML files you want to customize. The other folders are optional, but they are useful for assets that ship with the theme.
Starting From Default
LaunchBox creates a built-in Default theme here:
LaunchBox\LBThemes\DefaultWhen creating a new theme, copy the Default folder and rename the copy:
LaunchBox\LBThemes\My ThemeAvoid editing the Default theme directly. Keeping Default unchanged gives LaunchBox a reliable fallback and gives you a clean reference when comparing your custom files against the original theme.
After creating your copy, apply it from:
Tools > Manage > LaunchBox Themes and MediaSelect your installed theme, click Apply Theme, and restart LaunchBox when prompted.
Root Theme Folder
The root theme folder is the top-level folder for your theme:
LaunchBox\LBThemes\My ThemeThis folder can contain:
Most themes only need Views, Images, and possibly Fonts.
Views Folder
The Views folder contains the XAML files that make up the LaunchBox Desktop interface:
LaunchBox\LBThemes\My Theme\ViewsCommon files include:
MainView.xaml SideBarView.xaml BoxesContentView.xaml ListContentView.xaml GameDetailsView.xaml PlatformFiltersDetailsView.xaml ContentBackgroundView.xaml ControlsView.xaml WorkingView.xaml NotificationView.xaml NotificationListView.xamlLaunchBox loads these files by name. For example, when LaunchBox needs the game details panel, it looks for:
LaunchBox\LBThemes\My Theme\Views\GameDetailsView.xamlIf your theme does not include a specific view, LaunchBox can fall back to the matching view from the Default theme. This means you can customize only the views you care about instead of replacing every file.
Images Folder
Use the Images folder for artwork and visual assets that belong to your theme:
LaunchBox\LBThemes\My Theme\ImagesExamples:
LaunchBox\LBThemes\My Theme\Images\Background.png LaunchBox\LBThemes\My Theme\Images\Panel.png LaunchBox\LBThemes\My Theme\Images\Icons\Play.pngWhen referencing theme assets from XAML, use the theme folder placeholder:
<Image Source="LAUNCHBOX_THEME_FOLDER/Images/Background.png" />LaunchBox replaces LAUNCHBOX_THEME_FOLDER when it loads the XAML, so the path resolves to the active theme folder.
Fonts Folder
Use the Fonts folder for font files that ship with your theme:
LaunchBox\LBThemes\My Theme\FontsThe Default theme includes several fonts, and custom themes can include their own.
A theme font can be referenced from XAML using the theme folder placeholder:
<TextBlock FontFamily="LAUNCHBOX_THEME_FOLDER/Fonts/MyFont.ttf#My Font" Text="LaunchBox" />The exact font family name after the # must match the font's internal family name, not necessarily the file name.
Plugins Folder
Advanced themes can include plugin DLLs here:
LaunchBox\LBThemes\My Theme\PluginsWhen the theme is active, LaunchBox loads plugins from this folder.
Most theme developers should start with XAML-only themes. Use theme plugins only when the theme needs behavior that cannot be handled with XAML, bindings, converters, templates, or existing LaunchBox view models.
Project Files
The Default theme includes generated project files:
LaunchBox\LBThemes\Default\LaunchBoxTheme.sln LaunchBox\LBThemes\Default\LaunchBoxTheme.csprojThese files are useful if you want to open the theme in Visual Studio or work with richer XAML tooling.
They are not required for simple theme changes. LaunchBox loads the XAML files directly from the active theme folder, so many themes can be edited without compiling a project.
Files You Should Usually Edit First
For most themes, start with these files:
Make small changes first, restart LaunchBox, and confirm the theme still loads correctly before moving on to larger layout changes.
What Not to Put Here
Do not put LaunchBox Desktop theme files in:
LaunchBox\ThemesThat folder is for Big Box themes.
Do not put main LaunchBox Desktop theme files in:
LaunchBox\StartupThemes LaunchBox\PauseThemesThose folders are for game startup, shutdown, and pause themes.
Desktop LaunchBox themes belong in:
LaunchBox\LBThemesRelated Articles
In Short
A LaunchBox Desktop theme is a folder inside LaunchBox\LBThemes. The Views folder contains the XAML files LaunchBox loads, while Images and Fonts hold assets used by those views. Advanced themes can include plugins, but most themes should begin as simple XAML customizations copied from the Default theme.