This repository builds multiple platform targets from one shared restart engine. Keep changes scoped, tested, and documented.
- Java 17 and 21 toolchains for the stable modules
- Java 25 and Gradle 9.7.1 for the separate 26.x ports
- Git
- A test server for the platform you touched when behavior changes need runtime verification
git clone https://github.com/DemonZ-Development/RedstoneReboot.git
cd RedstoneReboot
./gradlew buildArtifacts are written under each module's build/libs/ directory.
RedstoneReboot/
|- common/ Shared restart engine, scheduling, backend, and command logic
|- bukkit/ Bukkit, Spigot, Paper, and compatible plugin entrypoint
|- folia/ Folia plugin entrypoint and scheduler integration
|- fabric/ Fabric server module
|- forge/ Forge server module
|- neoforge/ NeoForge server module
|- modern/ Separate Minecraft 26.1, 26.2, and 26.3 mod builds
|- wiki/ User & Developer API documentation
|- marketplace/ Store listing copy
`- assets/ Images and branding assets
- Create a branch for the change.
- Keep shared logic in
commonunless a platform-specific API is required. - Update platform modules only where the platform adapter actually differs.
- Run
./gradlew build. - Test on a server when the change affects commands, scheduling, alerts, loader startup, or shutdown behavior.
- Keep
commonfree of direct platform imports. - Match existing Java style and package structure.
- Prefer small, explicit changes over broad refactors.
- Use the logger style already present in the module you are editing.
- Update tests when constructor signatures or shared logic change.
If your change affects users, operators, or integrators:
- update the relevant page in
wiki/(includingwiki/Developer-API.mdfor API changes) - keep README links and command/config examples aligned with the code
Good pull requests usually include:
- what changed
- why it changed
- how it was tested
- any config, command, or migration impact