Skip to main content

Zander

Zander is a free, open-source system built by Modular Software that gives your Minecraft network a website, a Discord bot, and a set of in-game plugins - all working together instead of as separate tools you have to keep in sync by hand.

In practice, that means: your players get a website with forums, support tickets, and event listings; your staff get one dashboard to manage bans, ranks, and announcements instead of juggling five different plugins; and everything a player does - in Discord, on the site, or in-game - is reflected everywhere else automatically.

You don't need to be a developer to run Zander. It's designed to be installed and configured like any other Minecraft server software, and the Installation guide walks through it step by step. The rest of this page (and the technical sections further down) is for anyone who wants to understand how the pieces fit together - feel free to skip straight to Installation if you just want to get set up.

note

📸 Screenshot: The Zander web homepage showing the network stats, announcements, and navigation


What Zander Gives You​

  • A website for your players - forums, support tickets, event listings, and a profile page they can log into
  • An admin dashboard for your staff - manage bans, ranks, announcements, and everything else from one place, without editing config files
  • A Discord bot that stays in sync with the website - a ban issued in Discord shows up on the site, and vice versa
  • Ready-made Minecraft plugins for your hub, login, and proxy servers, so a player's rank and history follow them everywhere

For the technical shape of how these pieces connect (useful if you're the one deploying and maintaining Zander), see Components and Architecture below.


Components​

Zander is split across two repositories:

Minecraft Plugins​

These plugins are installed on your Minecraft servers and proxy and communicate with the Zander API. The Java side is a Maven multi-module project; each module below is a separate plugin JAR deployed to a specific proxy or backend server role.

ModulePlatformPurpose
zander-addonPaper 1.21+General-purpose backend addon - in-game policy viewer (ToS/rules/privacy/refund as an in-game book), social links GUI, and a small local HTTP API mirroring the same data as JSON
zander-authPaper 1.19+Gates server access on join - calls a verification API and kicks players based on the response; also customises the server-list MOTD
zander-hubPaper 1.19+Hub server management - spawn/lobby protection, server-selector compass GUI, cosmetic join/leave effects, fly toggle, proxy messaging for live server lists
zander-pgmPaper/Spigot (Mixed/PGM servers)Match/player/map stat tracking, XP/levels/achievements, Map Voting, Map Ratings, and the Map Token economy for the Mixed module; reports to zander-web over HTTP and a WebSocket
zander-velocityVelocity proxyPrivate messaging, ignore lists, chat freeze/clear moderation, Discord chat/session bridging, report submission, tip/MOTD announcements, an API heartbeat check
zander-waterfallWaterfall/BungeeCord proxyWaterfall-proxy counterpart to zander-velocity for networks still on Waterfall - same category of features (reports, Discord relay, session tracking, heartbeat), built against the older Bukkit-derived proxy API
zander-bridgePaper + VelocityCross-server bridge for task polling and event forwarding (Tebex purchases, Votifier votes) - see note below
note

zander-bridge has no source code on the master branch - the working checkout carries only compiled target/ build output (untracked in git), and the module is absent from the root pom.xml's <modules> list, so it isn't part of the default Maven build. The full source does exist in the repository, on the unmerged local branch codex/support-velocity-and-paper-in-bridge (18 Java files under zander-bridge/src/main/java/org/modularsoft/zander/bridge/ split into common, paper, and velocity packages). Its purpose is confirmed from that source: a cross-platform (Paper + Velocity) bridge that polls zander-web for pending tasks and forwards Tebex purchase/subscription and Votifier vote events into server-command routines. To build it, check out that branch or merge it into the reactor.

Web Platform​

The web platform (zander-web) runs as a Node.js/Fastify application:

ComponentPurpose
Web dashboardAdmin interface for managing the network
REST APIBackend consumed by Minecraft plugins and the dashboard
Discord botCommunity bot with commands, moderation, and event handling
DatabaseMySQL database via Prisma - users, sessions, punishments, forums, and more

Architecture​

Each Minecraft plugin communicates with the Zander API over HTTP using a shared API key. The Discord bot, API, and web dashboard all run as part of the same Node.js process.

Minecraft Servers (plugins)
│
â–¼
Zander REST API ◄── Discord Bot
│
â–¼
MySQL Database
│
â–¼
Web Dashboard

Getting Started​

SectionDescription
InstallationPrerequisites and install steps for all components
ConfigurationConfig files for plugins and web
PermissionsFull permissions reference
FeaturesDetailed feature documentation
API ReferenceREST API documentation
AdministrationDeployment and server management