├── .github └── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── config.yml │ ├── custom.md │ └── feature_request.md ├── .gitignore ├── .gitmodules ├── LICENSE.md ├── README.md ├── build ├── BuildExtensions.ps1 ├── UpdateLocExtFiles.ps1 └── UpdateLocalizations.ps1 ├── manifests ├── AmazonLibrary_Builtin.yaml ├── BattlenetLibrary_Builtin.yaml ├── EpicGamesLibrary_Builtin.yaml ├── GogLibrary_Builtin.yaml ├── HumbleLibrary_Builtin.yaml ├── IGDBMetadata_Builtin.yaml ├── ItchioLibrary_Builtin.yaml ├── LibraryExporterPS_Builtin.yaml ├── OriginLibrary_Builtin.yaml ├── Rockstar_Games_Library.yaml ├── SteamLibrary_Builtin.yaml ├── Universal_Steam_Metadata.yaml ├── UplayLibrary_Builtin.yaml ├── XboxLibrary_Builtin.yaml └── themes │ ├── Playnite_builtin_ClassicDesktop.yaml │ ├── Playnite_builtin_ClassicDesktopBlue.yaml │ ├── Playnite_builtin_ClassicDesktopGreen.yaml │ ├── Playnite_builtin_ClassicDesktopPlain.yaml │ ├── Playnite_builtin_DefaultDesktopRed.yaml │ └── Playnite_builtin_DefaultFullscreenLime.yaml ├── screenshots ├── theme_classic.jpg └── theme_classic_thumb.jpg └── source ├── Generic ├── LibraryExporter │ ├── LibraryExporter.psm1 │ └── extension.yaml └── PlayniteExtensions.Common │ ├── DateHelper.cs │ ├── Encryption.cs │ ├── GlobalCommands.cs │ ├── PlayniteExtensions.Common.csproj │ ├── PluginBase.cs │ ├── PluginSettingsViewModel.cs │ ├── Properties │ └── AssemblyInfo.cs │ └── packages.config ├── Libraries ├── AmazonGamesLibrary │ ├── AmazonGameController.cs │ ├── AmazonGames.cs │ ├── AmazonGamesLibrary.cs │ ├── AmazonGamesLibrary.csproj │ ├── AmazonGamesLibraryClient.cs │ ├── AmazonGamesLibrarySettingsView.xaml │ ├── AmazonGamesLibrarySettingsView.xaml.cs │ ├── AmazonGamesLibrarySettingsViewModel.cs │ ├── AmazonGamesMetadataProvider.cs │ ├── App.xaml │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── DeviceRegistration.cs │ │ ├── EntitlementsRequest.cs │ │ ├── EntitlementsResponse.cs │ │ └── GameConfiguration.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Services │ │ └── AmazonAccountClient.cs │ ├── addon.yaml │ ├── extension.yaml │ ├── icon.png │ └── packages.config ├── BattleNetLibrary │ ├── App.xaml │ ├── BattleNet.cs │ ├── BattleNetClient.cs │ ├── BattleNetGameController.cs │ ├── BattleNetGames.cs │ ├── BattleNetLibrary.cs │ ├── BattleNetLibrary.csproj │ ├── BattleNetLibrarySettingsView.xaml │ ├── BattleNetLibrarySettingsView.xaml.cs │ ├── BattleNetLibrarySettingsViewModel.cs │ ├── BattleNetMetadataProvider.cs │ ├── Environment.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── BNetApp.cs │ │ ├── BattleNetApiStatus.cs │ │ ├── ClassicGames.cs │ │ └── GamesAndSubs.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── battleneticon.png │ ├── Services │ │ └── BattleNetAccountClient.cs │ ├── addon.yaml │ ├── extension.yaml │ └── packages.config ├── EpicLibrary │ ├── App.xaml │ ├── EpicClient.cs │ ├── EpicGameController.cs │ ├── EpicLauncher.cs │ ├── EpicLibrary.cs │ ├── EpicLibrary.csproj │ ├── EpicLibrarySettingsView.xaml │ ├── EpicLibrarySettingsView.xaml.cs │ ├── EpicLibrarySettingsViewModel.cs │ ├── EpicMetadataProvider.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── AccountResponse.cs │ │ ├── AssetsResponse.cs │ │ ├── CatalogResponse.cs │ │ ├── ErrorResponse.cs │ │ ├── LauncherInstalled.cs │ │ ├── OauthResponse.cs │ │ ├── PlaytimesResponse.cs │ │ └── WebStoreModels.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── epicicon.png │ ├── Services │ │ ├── EpicAccountClient.cs │ │ └── WebStoreClient.cs │ ├── addon.yaml │ ├── extension.yaml │ └── packages.config ├── GogLibrary │ ├── App.xaml │ ├── Environment.cs │ ├── GOGMetadataProvider.cs │ ├── Gog.cs │ ├── GogClient.cs │ ├── GogGameController.cs │ ├── GogLibrary.cs │ ├── GogLibrary.csproj │ ├── GogLibrarySettingsView.xaml │ ├── GogLibrarySettingsView.xaml.cs │ ├── GogLibrarySettingsViewModel.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── AccountBasicResponse.cs │ │ ├── GetOwnedGamesResult.cs │ │ ├── GogGameMetadata.cs │ │ ├── GogGameTaskInfo.cs │ │ ├── LibraryGameResponse.cs │ │ ├── PagedResponse.cs │ │ ├── ProductApiDetail.cs │ │ ├── StoreGamesFilteredListResponse.cs │ │ └── StorePageResult.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── galaxyIcon.png │ │ └── gogicon.png │ ├── Services │ │ ├── GogAccountClient.cs │ │ └── GogApiClient.cs │ ├── addon.yaml │ ├── extension.yaml │ └── packages.config ├── HumbleLibrary │ ├── App.xaml │ ├── HumbleClient.cs │ ├── HumbleGameController.cs │ ├── HumbleLibrary.cs │ ├── HumbleLibrary.csproj │ ├── HumbleLibraryClient.cs │ ├── HumbleLibrarySettingsView.xaml │ ├── HumbleLibrarySettingsView.xaml.cs │ ├── HumbleLibrarySettingsViewModel.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── HumbleApp.cs │ │ ├── Order.cs │ │ ├── Trove.cs │ │ └── UserHome.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── icon.png │ ├── Services │ │ └── HumbleAccountClient.cs │ ├── addon.yaml │ ├── extension.yaml │ └── packages.config ├── ItchioLibrary │ ├── App.xaml │ ├── Butler.cs │ ├── Itch.cs │ ├── ItchioClient.cs │ ├── ItchioGameController.cs │ ├── ItchioLibrary.cs │ ├── ItchioLibrary.csproj │ ├── ItchioLibrarySettingsView.xaml │ ├── ItchioLibrarySettingsView.xaml.cs │ ├── ItchioLibrarySettingsViewModel.cs │ ├── ItchioMetadataProvider.cs │ ├── JsonRpcClient.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── Butler.cs │ │ ├── Cave.cs │ │ ├── Collection.cs │ │ ├── FetchCaves.cs │ │ ├── FetchCollections.cs │ │ ├── FetchGame.cs │ │ ├── FetchGameRecords.cs │ │ ├── FetchProfileOwnedKeys.cs │ │ ├── GameRecord.cs │ │ ├── HTMLLaunch.cs │ │ ├── ItchInstallState.cs │ │ ├── LaunchManifest.cs │ │ ├── LogMessage.cs │ │ ├── PickManifestAction.cs │ │ ├── PrereqsFailed.cs │ │ ├── ProfileList.cs │ │ ├── ShellLaunch.cs │ │ └── URLLaunch.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── itchioicon.png │ ├── StartupSelectionView.xaml │ ├── StartupSelectionView.xaml.cs │ ├── StartupSelectionViewModel.cs │ ├── addon.yaml │ ├── extension.yaml │ └── packages.config ├── OriginLibrary │ ├── App.xaml │ ├── EAC.cs │ ├── Environment.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── AccountEntitlementsResponse.cs │ │ ├── AccountInfoResponse.cs │ │ ├── AuthTokenResponse.cs │ │ ├── GameInstallerData.cs │ │ ├── GameLocalDataResponse.cs │ │ ├── GameStoreDataResponse.cs │ │ ├── OriginGameMetadata.cs │ │ ├── StorePageMetadata.cs │ │ └── UsageReponse.cs │ ├── Origin.cs │ ├── OriginClient.cs │ ├── OriginGameController.cs │ ├── OriginLibrary.cs │ ├── OriginLibrary.csproj │ ├── OriginLibrarySettingsView.xaml │ ├── OriginLibrarySettingsView.xaml.cs │ ├── OriginLibrarySettingsViewModel.cs │ ├── OriginMetadataProvider.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── originicon.png │ ├── Services │ │ ├── OriginAccountClient.cs │ │ └── OriginApiClient.cs │ ├── addon.yaml │ ├── extension.yaml │ └── packages.config ├── RockstarLibrary │ ├── App.xaml │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── RockstarGames.cs │ ├── RockstarGamesController.cs │ ├── RockstarGamesLibrary.cs │ ├── RockstarGamesLibrary.csproj │ ├── RockstarGamesLibrary.sln │ ├── RockstarGamesLibraryClient.cs │ ├── RockstarGamesLibrarySettingsView.xaml │ ├── RockstarGamesLibrarySettingsView.xaml.cs │ ├── RockstarGamesLibrarySettingsViewModel.cs │ ├── addon.yaml │ ├── extension.yaml │ ├── icon.png │ └── packages.config ├── SteamLibrary │ ├── App.xaml │ ├── AppState.cs │ ├── Configuration.cs │ ├── Converters │ │ └── BackgroundSourceToStringConverter.cs │ ├── Environment.cs │ ├── GameExtension.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── ModInfo.cs │ ├── Models │ │ ├── GetOwnedGamesResult.cs │ │ ├── LocalSteamUser.cs │ │ └── ResolveVanityResult.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── steamicon.png │ ├── Services │ │ └── SteamServicesClient.cs │ ├── Steam.cs │ ├── SteamClient.cs │ ├── SteamGameController.cs │ ├── SteamLibrary.cs │ ├── SteamLibrary.csproj │ ├── SteamLibrarySettingsView.xaml │ ├── SteamLibrarySettingsView.xaml.cs │ ├── SteamLibrarySettingsViewModel.cs │ ├── SteamMetadataProvider.cs │ ├── SteamShared │ │ ├── MetadataProvider.cs │ │ ├── SharedSteamSettings.cs │ │ ├── SharedSteamSettingsViewModel.cs │ │ ├── SteamApiClient.cs │ │ ├── SteamGameMetadata.cs │ │ ├── SteamTagNamer.cs │ │ ├── StoreAppDetailsResult.cs │ │ ├── TagCategories │ │ │ ├── TagIdCategory.cs │ │ │ └── tagsCategories.json │ │ ├── TagLocalization │ │ │ ├── brazilian.json │ │ │ ├── bulgarian.json │ │ │ ├── czech.json │ │ │ ├── danish.json │ │ │ ├── dutch.json │ │ │ ├── english.json │ │ │ ├── finnish.json │ │ │ ├── french.json │ │ │ ├── german.json │ │ │ ├── greek.json │ │ │ ├── hungarian.json │ │ │ ├── italian.json │ │ │ ├── japanese.json │ │ │ ├── koreana.json │ │ │ ├── latam.json │ │ │ ├── norwegian.json │ │ │ ├── polish.json │ │ │ ├── portuguese.json │ │ │ ├── romanian.json │ │ │ ├── russian.json │ │ │ ├── schinese.json │ │ │ ├── spanish.json │ │ │ ├── swedish.json │ │ │ ├── tchinese.json │ │ │ ├── thai.json │ │ │ ├── turkish.json │ │ │ ├── ukrainian.json │ │ │ └── vietnamese.json │ │ └── WebApiClient.cs │ ├── addon.yaml │ ├── app.config │ ├── extension.yaml │ ├── packages.config │ └── plugin.cfg ├── UplayLibrary │ ├── App.xaml │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── LocalCache.cs │ │ └── ProductSchema.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── uplayicon.png │ ├── Uplay.cs │ ├── UplayClient.cs │ ├── UplayGameController.cs │ ├── UplayLibrary.cs │ ├── UplayLibrary.csproj │ ├── UplayLibrarySettingsView.xaml │ ├── UplayLibrarySettingsView.xaml.cs │ ├── UplayLibrarySettingsViewModel.cs │ ├── UplayMetadataProvider.cs │ ├── addon.yaml │ ├── extension.yaml │ └── packages.config └── XboxLibrary │ ├── App.xaml │ ├── Localization │ ├── af_ZA.xaml │ ├── ar_SA.xaml │ ├── bg_BG.xaml │ ├── ca_ES.xaml │ ├── cs_CZ.xaml │ ├── da_DK.xaml │ ├── de_DE.xaml │ ├── el_GR.xaml │ ├── en_US.xaml │ ├── eo_UY.xaml │ ├── es_ES.xaml │ ├── et_EE.xaml │ ├── fa_IR.xaml │ ├── fi_FI.xaml │ ├── fr_FR.xaml │ ├── gl_ES.xaml │ ├── he_IL.xaml │ ├── hr_HR.xaml │ ├── hu_HU.xaml │ ├── id_ID.xaml │ ├── it_IT.xaml │ ├── ja_JP.xaml │ ├── ko_KR.xaml │ ├── lt_LT.xaml │ ├── mr_IN.xaml │ ├── nl_NL.xaml │ ├── no_NO.xaml │ ├── pl_PL.xaml │ ├── pt_BR.xaml │ ├── pt_PT.xaml │ ├── ro_RO.xaml │ ├── ru_RU.xaml │ ├── si_LK.xaml │ ├── sk_SK.xaml │ ├── sl_SI.xaml │ ├── sr_SP.xaml │ ├── sv_SE.xaml │ ├── tr_TR.xaml │ ├── uk_UA.xaml │ ├── vi_VN.xaml │ ├── zh_CN.xaml │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ └── AuthenticationData.cs │ ├── Properties │ └── AssemblyInfo.cs │ ├── Services │ └── XboxAccountClient.cs │ ├── Xbox.cs │ ├── XboxGameController.cs │ ├── XboxLibrary.cs │ ├── XboxLibrary.csproj │ ├── XboxLibraryClient.cs │ ├── XboxLibrarySettingsView.xaml │ ├── XboxLibrarySettingsView.xaml.cs │ ├── XboxLibrarySettingsViewModel.cs │ ├── addon.yaml │ ├── extension.yaml │ ├── icon.png │ └── packages.config ├── Localization ├── af_ZA.xaml ├── ar_SA.xaml ├── bg_BG.xaml ├── ca_ES.xaml ├── cs_CZ.xaml ├── da_DK.xaml ├── de_DE.xaml ├── el_GR.xaml ├── en_US.xaml ├── eo_UY.xaml ├── es_ES.xaml ├── et_EE.xaml ├── fa_IR.xaml ├── fi_FI.xaml ├── fr_FR.xaml ├── gl_ES.xaml ├── he_IL.xaml ├── hr_HR.xaml ├── hu_HU.xaml ├── id_ID.xaml ├── it_IT.xaml ├── ja_JP.xaml ├── ko_KR.xaml ├── lt_LT.xaml ├── mr_IN.xaml ├── nl_NL.xaml ├── no_NO.xaml ├── pl_PL.xaml ├── pt_BR.xaml ├── pt_PT.xaml ├── ro_RO.xaml ├── ru_RU.xaml ├── si_LK.xaml ├── sk_SK.xaml ├── sl_SI.xaml ├── sr_SP.xaml ├── sv_SE.xaml ├── tr_TR.xaml ├── uk_UA.xaml ├── vi_VN.xaml ├── zh_CN.xaml └── zh_TW.xaml ├── Metadata ├── IGDBMetadata │ ├── App.xaml │ ├── IGDBMetadata.csproj │ ├── IgdbClient.cs │ ├── IgdbLazyMetadataProvider.cs │ ├── IgdbMetadataPlugin.cs │ ├── IgdbMetadataSettingsView.xaml │ ├── IgdbMetadataSettingsView.xaml.cs │ ├── IgdbMetadataSettingsViewModel.cs │ ├── IgdbSearchContext.cs │ ├── Localization │ │ ├── af_ZA.xaml │ │ ├── ar_SA.xaml │ │ ├── bg_BG.xaml │ │ ├── ca_ES.xaml │ │ ├── cs_CZ.xaml │ │ ├── da_DK.xaml │ │ ├── de_DE.xaml │ │ ├── el_GR.xaml │ │ ├── en_US.xaml │ │ ├── eo_UY.xaml │ │ ├── es_ES.xaml │ │ ├── et_EE.xaml │ │ ├── fa_IR.xaml │ │ ├── fi_FI.xaml │ │ ├── fr_FR.xaml │ │ ├── gl_ES.xaml │ │ ├── he_IL.xaml │ │ ├── hr_HR.xaml │ │ ├── hu_HU.xaml │ │ ├── id_ID.xaml │ │ ├── it_IT.xaml │ │ ├── ja_JP.xaml │ │ ├── ko_KR.xaml │ │ ├── lt_LT.xaml │ │ ├── mr_IN.xaml │ │ ├── nl_NL.xaml │ │ ├── no_NO.xaml │ │ ├── pl_PL.xaml │ │ ├── pt_BR.xaml │ │ ├── pt_PT.xaml │ │ ├── ro_RO.xaml │ │ ├── ru_RU.xaml │ │ ├── si_LK.xaml │ │ ├── sk_SK.xaml │ │ ├── sl_SI.xaml │ │ ├── sr_SP.xaml │ │ ├── sv_SE.xaml │ │ ├── tr_TR.xaml │ │ ├── uk_UA.xaml │ │ ├── vi_VN.xaml │ │ ├── zh_CN.xaml │ │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Models │ │ ├── ImageSizes.cs │ │ └── Models.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── igdbicon.png │ ├── addon.yaml │ ├── extension.yaml │ ├── packages.config │ └── plugin.cfg └── UniversalSteamMetadata │ ├── App.xaml │ ├── Localization │ ├── af_ZA.xaml │ ├── ar_SA.xaml │ ├── bg_BG.xaml │ ├── ca_ES.xaml │ ├── cs_CZ.xaml │ ├── da_DK.xaml │ ├── de_DE.xaml │ ├── el_GR.xaml │ ├── en_US.xaml │ ├── eo_UY.xaml │ ├── es_ES.xaml │ ├── et_EE.xaml │ ├── fa_IR.xaml │ ├── fi_FI.xaml │ ├── fr_FR.xaml │ ├── gl_ES.xaml │ ├── he_IL.xaml │ ├── hr_HR.xaml │ ├── hu_HU.xaml │ ├── id_ID.xaml │ ├── it_IT.xaml │ ├── ja_JP.xaml │ ├── ko_KR.xaml │ ├── lt_LT.xaml │ ├── mr_IN.xaml │ ├── nl_NL.xaml │ ├── no_NO.xaml │ ├── pl_PL.xaml │ ├── pt_BR.xaml │ ├── pt_PT.xaml │ ├── ro_RO.xaml │ ├── ru_RU.xaml │ ├── si_LK.xaml │ ├── sk_SK.xaml │ ├── sl_SI.xaml │ ├── sr_SP.xaml │ ├── sv_SE.xaml │ ├── tr_TR.xaml │ ├── uk_UA.xaml │ ├── vi_VN.xaml │ ├── zh_CN.xaml │ └── zh_TW.xaml │ ├── LocalizationKeys.cs │ ├── Properties │ └── AssemblyInfo.cs │ ├── UniversalSteamMetadata.cs │ ├── UniversalSteamMetadata.csproj │ ├── UniversalSteamMetadataProvider.cs │ ├── UniversalSteamMetadataSettingsView.xaml │ ├── UniversalSteamMetadataSettingsView.xaml.cs │ ├── UniversalSteamMetadataSettingsViewModel.cs │ ├── addon.yaml │ ├── extension.yaml │ ├── icon.png │ └── packages.config ├── PlayniteExtensions.sln ├── Tests ├── BattleNetLibrary.Tests │ ├── BattleNetLibrary.Tests.csproj │ ├── BattleNetLibraryTests.cs │ ├── BattleNetMetadataProviderTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Services │ │ └── BattleNetAccountClientTests.cs │ ├── app.config │ └── packages.config ├── Common.Tests │ ├── Common.Tests.csproj │ ├── DateHelperTests.cs │ ├── EncryptionTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── packages.config ├── EpicLibrary.Tests │ ├── EpicLibrary.Tests.csproj │ ├── EpicLibraryTests.cs │ ├── EpicTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── WebStoreClientTests.cs │ └── packages.config ├── GogLibrary.Tests │ ├── GogLibrary.Tests.csproj │ ├── GogLibraryTests.cs │ ├── GogMetadataProviderTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Services │ │ └── WebApiClientTests.cs │ ├── app.config │ └── packages.config ├── HumbleLibrary.Tests │ ├── HumbleLibrary.Tests.csproj │ ├── HumbleLibraryTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── packages.config ├── IGDBMetadata.Tests │ ├── IGDBMetadata.Tests.csproj │ ├── IgdbMetadataPluginTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── TestSetup.cs │ └── packages.config ├── ItchioLibrary.Tests │ ├── ButlerTests.cs │ ├── ItchTests.cs │ ├── ItchioLibrary.Tests.csproj │ ├── ItchioLibraryTests.cs │ ├── ItchioMetadataProviderTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── TestSetup.cs │ ├── app.config │ └── packages.config ├── OriginLibrary.Tests │ ├── ModelsTests.cs │ ├── OriginLibrary.Tests.csproj │ ├── OriginLibraryTests.cs │ ├── OriginMetadataProviderTests.cs │ ├── OriginTests.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── __Installer │ │ │ └── installerdata.xml │ ├── Services │ │ └── OriginApiClientTests.cs │ ├── app.config │ └── packages.config ├── SteamLibrary.Tests │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Services │ │ ├── SteamApiClientTests.cs │ │ └── WebApiClientTests.cs │ ├── SteamLibrary.Tests.csproj │ ├── SteamLibraryTests.cs │ ├── SteamMetadataProviderTests.cs │ ├── SteamTests.cs │ ├── app.config │ └── packages.config ├── TwitchLibrary.Tests │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── TwitchLibrary.Tests.csproj │ ├── TwitchLibraryTests.cs │ ├── TwitchTests.cs │ ├── app.config │ └── packages.config ├── UniversalSteamMetadata.Tests │ ├── MetadataTest.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── SearchTests.cs │ ├── UniversalSteamMetadata.Tests.csproj │ └── packages.config ├── UplayLibrary.Tests │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── UplayLibrary.Tests.csproj │ ├── UplayLibraryTests.cs │ ├── UplayMetadataProviderTests.cs │ ├── app.config │ └── packages.config └── XboxLibrary.Tests │ ├── Properties │ └── AssemblyInfo.cs │ ├── XboxLibrary.Tests.csproj │ ├── XboxLibraryTests.cs │ └── packages.config └── Themes ├── Desktop ├── Classic │ ├── Constants.xaml │ ├── DerivedStyles │ │ └── DetailsViewItemStyle.xaml │ └── theme.yaml ├── ClassicBlue │ ├── Constants.xaml │ ├── DerivedStyles │ │ └── DetailsViewItemStyle.xaml │ └── theme.yaml ├── ClassicGreen │ ├── Constants.xaml │ ├── DerivedStyles │ │ └── DetailsViewItemStyle.xaml │ └── theme.yaml ├── ClassicPlain │ ├── Constants.xaml │ ├── DerivedStyles │ │ └── DetailsViewItemStyle.xaml │ └── theme.yaml └── DefaultRed │ ├── Constants.xaml │ └── theme.yaml └── Fullscreen └── DefaultLime ├── Constants.xaml └── theme.yaml /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: bug 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Check for existing issue** 11 | Please use issue search in the repository if the bug is something really obvious there's a high change it was already reported. 12 | 13 | **Describe the bug** 14 | A clear and concise description of what the bug is. 15 | 16 | **To Reproduce** 17 | If it's not clear from the description how to reproduce the issue please add clear steps to reproduce the behavior. 18 | 19 | **Screenshots** 20 | If applicable, add screenshots to help explain your problem. 21 | 22 | **Diagnostics ID** 23 | Please generate diagnostics package from "About Playnite" menu and attach identifier you received. If the issue is a crash bug, you can generate diag. package directly from crash dialog. 24 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: Playnite Discord server 4 | url: https://discord.gg/BrtABqe 5 | about: Official Discord server for general chat and support with Playnite. 6 | - name: Playnite SDK documentation 7 | url: https://playnite.link/docs/ 8 | about: Useful documentation when creating pluings and themes. 9 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/custom.md: -------------------------------------------------------------------------------- 1 | ## Use [issue templates](https://github.com/JosefNemec/PlayniteExtensions/issues/new/choose) instead! 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: enhancement 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Check for existing issue** 11 | Please use issue search in the repository if your feature request is something really obvious there's a high change it was already requested. 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Screenshots** 17 | If applicable, add screenshots to help explain requested changes. 18 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "PlayniteRepo"] 2 | path = PlayniteRepo 3 | url = https://github.com/JosefNemec/Playnite.git 4 | branch = master 5 | [submodule "PlayniteBackendRepo"] 6 | path = PlayniteBackendRepo 7 | url = git@codeberg.org:Playnite/Backend.git 8 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Josef Nemec 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /manifests/LibraryExporterPS_Builtin.yaml: -------------------------------------------------------------------------------- 1 | AddonId: LibraryExporterPS_Builtin 2 | Packages: 3 | - Version: 2.0 4 | RequiredApiVersion: 6.0.0 5 | ReleaseDate: 2021-09-03 6 | PackageUrl: https://github.com/JosefNemec/PlayniteExtensions/releases/download/1.0/LibraryExporterPS_Builtin_2_0.pext 7 | Changelog: 8 | - Playnite 9 support -------------------------------------------------------------------------------- /manifests/themes/Playnite_builtin_ClassicDesktop.yaml: -------------------------------------------------------------------------------- 1 | AddonId: Playnite_builtin_ClassicDesktop 2 | Packages: 3 | - Version: 2.0 4 | RequiredApiVersion: 2.0.0 5 | ReleaseDate: 2021-09-03 6 | PackageUrl: https://github.com/JosefNemec/PlayniteExtensions/releases/download/1.0/Playnite_builtin_ClassicDesktop_2_0.pthm 7 | Changelog: 8 | - Playnite 9 support -------------------------------------------------------------------------------- /manifests/themes/Playnite_builtin_ClassicDesktopBlue.yaml: -------------------------------------------------------------------------------- 1 | AddonId: Playnite_builtin_ClassicDesktopBlue 2 | Packages: 3 | - Version: 2.0 4 | RequiredApiVersion: 2.0.0 5 | ReleaseDate: 2021-09-03 6 | PackageUrl: https://github.com/JosefNemec/PlayniteExtensions/releases/download/1.0/Playnite_builtin_ClassicDesktopBlue_2_0.pthm 7 | Changelog: 8 | - Playnite 9 support -------------------------------------------------------------------------------- /manifests/themes/Playnite_builtin_ClassicDesktopGreen.yaml: -------------------------------------------------------------------------------- 1 | AddonId: Playnite_builtin_ClassicDesktopGreen 2 | Packages: 3 | - Version: 2.0 4 | RequiredApiVersion: 2.0.0 5 | ReleaseDate: 2021-09-03 6 | PackageUrl: https://github.com/JosefNemec/PlayniteExtensions/releases/download/1.0/Playnite_builtin_ClassicDesktopGreen_2_0.pthm 7 | Changelog: 8 | - Playnite 9 support -------------------------------------------------------------------------------- /manifests/themes/Playnite_builtin_ClassicDesktopPlain.yaml: -------------------------------------------------------------------------------- 1 | AddonId: Playnite_builtin_ClassicDesktopPlain 2 | Packages: 3 | - Version: 2.0 4 | RequiredApiVersion: 2.0.0 5 | ReleaseDate: 2021-09-03 6 | PackageUrl: https://github.com/JosefNemec/PlayniteExtensions/releases/download/1.0/Playnite_builtin_ClassicDesktopPlain_2_0.pthm 7 | Changelog: 8 | - Playnite 9 support -------------------------------------------------------------------------------- /manifests/themes/Playnite_builtin_DefaultDesktopRed.yaml: -------------------------------------------------------------------------------- 1 | AddonId: Playnite_builtin_DefaultDesktopRed 2 | Packages: 3 | - Version: 2.0 4 | RequiredApiVersion: 2.0.0 5 | ReleaseDate: 2021-09-03 6 | PackageUrl: https://github.com/JosefNemec/PlayniteExtensions/releases/download/1.0/Playnite_builtin_DefaultDesktopRed_2_0.pthm 7 | Changelog: 8 | - Playnite 9 support -------------------------------------------------------------------------------- /manifests/themes/Playnite_builtin_DefaultFullscreenLime.yaml: -------------------------------------------------------------------------------- 1 | AddonId: Playnite_builtin_DefaultFullscreenLime 2 | Packages: 3 | - Version: 2.0 4 | RequiredApiVersion: 2.0.0 5 | ReleaseDate: 2021-09-03 6 | PackageUrl: https://github.com/JosefNemec/PlayniteExtensions/releases/download/1.0/Playnite_builtin_DefaultFullscreenLime_2_0.pthm 7 | Changelog: 8 | - Playnite 9 support -------------------------------------------------------------------------------- /screenshots/theme_classic.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JosefNemec/PlayniteExtensions/9e398e7874ffc505d6c2102c260c33c4ea36484f/screenshots/theme_classic.jpg -------------------------------------------------------------------------------- /screenshots/theme_classic_thumb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JosefNemec/PlayniteExtensions/9e398e7874ffc505d6c2102c260c33c4ea36484f/screenshots/theme_classic_thumb.jpg -------------------------------------------------------------------------------- /source/Generic/LibraryExporter/LibraryExporter.psm1: -------------------------------------------------------------------------------- 1 | function ExportLibrary() 2 | { 3 | param( 4 | $scriptMainMenuItemActionArgs 5 | ) 6 | 7 | $path = $PlayniteApi.Dialogs.SaveFile("CSV|*.csv|Formated TXT|*.txt") 8 | if ($path) 9 | { 10 | if ($path -match ".csv$") 11 | { 12 | $PlayniteApi.Database.Games | Select Name, Source, ReleaseDate, Playtime, IsInstalled | ConvertTo-Csv | Out-File $path -Encoding utf8 13 | } 14 | else 15 | { 16 | $PlayniteApi.Database.Games | Select Name, Source, ReleaseDate, Playtime, IsInstalled | Format-Table -AutoSize | Out-File $path -Encoding utf8 17 | } 18 | 19 | $PlayniteApi.Dialogs.ShowMessage("Library exported successfully."); 20 | } 21 | } 22 | 23 | function GetMainMenuItems() 24 | { 25 | param( 26 | $menuArgs 27 | ) 28 | 29 | $menuItem = New-Object Playnite.SDK.Plugins.ScriptMainMenuItem 30 | $menuItem.Description = "Export Library" 31 | $menuItem.FunctionName = "ExportLibrary" 32 | $menuItem.MenuSection = "@" 33 | return $menuItem 34 | } -------------------------------------------------------------------------------- /source/Generic/LibraryExporter/extension.yaml: -------------------------------------------------------------------------------- 1 | Id: LibraryExporterPS_Builtin 2 | Name: Library Exporter 3 | Author: Playnite 4 | Version: 2.0 5 | Module: LibraryExporter.psm1 6 | Type: Script -------------------------------------------------------------------------------- /source/Generic/PlayniteExtensions.Common/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /source/Libraries/AmazonGamesLibrary/AmazonGamesLibrarySettingsView.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Windows; 7 | using System.Windows.Controls; 8 | using System.Windows.Data; 9 | using System.Windows.Documents; 10 | using System.Windows.Input; 11 | using System.Windows.Media; 12 | using System.Windows.Media.Imaging; 13 | using System.Windows.Navigation; 14 | using System.Windows.Shapes; 15 | 16 | namespace AmazonGamesLibrary 17 | { 18 | public partial class AmazonGamesLibrarySettingsView : UserControl 19 | { 20 | public AmazonGamesLibrarySettingsView() 21 | { 22 | InitializeComponent(); 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /source/Libraries/AmazonGamesLibrary/AmazonGamesMetadataProvider.cs: -------------------------------------------------------------------------------- 1 | using Playnite.SDK; 2 | using Playnite.SDK.Models; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Drawing; 6 | using System.IO; 7 | using System.Linq; 8 | using System.Text; 9 | using System.Threading.Tasks; 10 | 11 | namespace AmazonGamesLibrary 12 | { 13 | public class AmazonGamesMetadataProvider : LibraryMetadataProvider 14 | { 15 | public override GameMetadata GetMetadata(Game game) 16 | { 17 | var gameInfo = new GameMetadata 18 | { 19 | Links = new List() 20 | }; 21 | 22 | gameInfo.Links.Add(new Link("PCGamingWiki", @"http://pcgamingwiki.com/w/index.php?search=" + game.Name)); 23 | return gameInfo; 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /source/Libraries/AmazonGamesLibrary/App.xaml: -------------------------------------------------------------------------------- 1 |  2 | 4 | 5 | 6 |