{"id":20555296,"url":"https://github.com/sinytra/multiloader-template","last_synced_at":"2025-10-28T06:02:41.322Z","repository":{"id":185453330,"uuid":"673549861","full_name":"Sinytra/MultiLoader-Template","owner":"Sinytra","description":"Multi-Loader mod dev template set up using the Fabric API on both Forge and Fabric","archived":false,"fork":false,"pushed_at":"2023-08-03T20:37:04.000Z","size":85,"stargazers_count":17,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-12T00:25:50.293Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Sinytra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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},"funding":{"github":"Sinytra","open_collective":"Sinytra"}},"created_at":"2023-08-01T22:21:26.000Z","updated_at":"2025-08-31T17:01:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"d1cec406-0b97-4334-9bc3-af3d95130317","html_url":"https://github.com/Sinytra/MultiLoader-Template","commit_stats":{"total_commits":4,"total_committers":1,"mean_commits":4.0,"dds":0.0,"last_synced_commit":"340ba7797976050d93c9724cf2caea1b80f2ea1e"},"previous_names":["sinytra/multiloader-template"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/Sinytra/MultiLoader-Template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinytra%2FMultiLoader-Template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinytra%2FMultiLoader-Template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinytra%2FMultiLoader-Template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinytra%2FMultiLoader-Template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sinytra","download_url":"https://codeload.github.com/Sinytra/MultiLoader-Template/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinytra%2FMultiLoader-Template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281391780,"owners_count":26492903,"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","status":"online","status_checked_at":"2025-10-28T02:00:06.022Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2024-11-16T03:17:44.460Z","updated_at":"2025-10-28T06:02:41.268Z","avatar_url":"https://github.com/Sinytra.png","language":"Java","funding_links":["https://github.com/sponsors/Sinytra","https://opencollective.com/Sinytra"],"categories":[],"sub_categories":[],"readme":"# MultiLoader Template\n\nThis project provides a Gradle project template that can compile mods for both Forge and Fabric using a common\nsourceset, set up to use the Fabric API and its Forge port to minimize the amount of platform-dependant mod code.\nThis allows you to use Fabric API on both platforms with full api compatibility.\nIf you have any questions or want to discuss the project, feel free to create a post\non [GitHub Discussions](https://github.com/Sinytra/MultiLoader-Template/discussions).\n\nThis template is based on Jared's [MultiLoader Template](https://github.com/jaredlll08/MultiLoader-Template).\n\n### Dependencies\n\nMods created using this template require the [Forgified Fabric API](https://github.com/Sinytra/ForgifiedFabricAPI).\nAlternatively, mod authors may choose to ship select API modules as part of their mod jar, eliminating the dependency.\n\n## Getting Started\n\n## IntelliJ IDEA\n\nThis guide will show how to import the MultiLoader Template into IntelliJ IDEA. The setup process is roughly equivalent\nto setting up Forge and Fabric independently and should be very familiar to anyone who has worked with their MDKs.\n\n1. Clone or download this repository to your computer.\n2. Configure the project by editing the `group`, `mod_name`, `mod_author`, and `mod_id` properties in\n   the `gradle.properties` file. You will also need to change the `rootProject.name`  property in `settings.gradle`,\n   this should match the folder name of your project, or else IDEA may complain.\n3. Open the template's root folder as a new project in IDEA. This is the folder that contains this README file and the\n   gradlew executable.\n4. If your default JVM/JDK is not Java 17 you will encounter an error when opening the project. This error is fixed by\n   going to `File \u003e Settings \u003e Build, Execution, Deployment \u003e Build Tools \u003e Gradle \u003e Gradle JVM`and changing the value\n   to a valid Java 17 JVM. You will also need to set the Project SDK to Java 17. This can be done by going\n   to `File \u003e Project Structure \u003e Project SDK`. Once both have been set open the Gradle tab in IDEA and click the\n   refresh button to reload the project.\n5. Open the Gradle tab in IDEA if it has not already been opened. Navigate\n   to `Your Project \u003e Common \u003e Tasks \u003e vanilla gradle \u003e decompile`. Run this task to decompile Minecraft.\n6. Open the Gradle tab in IDEA if it has not already been opened. Navigate\n   to `Your Project \u003e Forge \u003e Tasks \u003e forgegradle runs \u003e genIntellijRuns`. Run this task to set up run configurations\n   for Forge.\n7. Open your Run/Debug Configurations. Under the Application category there should now be options to run Forge and\n   Fabric projects. Select one of the client options and try to run it.\n8. Assuming you were able to run the game in step 7 your workspace should now be set up.\n\n### Eclipse\n\nWhile it is possible to use this template in Eclipse it is not recommended. During the development of this template\nmultiple critical bugs and quirks related to Eclipse were found at nearly every level of the required build tools. While\nwe continue to work with these tools to report and resolve issues support for projects like these are not there yet. For\nnow Eclipse is considered unsupported by this project. The development cycle for build tools is notoriously slow so\nthere are no ETAs available.\n\n## Development Guide\n\nWhen using this template the majority of your mod is developed in the Common project. The Common project is compiled\nagainst the vanilla game and is used to hold code that is shared between the different loader-specific versions of your\nmod. The Common project has access to the Fabric API and Fabric Loader classes, but does not have a loader set up.\nThe Forge project has access to the ported versions of FAPI and fabric loader, which are fully api-compatible with\nupstream. However, their implementations differ, therefore you should avoid using any kind of internal code.\nCode that requires something from a specific loader (such as entrypoints) must be done through the project that is\nspecific to that loader, such as the Forge or Fabric project.\n\nLoader specific projects such as the Forge and Fabric project are used to load the Common project into the game. These\nprojects also define code that is specific to that loader. Loader specific projects can access all of the code in the\nCommon project. It is important to remember that the Common project can not access code from loader specific projects.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinytra%2Fmultiloader-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsinytra%2Fmultiloader-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinytra%2Fmultiloader-template/lists"}