WinPaletter Store Developers - Abdelrhman-AK/WinPaletter GitHub Wiki
Developer Guide: WinPaletter Store and Sources
[!IMPORTANT] This page is intended for developers who want to upload themes to the WinPaletter Store repository or create custom online/offline sources for hosting WinPaletter themes.
Normal users should use the GitHub manager inside WinPaletter to publish themes safely.
1. Uploading Themes to the WinPaletter Store Repository
Steps:
- Read first: Designing Themes Rules.
- Create a GitHub account or log in if you already have one.
- Go to the WinPaletter Store Repository.
- Click Fork to create your own copy of the repository.
- Navigate to your fork under your GitHub profile.
- In your fork, go to the
Themesdirectory:- Create a folder with your name, then a subfolder with your theme name.
- Upload your theme file (
.wpth). - If your theme has extra resources (images or sounds), also upload the resources pack (
.wptp).
- Create a pull request. Once approved, your theme will be available in the WinPaletter Store.
[!Important]
- Pull requests are merged as soon as possible, but the WinPaletter developer may not always be available.
[!Warning]
- You are responsible for the copyrights of uploaded themes and resource packs.
- Only themes created with WinPaletter
1.0.7.7or newer are supported in the store. Use the convert button in WinPaletter to update older themes.- To update an existing theme, replace the files in your fork and create a new pull request.
2. Creating an Online WinPaletter Store Source
Information:
- WinPaletter allows adding online or offline sources.
- You are responsible for copyrights of themes/resources in your server/repository. The WinPaletter developer is not responsible for copyright violations.
- Only themes created with WinPaletter
1.0.7.7or higher are compatible with online sources. Offline sources can load themes from any version.
Steps to Build an Online Source:
- Prepare a file server or use a file hosting service with direct download links.
- If you donβt have a server, create a GitHub repository.
- A store source file is a text file where each line represents a theme:
MD5_ThemeFile|MD5_ResourcesPackFile|DirectLink_To_ThemeFile|DirectLink_To_PackFile
MD5ensures WinPaletter checks for theme updates.- If a theme has no resources pack, use
0and omit the last part. - Example:
3D503317FA22B4999A980E8B6C23E916|4FBC9EE7157F580D036129EA26AD307A|https://link_to_theme_1|https://link_to_theme_resources_pack1
AC28715B458F8B3EA3CCF4E933C60D36|0|https://link_to_theme_2
2FED07C211A0E58AD88D6F06FC513A66|D697F2F674658814D0CA074125067BB1|https://link_to_theme_3|https://link_to_theme_resources_pack3
Using GitHub as a Source:
- Append
?raw=trueto all file links for direct download. - Fork or clone WinPaletter-Store repository to understand the structure.
- Key files:
store.wpdbβ main source file.main.pyβ Python script that updatesstore.wpdband now automatically detects your repository name and author. No manual URL editing is required.Themesβ directory for theme files.enum_themes.ymlβ GitHub Actions file to auto-update the source.
[!IMPORTANT] The new
main.pyautomatically retrieves the repository name and author from the environment, simplifying setup. You no longer need to manually configureurl_fileorurl_pack.
Configuring enum_themes.yml:
- Ensure GitHub Actions are enabled.
- Create a new action using this YAML file.
- Edit the following lines to match your repository setup:
branches: [ main ]
paths: Themes/**
branchesβ branch name (main, master, etc.)pathsβ themes directory.
Add the run command:
run: python main.py Themes store.wpdb
[!WARNING] Respect YAML indentation, otherwise the Action will fail.
3. Extending WinPaletter Sources
Information:
- You can extend or create your own WinPaletter themes hosting server.
- Sources can come from friends, online, or your own repository.
- Some sources are built-in and cannot be removed. Examples of Online Sources:
https://github.com/Abdelrhman-AK/WinPaletter/blob/master/Store/store.wpdb?raw=true
https://github.com/Abdelrhman-AK/WinPaletter-Store/blob/main/store.wpdb?raw=true
Adding Online Sources in WinPaletter
- Open WinPaletter β Settings β Store.
- Toggle Online.
- Press the
+button and add your source URL. - Append ?raw=true for GitHub repository links.
- Remove sources as desired (built-in sources cannot be removed).
- Click Save and open WinPaletter Store.
Adding Offline Sources in WinPaletter
- Open WinPaletter β Settings β Store.
- Toggle Offline.
- Press the
+button and add folders containing your saved themes. - Remove sources as needed.
- Click Save and open WinPaletter Store.
Summary:
- This guide allows developers to host custom online or offline theme sources.
- Supports GitHub repositories, direct links, and local directories.
- Built-in sources in WinPaletter are permanent and cannot be removed.