{"id":16377955,"url":"https://github.com/georgh93/pcgf_pluginlib","last_synced_at":"2025-03-21T01:32:25.786Z","repository":{"id":40403223,"uuid":"41878835","full_name":"GeorgH93/PCGF_PluginLib","owner":"GeorgH93","description":"Collection of classes useful for Bukkit/Spigot/Paper/BungeeCord/Waterfall plugins","archived":false,"fork":false,"pushed_at":"2025-02-26T07:27:12.000Z","size":2419,"stargazers_count":27,"open_issues_count":14,"forks_count":16,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-16T16:58:00.407Z","etag":null,"topics":["bukkit","java","minecraft","spigot","spigot-plugin"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GeorgH93.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":"2015-09-03T19:13:55.000Z","updated_at":"2025-01-05T01:28:05.000Z","dependencies_parsed_at":"2023-02-17T11:00:24.131Z","dependency_job_id":"5c2d44d4-d75b-49c0-8225-98ff5ecf9a2b","html_url":"https://github.com/GeorgH93/PCGF_PluginLib","commit_stats":{"total_commits":1038,"total_committers":9,"mean_commits":"115.33333333333333","dds":0.09152215799614638,"last_synced_commit":"1955041b247c1113ab929c881fe7ecff61b897df"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeorgH93%2FPCGF_PluginLib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeorgH93%2FPCGF_PluginLib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeorgH93%2FPCGF_PluginLib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeorgH93%2FPCGF_PluginLib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GeorgH93","download_url":"https://codeload.github.com/GeorgH93/PCGF_PluginLib/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244099888,"owners_count":20398044,"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":["bukkit","java","minecraft","spigot","spigot-plugin"],"created_at":"2024-10-11T03:44:19.769Z","updated_at":"2025-03-21T01:32:25.272Z","avatar_url":"https://github.com/GeorgH93.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[ci]: https://ci.pcgamingfreaks.at/job/PluginLib/\n[ciImg]: https://ci.pcgamingfreaks.at/job/PluginLib/badge/icon\n[versionImg]: https://img.shields.io/maven-metadata/v?color=blue\u0026label=version\u0026metadataUrl=https%3A%2F%2Frepo.pcgamingfreaks.at%2Frepository%2Fmaven-snapshots%2Fat%2Fpcgamingfreaks%2FPluginLib%2Fmaven-metadata.xml\n[coverageImg]:https://codecov.io/gh/GeorgH93/PCGF_PluginLib/branch/master/graph/badge.svg?token=EKWJRvdGny\n[coverage]: https://codecov.io/gh/GeorgH93/PCGF_PluginLib\n[license]: https://github.com/GeorgH93/PCGF_PluginLib/blob/master/LICENSE\n[licenseImg]: https://img.shields.io/github/license/GeorgH93/PCGF_PluginLib.svg\n[javadoc]: https://ci.pcgamingfreaks.at/job/PluginLib/javadoc/\n\n# PCGF - PluginLib\nA library for Bukkit, Spigot, Paper and BungeeCord, that provides commonly used functions\nand provides cross version support for a lot of Minecraft features\n(some of which are no longer supported or support for them has been added later by Bukkit/Spigot/Paper).\n\n[![Build Status][ciImg]][ci] [![Coverage Status][coverageImg]][coverage] ![Version][versionImg] [![licenseImg]][license]\n\n## Download:\n[Build Server][ci]\n\n## Features:\n### Bukkit + BungeeCord:\n* Config/Language file handler\n    * File upgrade support (copy old values into a new file)\n    * Comment support\n* UUID converter\n  * Supports Name -\u003e UUID, UUID -\u003e Name or UUID -\u003e Name changes\n  * Supports online and offline mode UUIDs\n  * Batch converting and automatic batch size detection (in case Mojang decides to reduce the maximum batch size again)\n  * Caching\n    * If the lib is running as a Plugin the cache can be shared by all plugins using it\n    * Preloads UUIDs from the Minecraft servers UUID cache\n* Auto-updater\n    * Supports multiple sites for checking and downloading of updates\n        * spigotmc.org (checking + downloading (free and hosted on spigotmc.org))\n        * dev.bukkit.org (checking + downloading)\n        * GitHub (checking + downloading)\n        * Jenkins build servers (checking + downloading)\n        * Static URL (downloading)\n* JSON message handling\n* Collections of useful functions\n* Option to share database connection pool between multiple plugins\n\n### Bukkit only:\n* Particles handler\n* Item-Stack serializer\n* Material name resolver\n* Late registrable commands\n\n## Plugins using it:\n* [Marriage Master](https://www.spigotmc.org/resources/19273/) (V2.0 and newer)\n* [Minepacks](https://www.spigotmc.org/resources/19286/) (V2.0 and newer)\n\n## Requirements:\n* Java 8 (or newer)\n* Bukkit, Spigot, Paper, Uranium for MC 1.7 or newer or BungeeCord for MC 1.8 or newer\n* (Optional) PlaceholderAPI (to use it with the provided message API)\n\n## Adding it to your plugin:\nThe library can be added in two ways to your plugin.\n1. Requiring it to be installed as a plugin (might be published on dev.bukkit.org and spigotmc.org at some point)\n2. Shading it into your plugin (requires more RAM and some features will not work)\n\n### Adding the library as a dependency with Maven:\n#### Repository:\n```xml\n\u003crepository\u003e\n\t\u003cid\u003epcgf-repo\u003c/id\u003e\n\t\u003curl\u003ehttps://repo.pcgamingfreaks.at/repository/maven-everything\u003c/url\u003e\n\u003c/repository\u003e\n```\n\n#### Dependency:\n```xml\n\u003cdependency\u003e\n \t\u003cgroupId\u003eat.pcgamingfreaks.pcgf_pluginlib\u003c/groupId\u003e\n \t\u003cartifactId\u003ePluginLib\u003c/artifactId\u003e\n \t\u003cversion\u003e1.0.39.4-SNAPSHOT\u003c/version\u003e\u003c!-- Check version shield for newest version --\u003e\n\u003c/dependency\u003e\n```\n\n### Requiring the library to be installed as a standalone plugin:\nAdd `PCGF_PluginLib` as a dependency for your Bukkit/Spigot or BungeeCord plugin.\nThe users will have to install the library as a plugin. Download: [https://ci.pcgamingfreaks.at/job/PluginLib/][ci]\n\n### Shading the library into your plugin with maven:\nBy adding the library to your plugin through shading it will require more memory (if multiple plugins using the library are installed) and some features (DB connection sharing, translation sharing) will not be available.\nThe recommended shading settings:\n```xml\n\u003cplugin\u003e\n    \u003cgroupId\u003eorg.apache.maven.plugins\u003c/groupId\u003e\n    \u003cartifactId\u003emaven-shade-plugin\u003c/artifactId\u003e\n    \u003cversion\u003e3.4.1\u003c/version\u003e\n    \u003cexecutions\u003e\n        \u003cexecution\u003e\n            \u003cphase\u003epackage\u003c/phase\u003e\n            \u003cgoals\u003e\n                \u003cgoal\u003eshade\u003c/goal\u003e\n            \u003c/goals\u003e\n            \u003cconfiguration\u003e\n                \u003ccreateDependencyReducedPom\u003efalse\u003c/createDependencyReducedPom\u003e\n                \u003cminimizeJar\u003efalse\u003c/minimizeJar\u003e\u003c!-- Do not minimize or some of the utils will not work on Bukkit --\u003e\n                \u003cartifactSet\u003e\n                    \u003cincludes\u003e\n                        \u003cinclude\u003eat.pcgamingfreaks:PluginLib\u003c/include\u003e\n                    \u003c/includes\u003e\n                \u003c/artifactSet\u003e\n                \u003crelocations\u003e\n                    \u003c!-- Relocate the lib to prevent conflicts with other plugins using it --\u003e\n                    \u003crelocation\u003e\n                        \u003cpattern\u003eat.pcgamingfreaks\u003c/pattern\u003e\n                        \u003cshadedPattern\u003eyour_package.libs.at.pcgamingfreaks\u003c/shadedPattern\u003e\n                    \u003c/relocation\u003e\n                \u003c/relocations\u003e\n            \u003c/configuration\u003e\n        \u003c/execution\u003e\n    \u003c/executions\u003e\n\u003c/plugin\u003e\n```\nReplace `your_package` with the package of your plugin.  \n**Do not shade this library into your plugin without relocation!!!**\n\n## Building from source:\n### Requirements:\n* Java JDK\n  * Min: 8\n  * Recommended: 21\n    * Acceleration for Minecraft 1.17 can only be built with Java \u003e= 16\n    * Acceleration for Minecraft 1.18 can only be built with Java \u003e= 17\n    * Acceleration for Minecraft 1.20.5 can only be built with Java \u003e= 21\n* Maven \u003e= 3.6.3\n* git\n\n### Building:\n```bash\ngit clone https://github.com/GeorgH93/PCGF_PluginLib\ncd PCGF_PluginLib\nmvn package\n```\n\n## Links:\n* [Build Server ![Build Status][ciImg]][ci]\n* [Code Coverage ![Coverage Status][coverageImg]][coverage]\n* [Javadoc][javadoc]\n* Spigot (TBA)\n* Dev Bukkit (TBA)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeorgh93%2Fpcgf_pluginlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgeorgh93%2Fpcgf_pluginlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeorgh93%2Fpcgf_pluginlib/lists"}