# TODO ## BUILD - turn structure into ```text //core-bukkit:api //core-bukkit:plugin //core-velocity:api //core-velocity:plugin //core-lib ``` - MAKE THIS A MONOREPO - make sure it doesn't break when using postgres/nats (i only tested with dummies) - lwk make sure velocity plugin works at runtime - runServer target: - start papermc server - start PostgreSQL server - maybe also have some map loaded - refactor BUILD files: MODULES.bazel - debate use of third_party; deduplicate ## bukkit - notification: Friend is now offline/online - /ignore command # Project modules ------- - **core-lib**: stateless library - **core-bukkit-api** stateful api, for minecraft development, depends on core-lib - **core-bukkit-api** stateful plugin, same as core-bukkit-api but implements it - **core-velocity-api** stateful api, for proxy development, depends on core-lib - **core-velocity-impl** stateful plugin, same as core-velocity-api but implements it Building -------- compile the bukkit-impl plugin: ```shell bazel build //core-bukkit-impl:bukkit-impl_deploy.jar ``` This produces `bazel-bin/core-bukkit-impl/bukkit-impl.jar` with all dependencies built-in except for LuckPerms.