Package format requirements
A valid package is a zip file that contains the following files:
icon.png | PNG icon for the mod, must be 256x256 resolution. |
README.md | Readme in markdown syntax to be rendered on the package's page. |
CHANGELOG.md (optional) | Changelog in markdown syntax to be rendered on the package's page. |
manifest.json | JSON file with the package's metadata. |
Additionally, the manifest.json must contain the following fields:
Key | Required | Description | Example value |
---|---|---|---|
name | ✔ | Name of the mod, no spaces. Allowed characters: a-z A-Z 0-9 _ |
"Some_Mod" |
description | ✔ | A short description of the mod, shown on the mod list. Max 250 characters. | "Hello world" |
version_number | ✔ | Version number of the mod, following the semantic version format Major.Minor.Patch. | "1.3.2" |
dependencies | ✔ | List of other packages that are required for this package to function | [ "MythicManiac-TestMod-1.1.0", "SomeAuthor-SomePackage-1.0.0" ] |
website_url | ✔ | URL of the mod's website (e.g. GitHub repo). Can be an empty string. | "https://example.com/" |
Example manifest.json content:
{ "name": "TestMod", "version_number": "1.1.0", "website_url": "https://github.com/thunderstore-io", "description": "This is a description for a mod. 250 characters max", "dependencies": [ "MythicManiac-TestMod-1.1.0" ] }