Skip to content

Publishing to Thunderstore

Once you have exported your mod (either via the Unity Workflow and/or manually for HarmonyX projects), you are ready to share it with the community.

WARNING

Packages are immutable, meaning that once you upload a version, it cannot be altered or removed. Make sure you've thoroughly polished and tested your mod prior to upload.

Read Thunderstore's Global Rules before uploading your mod.

1. Preparing your Package

Thunderstore requires a .zip file containing these files at the root:

  • icon.png: Must be a 256x256 PNG file.
  • manifest.json: A JSON file containing metadata (name, version, dependencies).
  • README.md: A Markdown file describing your mod in greater detail.
  • Your Mod Files: Your mod's .dll file (if custom code/functionality was written), your asset bundles (e.g., MyModAssets.repobundle), and any other assets required for your mod to function.

TIP

If you used REPOLib SDK to export your mod from Unity, this zip file is fully created for you automatically in your chosen output folder.

Packages can also contain a CHANGELOG.md file.

You can utilize Thunderstore's Markdown Preview tool to preview your README.md and CHANGELOG.md files before upload, and the Manifest Validator to ensure your manifest.json file is valid.

Full package information is available on the Thunderstore Wiki.

WARNING

If preparing your .zip file manually, do not compress the parent folder. Select all individual files first, then compress those into a new .zip archive.

2. Uploading your Mod

  1. Make sure you are logged in to Thunderstore.
  2. Navigate to the Upload package page (click the "Upload" button at the top-right of the page).
  3. Drag-and-drop your .zip file into the upload area (or browse manually).
  4. Select the Team to upload your mod to.
  5. Select "R.E.P.O." as the Community.
  6. Select the Categories that best fit your mod (e.g., Cosmetics, Items, Monsters, etc.).
  7. Disclose whether your mod contains NSFW content, in accordance with the Global Rules.
    • If this option is accidentally checked upon upload, you will need to contact Thunderstore support to undo it.
  8. Click "Submit".

"Why doesn't my mod show up in mod managers right away?"

After uploading, it will usually take a few hours for your mod to appear in mod managers due to Thunderstore's caching system.

"My mod got rejected!"

If your mod has been rejected, contact Thunderstore support to determine if there are any issues you must resolve with your package.

3. Updating your Mod

To update an existing mod, you must:

  1. Increment the Version Number in your manifest.json file (e.g., from 1.0.0 to 1.0.1, following Semantic Versioning convention). Thunderstore will reject uploads with a version number that has already been used.
  2. Follow the same upload steps as above. Thunderstore will automatically detect it as an update to your existing package based on the name in the manifest.

WARNING

DO NOT change the name of your mod in the manifest.json file if you intend to update an existing listing. Changing the name will create a brand new mod page instead of updating the old one.

4. Managing your Mod Post-Upload

While the contents within your mod package cannot be edited, you are able to change its Categories and Deprecation Status.

  1. Navigate to your mod's page, and click "Manage Package" in the top-right, above the "Install" button.
  2. Edit the following details as desired:
    • Edit categories: You can add or remove categories, such as in the case where your mod has new functionality, or if existing categories do not fit well.
    • "Deprecate": Click this button to deprecate your package if you no longer plan to maintain it, and/or if it's no longer functional. This can be undone by following the same steps, or automatically when you upload a new version.

Resources

Thunderstore Wiki