Table of Contents

Namespace McServerLauncher.Models.Modrinth

Classes

DonationUrl

A "support the author" link the author filled in (Ko-fi, Patreon, GitHub Sponsors…).

FileHashes

Official checksums Modrinth provides for a file, used to verify the download.

GalleryImage

A gallery image. Url is a thumbnail Modrinth has already resized, which is what the app shows; RawUrl is the full-size original.

ProjectDetail

Full project as returned by GET /v2/project/{id|slug}. It is the search hit plus everything the details page shows: the long description, the gallery, the external links and the licence. Every field is optional on purpose — Modrinth omits what an author never filled in, and the UI must simply not show it rather than invent a value.

ProjectLicense

The project's licence, as the project endpoint returns it (search returns a bare id).

ProjectResult

One search hit. Modrinth returns far more than a card needs, and every extra field here is one request the details page doesn't have to make: the side (client/server), the categories, the follower count and the dates are enough to classify and describe a project on their own.

SearchResponse

One page of search results (GET /v2/search). TotalHits is what tells the store whether there is more to load, since a full page is not by itself proof that there is.

TeamMember

One member of a project's team (GET /v2/team/{id}/members).

TeamUser

The account behind a TeamMember, which is where the author's name comes from.

VersionDependency

A dependency declared by a version. DependencyType is "required", "optional", "incompatible" or "embedded"; only the project id is guaranteed, so the project itself has to be looked up to show a name.

VersionFile

One downloadable file of a version. A version may ship several (sources, javadoc); the one to install is the Primary one, and Hashes is what verifies it.

VersionResult

One published version of a project (GET /v2/version/{id} and the project's version list). It carries both what the version runs on — GameVersions and Loaders, which is how compatibility with a given server is decided — and what has to be downloaded.