Manifest Schema
An actual json schema is provided here. This can be used in all manner of schema viewers, if you prefer a more interactive view of the schema.
If you’re having trouble visualizing, take a look at the actual manifest json.
In the schema, the type of map
differs from object
in that the names of the keys aren’t always the same.
Anything not explicitly marked as optional is mandatory.
Top-level: object
schemaVersion
:string
semver of schema- Mods:
map
- Key:
string
mod GUID, any unique string but typically something like “io.github.myuser.mymod” - Value:
object
the mod definitionname
:string
the mod’s namecolor
:string
optional A hex color without leading “#”description
:string
A short description of the mod’s functionalityauthors
:map
- Key:
string
the mod author’s name - Value:
object
url
:string
iconUrl
:string
optional A publicly accessible URL that resolves to an image file in a common format such as JPG/PNG and has a suitably small filesize to function as an icon. Should probably not be much larger than 256x256 pixels.
- Key:
sourceLocation
:string
optional A link to the mod’s source code.website
:string
optional A link to the mod’s website. May be the same assourceLocation
.tags
:string[]
optional A list of tags that may be used for search in the future.category
:string
A category that your mod fits intoflags
:string[]
optional A list of flags that apply to your mod- Versions:
map
- Key:
string
semver, should match NeosMod.Version - Value:
object
the mod version definitionchangelog
:string
optional A short description of what changed in your mod. This is markdown formatted text, so you can do things like bulleted lists.releaseURL
: optionalstring
A link to this mod version’s release notes.neosVersionCompatibility
:string
optional Neos does not follow semver “2022.1.28.1310” but “<” and “>” rules will work fine. An example rule might be “>2021.4.2.690,<=2022.1.28.1310”modloaderVersionCompatibility
:string
optional semver version specifier, such as “~1.12.0” or “>=1.8.0”flags
:string[]
optional A list of flags that apply to this specific mod versionconflicts
:map
optional- Key:
string
conflicting mod GUID - Value:
object
version
:string
semver version specifier, “*” is all versions
- Key:
dependencies
:map
optional- Key:
string
dependency mod GUID - Value:
object
version
:string
semver version specifier
- Key:
artifacts
:object[]
A list of files to install as part of this mod version.url
:string
download url of the artifactfilename
:string
optional filename to use for the file. If absent, filename will be extracted from the last part of the URLSha256
:string
SHA-256 hash of this artifactblake3
:string
optional Blake3 hash of this artifactinstallLocation
:string
optional Where this artifact should be installed. defaults to “/nml_mods”
- Key:
- Key: