{"id":13529029,"url":"https://github.com/tommyettinger/libgdx-library-template","last_synced_at":"2025-03-22T06:31:03.498Z","repository":{"id":138670561,"uuid":"409007702","full_name":"tommyettinger/libgdx-library-template","owner":"tommyettinger","description":"A template for libraries that work with libGDX and Gradle 8.x (or 7.x)","archived":false,"fork":false,"pushed_at":"2025-03-09T06:05:19.000Z","size":524,"stargazers_count":14,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-18T08:53:30.895Z","etag":null,"topics":["gradle","libgdx","library","template"],"latest_commit_sha":null,"homepage":"","language":null,"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/tommyettinger.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,"publiccode":null,"codemeta":null}},"created_at":"2021-09-21T23:52:44.000Z","updated_at":"2025-03-09T06:05:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"2f625320-4a23-4bf0-88ea-ae8f541970d6","html_url":"https://github.com/tommyettinger/libgdx-library-template","commit_stats":null,"previous_names":[],"tags_count":2,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tommyettinger%2Flibgdx-library-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tommyettinger%2Flibgdx-library-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tommyettinger%2Flibgdx-library-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tommyettinger%2Flibgdx-library-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tommyettinger","download_url":"https://codeload.github.com/tommyettinger/libgdx-library-template/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244918500,"owners_count":20531682,"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":["gradle","libgdx","library","template"],"created_at":"2024-08-01T07:00:31.739Z","updated_at":"2025-03-22T06:31:03.492Z","avatar_url":"https://github.com/tommyettinger.png","language":null,"funding_links":[],"categories":["Resources"],"sub_categories":["Setup and Deployment"],"readme":"# Library Template using libGDX and Gradle 8.x\n\nChange this to fit your library!\n\nYou'll want to edit gradle.properties to match your library's name, description, author, license, and so on.\nYou probably also want to edit build.gradle to match the projectName and group to what you want to use.\n\nYou should \"Find in Files\" and search for any places that use the word \"template\" in order to find anything\nyou will want to replace. The search should be case-insensitive.\n\nThis includes some extra configuration so that you can deploy more easily to [JitPack](https://jitpack.io). If you're\ntesting a specific commit and don't want to push a release to GitHub or Maven Central just to test (especially\nif testing by seeing if a user can build with your library), then JitPack is a great option. It can also be an\nexcellent way of making GitHub releases available via Maven or Gradle dependencies. The `jitpack.yml` file this\nincludes defaults to Java 21; you can potentially raise this as high as 23, though that might cause problems\nwith Kotlin or libraries like Kryo, or as low as 11 (the minimum for the publishing plugin this uses). JDK 21\nmay warn if you target Java 8, though this is only a warning. It has better generated JavaDocs than earlier\nversions, though, so using 21 seems good.\n\nRegardless of which JDK version JitPack uses to build, the default sourceCompatibility, targetCompatibility, and\nrelease are set to JDK 8, which supports many of the most convenient recent Java features, but not all. You can\nincrease those to a higher version to get features like `var`, records, pattern matching, etc. but that typically\nwill limit your library to being used by desktop builds (LWJGL 2 or 3, server, or headless). Using the language\nlevel of Java 8 is generally safe, but specific APIs added in Java 8 generally aren't available in RoboVM, GWT,\nor some versions of Android. You can go up to compatibility with 11 to get access to `var`, but then you lose\nall compatibility with RoboVM.\n\nThe test code, which goes in `src/test/java/`, uses compatibility with Java 8 by default, so you can use LWJGL3\nin tests out-of-the-box.\n\nThis currently uses Gradle 8.x; if you want an earlier version that uses 7.x,\n[here you go](https://github.com/tommyettinger/libgdx-library-template/releases/tag/v7.6)!\nGradle 8.x seems to be fine for library code, and since approximately the middle of 2023, the tooling seems\nto have finally become capable of handling Gradle 8.x and Android/RoboVM projects. Your Android Gradle Plugin\nversion should probably be 8.6.1 at this point; it may be able to go up soon as IDEA gets more support.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftommyettinger%2Flibgdx-library-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftommyettinger%2Flibgdx-library-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftommyettinger%2Flibgdx-library-template/lists"}