Skip to content

Minecraft — Versions and ModLoaders #10

Description

Parent: #4

Delivers Minecraft-specific convenience functions for retrieving game versions and mod loader information. These endpoints provide richer data than the generic game versions API and are commonly used by Minecraft modding tools.

Acceptance criteria:

  • Get-CurseForgeMinecraftVersion lists all Minecraft versions or retrieves a specific version by string
  • Get-CurseForgeMinecraftModLoader lists mod loaders (with version/includeAll filters) or retrieves a specific loader by name
  • -SortDescending switch works on version listing
  • -Version and -IncludeAll filters work on mod loader listing
  • CurseForgeMinecraftVersion class models the version response
  • CurseForgeMinecraftModLoader class models the mod loader response (both index and full detail)
  • Format files provide default table views
  • Unit tests cover list and single-item retrieval

Endpoints:

Function Method Path
Get-CurseForgeMinecraftVersion (list) GET /v1/minecraft/version
Get-CurseForgeMinecraftVersion (specific) GET /v1/minecraft/version/{gameVersionString}
Get-CurseForgeMinecraftModLoader (list) GET /v1/minecraft/modloader
Get-CurseForgeMinecraftModLoader (specific) GET /v1/minecraft/modloader/{modLoaderName}

Classes:

  • CurseForgeMinecraftVersion: Id, GameVersionId, VersionString, JarDownloadUrl, JsonDownloadUrl, IsApproved, DateModified, GameVersionTypeId, GameVersionStatus, GameVersionTypeStatus
  • CurseForgeMinecraftModLoader (index): Name, GameVersion, IsLatest, IsRecommended, DateModified, Type
  • CurseForgeMinecraftModLoader (detail): adds ForgeVersion, DownloadUrl, Filename, InstallMethod, MavenVersionString, MinecraftVersion, etc.

Decision: Two functions with parameter sets (list vs specific) rather than four separate functions — keeps discoverability simple.


Sub-issues

See linked Tasks below.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions