Home

Mod Publish Plugin

A modern Gradle plugin to publish Minecraft mods to a range of destinations. Start with the Getting Started page.

Features

  • Supports CurseForge, Modrinth, Github and Discord
  • Typesafe DSL to easily publish to multiple locations with minimal repetition
  • Retry on failure
  • Dry run mode to try and increase confidence in your buildscript before releases
  • Built with modern Gradle features
  • Mod loader independent

FAQ

  • Why use Kotlin?
    • I wanted to explore using Kotlin for a larger project, as Gradle already includes Kotlin there should be little downside to the end user.
    • Gradle includes Kotlin so there is no additional dependency for the end user.
    • Groovy buildscripts are fully supported.
  • Why do I need to specify the minecraft versions for both CurseForge and Modrinth?
    • Curseforge and Modrinth use different versioning for snapshots, thus they must be defined for each platform.
  • Feature x or platform y is not supported
    • Please open an issue on this repo!
  • I have a question and need some help

Changelog

0.8.4

  • Fix project files attempting to include transitive dependencies

0.8.3

  • Add helper to depend on files from another subproject
  • Add documentation and tests for the common use case of multi platform setups

0.8.2

  • Allow providing the version name instead of version id for a modrinth dependency

0.8.1

  • Fix to accommodate a change in Modrinth's API for updating project descriptions

0.8.0

  • Add modern Discord message styles and link button and inline link support
  • Support setting CurseForge additional file display name.
  • Fail on duplicate Github file names.
  • Use convention instead of set in from functions, removes the need for from to be first.