2022-07-22 16:30:27 +02:00
# Pandalib
### Development library for Minecraft server applications and plugins
This repository contains a collection of maven modules that are used for the development of our Minecraft server. Those
2023-06-20 00:15:46 +02:00
modules are made open source, so they can be used by other developers. Each of them provides different functionalities
2022-07-22 16:30:27 +02:00
that are detailed in their respective Readme file (if any).
2022-08-03 01:56:34 +02:00
- `pandalib-util` General purpose utility and helper classes;
- `pandalib-chat` A chat API working on top of the Adventure API;
- `pandalib-db` An ORM working with a MySQL server through JDBC;
2022-12-24 11:33:54 +01:00
- `pandalib-bungee` Utility and helper classes to use in Bungeecord plugins. Also provides platform implementation for `pandalib-players` and `pandalib-commands` ;
- `pandalib-paper` Utility and helper classes to use in Spigot/Paper plugins. Also provides platform implementation for `pandalib-players` and `pandalib-commands` ;
2022-08-08 03:16:00 +02:00
- `pandalib-reflect` A reflection wrapper to make reflective operation easier;
- `pandalib-permissions` A general purpose permission system;
- `pandalib-bungee-permissions` Integration of the permission system `pandalib-permissions` into Bungeecord;
- `pandalib-paper-permissions` Integration of the permission system `pandalib-permissions` into Bukkit, Vault and WEPIF permission systems;
- `pandalib-players` A library to handle classes representing online or offline players;
- `pandalib-players-permissible` An extension of `pandalib-players` with support for the permission system `pandalib-permissions` ;
- `pandalib-netapi` A poorly designed, but working TCP network library;
- `pandalib-commands` An abstract command manager working on top of [Brigadier ](https://github.com/Mojang/brigadier );
- `pandalib-cli` Utility and helper classes for a standalone CLI Java application.
2023-06-20 00:15:46 +02:00
- `pandalib-core` A catch-all module for some helper classes that didn't have their own module yet;
2022-07-22 16:30:27 +02:00
### Use in your projects
To use one of the module as a Maven dependency, add the Jitpack repository in the `<repositories>` section in your `pom.xml` :
```xml
< repositories >
< repository >
< id > jitpack.io< / id >
< url > https://jitpack.io< / url >
< / repository >
< / repositories >
```
Then, add any module you need in your `<dependencies>` section:
```xml
< dependencies >
< dependency >
< groupId > fr.pandacube.pandalib< / groupId >
< artifactId > pandalib-util< / artifactId > <!-- Put here the name of the module you want -->
2022-08-08 03:16:00 +02:00
< version > master-SNAPSHOT< / version > <!-- last version of master branch -->
2022-07-22 16:30:27 +02:00
< / dependency >
< / dependencies >
```
You can use the version as provided in the code above, but if you want a stable version, check those available in the
2022-08-08 03:16:00 +02:00
[tag section ](https://github.com/PandacubeFr/PandaLib/tags ).