{"id":22006612,"url":"https://github.com/neoforged/fancymodloader","last_synced_at":"2025-04-05T13:04:08.840Z","repository":{"id":180786583,"uuid":"664716249","full_name":"neoforged/FancyModLoader","owner":"neoforged","description":"The fancy mod loader for NeoForged","archived":false,"fork":false,"pushed_at":"2025-03-29T06:44:01.000Z","size":8755,"stargazers_count":71,"open_issues_count":35,"forks_count":38,"subscribers_count":16,"default_branch":"main","last_synced_at":"2025-03-29T12:04:00.676Z","etag":null,"topics":["hacktoberfest","java-library","minecraft","mod-loader","renovated"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neoforged.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-header.txt","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":"neoforged","open_collective":"neoforged"}},"created_at":"2023-07-10T15:29:38.000Z","updated_at":"2025-03-29T07:55:51.000Z","dependencies_parsed_at":"2023-09-29T13:55:36.100Z","dependency_job_id":"11db1daf-a181-48e8-8744-d77d131f8842","html_url":"https://github.com/neoforged/FancyModLoader","commit_stats":{"total_commits":295,"total_committers":41,"mean_commits":7.195121951219512,"dds":0.8271186440677967,"last_synced_commit":"05a7b8219228f247036e47be124d0eec933b43de"},"previous_names":["neoforged/fancymodloader"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoforged%2FFancyModLoader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoforged%2FFancyModLoader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoforged%2FFancyModLoader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoforged%2FFancyModLoader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neoforged","download_url":"https://codeload.github.com/neoforged/FancyModLoader/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247339154,"owners_count":20923014,"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":["hacktoberfest","java-library","minecraft","mod-loader","renovated"],"created_at":"2024-11-30T01:13:21.596Z","updated_at":"2025-04-05T13:04:08.823Z","avatar_url":"https://github.com/neoforged.png","language":"Java","funding_links":["https://github.com/sponsors/neoforged","https://opencollective.com/neoforged"],"categories":[],"sub_categories":[],"readme":"# Fancy Mod Loader\n\nThe mod loader used by [NeoForge](https://github.com/neoforged/NeoForge).\n\n## Testing\n\nThe `tests` subproject provides several tasks to test FML in various usage scenarios without having to include\nit in a NeoForge working directory.\n\nThe Gradle property `test_neoforge_version` controls, which NeoForge version is used for these tests.\n\n### Production Client\n\nRun the `:tests:runProductionClient` task to start FML in an environment resembling a client launched through the\nVanilla launcher.\n\n### Production Server\n\nRun the `:tests:runProductionServer` task to start FML in an environment resembling a server launched through one of\nthe NeoForge provided startup scripts.\n\n### Mod-Development\n\nRun the `:tests:runClient` or `:tests:runServer` tasks to start FML in an environment resembling a mod development\nenvironment.\n\n## Extension Points\n\n### Mod File Candidate Locators\n\nResponsible for locating potential mod files. Filesystem locations, virtual jars or even full mod-files can be reported to the discovery pipeline for inclusion in the mod loading process.\nThe pipeline also offers a way for locators to add issues (warnings \u0026 errors) that will later be shown to the user when mod loading concludes.\n\nInterface: `net.neoforged.neoforgespi.locating.IModFileCandidateLocator`\n\nResolved via Java ServiceLoader.\n\nYou can construct a basic locator to scan a folder for mods by using `IModFileCandidateLocator.forFolder`. This can be\nuseful if your locator generates a folder on-disk and wants to delegate to default behavior for it (For example used\nby [ServerPackLocator](https://github.com/marchermans/serverpacklocator/)).\n\n### Mod File Readers\n\nResponsible for creating a `IModFile` for mod file candidates.\n\nThe default implementation will resolve the type of the mod file by inspecting the Jar manifest or the mod metadata\nfile (`neoforge.mods.toml`) and return an `IModFile` instance if this succeeds.\n\nInterface: `net.neoforged.neoforgespi.locating.IModFileReader`\n\nResolved via Java ServiceLoader.\n\nMod file instances can be created using the static methods on `IModFile`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneoforged%2Ffancymodloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneoforged%2Ffancymodloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneoforged%2Ffancymodloader/lists"}