{"id":19527371,"url":"https://github.com/papermc/paperweight","last_synced_at":"2026-04-04T00:04:17.378Z","repository":{"id":38032797,"uuid":"152835297","full_name":"PaperMC/paperweight","owner":"PaperMC","description":"Gradle build system plugin for Paper and Paper forks","archived":false,"fork":false,"pushed_at":"2024-04-11T00:09:52.000Z","size":2065,"stargazers_count":205,"open_issues_count":26,"forks_count":40,"subscribers_count":17,"default_branch":"main","last_synced_at":"2024-04-14T00:37:47.863Z","etag":null,"topics":["hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PaperMC.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license/LGPLv2.1.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},"funding":{"github":"PaperMC","open_collective":"PaperMC"}},"created_at":"2018-10-13T04:33:42.000Z","updated_at":"2024-04-06T21:24:25.000Z","dependencies_parsed_at":"2023-02-18T01:31:22.491Z","dependency_job_id":"7892064f-7d6d-4912-9184-22faef4ee058","html_url":"https://github.com/PaperMC/paperweight","commit_stats":{"total_commits":494,"total_committers":20,"mean_commits":24.7,"dds":0.4736842105263158,"last_synced_commit":"4a2e0361526be9801889812fc13453aae3464697"},"previous_names":[],"tags_count":76,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaperMC%2Fpaperweight","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaperMC%2Fpaperweight/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaperMC%2Fpaperweight/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaperMC%2Fpaperweight/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PaperMC","download_url":"https://codeload.github.com/PaperMC/paperweight/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247640465,"owners_count":20971557,"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"],"created_at":"2024-11-11T01:14:46.476Z","updated_at":"2026-04-04T00:04:17.345Z","avatar_url":"https://github.com/PaperMC.png","language":"Kotlin","readme":"## paperweight\n\n`paperweight` consists of three Gradle plugins:\n- `paperweight-core`: Used to build Paper\n- `paperweight-patcher`: Used to create forks of Paper or other `paperweight-patcher`-based forks\n- `paperweight-userdev`: Used to develop internals plugins using Mojang mappings\n\n### How to use this for testing:\n\n- Install `paperweight` to Maven Local:\n```bash\n./gradlew publishToMavenLocal\n```\n- Add `mavenLocal()` for plugin resolution in your test project\n  (see the [Gradle docs](https://docs.gradle.org/current/userguide/plugins.html#sec:custom_plugin_repositories) for more details)\n- Adjust the `paperweight` version in your test project\n  - Local versions of `paperweight` will use have the `-SNAPSHOT` suffix in the version from `gradle.properties` replaced by `-LOCAL-SNAPSHOT`\n\n\u003e Most output `paperweight` creates goes into `\u003cproject-root\u003e/.gradle/caches/paperweight`\n\n### Debugging\n\nCreate a remote JVM debug run configuration in IntelliJ which connects to port 5005, then run Gradle in debug mode:\n\n```bash\n./gradlew --no-daemon -Dorg.gradle.debug=true \u003ctask\u003e\n```\n\nGradle will not start until the debugger is connected so you don't need to worry about missing a breakpoint.\n\n### Style Guide\n\nThis projects follows the opinionated [`ktlint`](https://ktlint.github.io/) linter and formatter. It uses the\n[`ktlint-gradle`](https://github.com/jlleitschuh/ktlint-gradle) plugin to automatically check and format the code in\nthis repo.\n\nRun the `format` task to automatically reformat the project using `ktlint` - which should handle most cases - to\nmaintain a consistent code style. Adjust any errors `ktlint` can't fix itself before committing.\n\n```\n./gradlew format\n```\n\n### IDE Setup\n\nIt's recommended to run the `ktlintApplyToIdea` and `addKtlintFormatGitPreCommitHook` tasks to configure your IDE\nwith `ktlint` style settings and to automatically format this project's code before committing:\n\n```\n./gradlew ktlintApplyToIdea addKtlintFormatGitPreCommitHook\n```\n\n\u003e This project uses many new Gradle features to make sure we're ready for Gradle 7.0 and beyond, and we don't find\n\u003e ourselves stuck in a bad position where it's too hard for us to update. That being said, Gradle always marks new APIs\n\u003e as unstable for a bit until the next major version, so you should probably disable the \"Unstable API Usages\" inspection\n\u003e in IntelliJ as well. The easiest way to do this is just find any place where an \"unstable API\" is used (tons in\n\u003e `Paperweight.kt`) and disable the inspection from there.\n","funding_links":["https://github.com/sponsors/PaperMC","https://opencollective.com/PaperMC"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpapermc%2Fpaperweight","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpapermc%2Fpaperweight","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpapermc%2Fpaperweight/lists"}