{"id":15015278,"url":"https://github.com/deftu/gradle-toolkit","last_synced_at":"2026-03-15T03:00:32.670Z","repository":{"id":41475413,"uuid":"477676968","full_name":"Deftu/Gradle-Toolkit","owner":"Deftu","description":"Suite of Gradle tools made to make Minecraft modding less painful.","archived":false,"fork":false,"pushed_at":"2025-04-02T21:32:32.000Z","size":715,"stargazers_count":15,"open_issues_count":2,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-04-12T09:15:01.127Z","etag":null,"topics":["fabricmc","gradle","gradle-kotlin-dsl","gradle-plugin","java","minecraft","minecraft-mod","mod"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Deftu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"deftu","ko_fi":"deftu","custom":["https://s.deftu.dev/paypal"]}},"created_at":"2022-04-04T11:47:09.000Z","updated_at":"2025-04-09T10:21:12.000Z","dependencies_parsed_at":"2024-04-26T13:40:48.947Z","dependency_job_id":"36238dc7-30ad-42c0-bbda-d0c740324b6e","html_url":"https://github.com/Deftu/Gradle-Toolkit","commit_stats":{"total_commits":365,"total_committers":2,"mean_commits":182.5,"dds":0.002739726027397249,"last_synced_commit":"ef7d44b4912d2211bce46c5f65ffd0c9777789df"},"previous_names":["unifycraft/gradle-toolkit"],"tags_count":82,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deftu%2FGradle-Toolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deftu%2FGradle-Toolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deftu%2FGradle-Toolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Deftu%2FGradle-Toolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Deftu","download_url":"https://codeload.github.com/Deftu/Gradle-Toolkit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248543838,"owners_count":21121838,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fabricmc","gradle","gradle-kotlin-dsl","gradle-plugin","java","minecraft","minecraft-mod","mod"],"created_at":"2024-09-24T19:46:42.116Z","updated_at":"2026-03-15T03:00:32.605Z","avatar_url":"https://github.com/Deftu.png","language":"Kotlin","funding_links":["https://github.com/sponsors/deftu","https://ko-fi.com/deftu","https://s.deftu.dev/paypal"],"categories":[],"sub_categories":[],"readme":"# Deftu's Gradle Toolkit\nA simple Gradle plugin ecosystem used to manage your Gradle projects — Automatically setting up project metadata, configuring your plugins, configuring your language compilers.\n\n![Repository badge](https://maven.deftu.dev/api/badge/latest/releases/dev/deftu/gradle/gradle-toolkit?color=c33f3f\u0026name=Gradle+Toolkit)\n\n[![wakatime](https://wakatime.com/badge/user/25be8ed5-7461-4fcf-93f7-0d88a7692cca/project/c079fa6c-67b4-4144-9436-fd9a37ee66b2.svg)](https://wakatime.com/badge/user/25be8ed5-7461-4fcf-93f7-0d88a7692cca/project/c079fa6c-67b4-4144-9436-fd9a37ee66b2)\n\n---\n\n## Usage\nFor the most basic use, DGT has `dev.deftu.gradle.tools`, which will automatically set up your project metadata and repositories, as well as configuring the Java and Kotlin compilers if their respective plugins are present.\n\n### Resources plugin\nThe `dev.deftu.gradle.tools.resources` plugin will automatically configure the `processResources` extension in your project, replacing tokens for project metadata, Minecraft metadata and mod metadata.\n\n#### Normal projects\n- `project_name`\n- `project_version`\n- `project_description`\n- `project_group`\n\n#### Minecraft mods\n- `mod_id`\n- `mod_name`\n- `mod_version`\n- `mod_description`\n- `mod_group`\n- `file.jarVersion` (For Forge)\n- `forge_loader_version` (For Forge)\n- `mc_version`\n- `minor_mc_version`\n- `format_mc_version`\n- `java_version`\n\n### Shadow plugin\nThe `dev.deftu.gradle.tools.shadow` plugin will automatically configure the Shadow plugin in your project, adding a `fatJar` task which is automatically configured to work with Fabric/Architectury Loom (whereas, normal Shadow tasks don't).  \nUsing it is as simple as applying the plugin to your project and using the `shade` configuration for your dependencies. Be aware that `shade` does not configure the dependency for use in your project, it simply tells Shadow to include it in the JAR.\n\n### Dokka plugin\nThe `dev.deftu.gradle.tools.dokka` plugin will automatically put your Dokka documentation inside of your Javadoc JAR, and requires nothing more than being applied to your project.\n\n### GitHub publishing plugin\nThe `dev.deftu.gradle.tools.publishing.github` plugin will automatically configure your project to publish to GitHub releases, and has maximal configuration options. It's easiest to check the `GitHubPublishingExtension` class for all the properties.\n\n### Maven publishing plugin\nThe `dev.deftu.gradle.tools.publishing.maven` plugin will automatically configure your project to publish to a Maven repository, and has maximal configuration options. It's easiest to check the `MavenPublishingExtension` class for all the properties.\n\n### Minecraft API plugin\nThe `dev.deftu.gradle.tools.minecraft.api` plugin will add a `toolkitLoomApi` extension to your project, which allows you to set up a test mod environment for libraries.\n\n### Minecraft Loom plugin\nThe `dev.deftu.gradle.tools.minecraft.loom` plugin will automatically configure the Loom plugin in your project, setting up the versioning of all required dependencies for the given Minecraft version and mod loader your project uses.\n\nYou can configure it to not set up certain aspects of your project with the following properties:\n- `dgt.loom.minecraft.setup`\n- `dgt.loom.mappings.use`\n- `dgt.loom.loader.use`\n\nAn entirely different `minecraft` dependency can be configured with `dgt.loom.minecraft`.\n\nIt is also possible to pick from several options for your mappings using `dgt.loom.mappings`. The default is to use the recommended mappings set for your version and loader (f.ex, Yarn for Fabric, official for Forge 1.16+, etc). The possible options are:\n- `official`/`mojang`/`mojmap` for official mappings\n- `official-like` to use the most similar mappings to the official ones (MCP for legacy Forge/Fabric, official for 1.16+)\n- Alternatively you can outright provide your own dependency notation.\n\nThere are also mapping flavors which you can choose from using `dgt.loom.mappings.flavor`. At the moment, the only supported flavor is `parchment`, which is available for official mappings. When used, the `parchment` flavor will only apply to Minecraft versions which support official mappings (1.16.5+).\n\n### Dependencies\n\nYou can get versions (or full dependency notations) for multiple different loader-specific common dependencies via `mcData#dependencies`.\n\nThe return values of all of the properties inside of the `MCDependency` objects are configurable via several properties:\n- `dgt.fabric.loader.version`\n- `dgt.fabric.yarn.version` (also works for Legacy Fabric!)\n- `dgt.fabric.api.version` (also works for Legacy Fabric!)\n- `dgt.fabric.language.kotlin.version`\n- `dgt.fabric.modmenu.version`\n- `dgt.forge.version`\n- `dgt.forge.mcp.dependency`\n- `dgt.neoforge.version`\n\n### Minecraft Releases plugin\nThe `dev.deftu.gradle.tools.minecraft.releases` plugin will automatically configure your project to publish to both CurseForge and Modrinth, and has maximal configuration options. It's easiest to check the `ReleasingExtension` class for all the properties.\n\n- Publishing for Modrinth can be setup via configuring the `dgt.publish.modrinth.token` property in your global Gradle properties file and setting your project ID via `modrinth.projectId` in `toolkitReleases`\n- Publishing for CurseForge can be setup via configuring the `dgt.publish.curseforge.apikey` property in your global Gradle properties file and setting your project ID via `curseforge.projectId` in `toolkitReleases`\n\n#### How do I locate my global Gradle properties?\n\nBy default, for Windows users, they will be located at `C:\\Users\\YOU\\.gradle\\gradle.properties`. **But**, this can be configured using the `GRADLE_HOME` environment variable, so if setting these properties in the default location does not work, check if you have the environment variable set up.\n\n---\n\n**This project is licensed under [LGPL-3.0][lgpl3].**\\\n**\u0026copy; 2024 Deftu**\n\n[lgpl3]: https://www.gnu.org/licenses/lgpl-3.0.en.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeftu%2Fgradle-toolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeftu%2Fgradle-toolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeftu%2Fgradle-toolkit/lists"}