Repository navigation
Home
🌐 Language / Langue : English · Français
Welcome to the Tachyon developer documentation. Tachyon is an advanced, high-performance player data management system for modern Minecraft networks.
This wiki is written for developers who want to integrate Tachyon into their own plugins, as well as for administrators deploying and operating the backend service.
On a multi-server Minecraft network, the hardest problem is player data: economy, statistics, inventories, ranks… As soon as a player hops between servers, you face race conditions, dupe glitches, and painful database code.
Tachyon solves this by moving all the heavy lifting into a dedicated backend microservice. Your Minecraft servers only ever talk to a thin, type-safe API. They never open a database connection, never write a SQL query, and never deal with locking.
graph LR
subgraph Network["🎮 Minecraft Network"]
P1(Plugin A) --> API(Tachyon API)
P2(Plugin B) --> API
API --> Core(Tachyon Core Plugin)
end
Core -- gRPC --> Service(Tachyon Microservice)
subgraph Backend["☁️ Backend"]
Service -- Persistence --> Mongo[(MongoDB)]
Service -- Archives --> S3[S3-compatible storage]
end
| Feature | What it gives you |
|---|---|
| 📦 Component data model | Define player data as Protobuf messages — type-safe, versionable, no SQL. |
| ⚡ Cross-server sync | gRPC-backed pull/push with profile locking. Data is loaded before the player joins. |
| ⏪ Granular snapshots | Roll back a single component (e.g. an inventory) to a point in time, not the whole DB. |
| 🕵️ Audit logs | Fire-and-forget, batched structured logging for moderation & analytics. |
| 🧹 S3 archiver | Old snapshots are purged from MongoDB and pushed to S3 to save space and cost. |
| 🛡️ Resilient by design | A retry queue re-sends pending operations after network or DB failures. |
| 📊 Observability | Native Prometheus metrics + ready-made Grafana dashboards. |
| If you want to… | Read |
|---|---|
| Understand how the pieces fit together | Architecture |
| Write your first plugin with Tachyon | Getting Started |
| Look up an interface or method | Core Interfaces |
| Master profiles & the dirty/save model | Profiles & Components |
| Back up and restore player data | Snapshots & Backups |
| React to profile load/unload | Events |
| See real-world recipes | Advanced Examples |
| Deploy & tune the system | Configuration |
📚 The complete API reference is available as the official JavaDoc.
Tachyon is a multi-module Maven project (groupId: tech.sk-works.minecraft):
| Module | Role |
|---|---|
tachyon-service |
The standalone Quarkus backend: gRPC server, MongoDB, S3, snapshots. |
tachyon-api |
The lightweight, dependency-free client API you compile against. |
tachyon-minecraft-plugin |
The Spigot/Paper implementation (Tachyon-Core) that bridges your server to the backend. |
tachyon-libs |
Shaded Protobuf & gRPC runtime, relocated under tech.skworks.tachyon.libs.*. |
tachyon-minecraft-example |
A complete example plugin (Tachyon-Cookies). |
Versions: Java 25, Protobuf 4.33.2, gRPC 1.79.0, MongoDB 8.x, Paper/Spigot 1.8.8+.