How maculinx/better-fabric-console works
Better Fabric Console is a browser-based Minecraft server administration interface hosted by a Fabric mod. The main workflow is browser setup/authentication, then viewing status and live console data or sending configuration, plugin-toggle, and command actions through the WebSocket/HTTP bridge to the running server. It also supports regex log filtering, quick actions, optional Spark metrics, and persisted configuration and log history. The tree contains both a Java-hosted mod and a Node service backend; their runtime relationship is unclear, so they are shown as distinct paths. Some subsystem links follow README claims because their source was not sampled.
Main entry points: App.tsx Admin UI · WebServerHandler.java HTTP and WS handler · PluginManager.java Plugin manager · BetterFabricConsoleMod.java Mod initializer
Components 22
Fabric mod
- Mod initializer
src/main/java/com/mbucci/betterfabricconsole/BetterFabricConsoleMod.java - Web server
src/main/java/com/mbucci/betterfabricconsole/web/WebServer.java - HTTP and WS handler
src/main/java/com/mbucci/betterfabricconsole/web/WebServerHandler.java - Authentication and sessions
src/main/java/com/mbucci/betterfabricconsole/web/AuthManager.java - Mod storage
src/main/java/com/mbucci/betterfabricconsole/web/Storage.java - Regex filters
src/main/java/com/mbucci/betterfabricconsole/web/FilterEngine.java
Web interface
- Admin UI
service/client/src/App.tsx - Dashboard and panels
service/client/src/components/Dashboard.tsx - Console view
service/client/src/components/Console.tsx - Filter controls
service/client/src/components/Filters.tsx - Plugin controls
service/client/src/components/Plugins.tsx - Quick actions
service/client/src/components/QuickActions.tsx
Node service
- Node HTTP and WS API
service/src/server.ts - Node filter engine
service/src/filter.ts
Configuration and logs
- Node storage
service/src/storage.ts - Mod config and logs
- Service JSON files
service/data/config.json
Server integrations
- Console bridge
src/main/java/com/mbucci/betterfabricconsole/console/ConsoleBridge.java - Plugin manager
src/main/java/com/mbucci/betterfabricconsole/plugin/PluginManager.java - Spark metrics
src/main/java/com/mbucci/betterfabricconsole/spark/SparkBridge.java - Minecraft server
Other components
- Administrator
Connections 24
- Administrator → Admin UI: uses
- Admin UI → HTTP and WS handler: HTTP and WS
- HTTP and WS handler → Authentication and sessions: validates sessions
- HTTP and WS handler → Mod storage: reads and writes
- HTTP and WS handler → Plugin manager: toggles plugins
- HTTP and WS handler → Minecraft server: executes commands
- Mod initializer → Web server: starts and stops
- Mod initializer → Plugin manager: initializes
- Mod initializer → Console bridge: starts and stops
- Plugin manager → Console bridge: toggles capture
- Plugin manager → Spark metrics: starts and stops
- Plugin manager → Web server: broadcasts capabilities
- Console bridge → Web server: streams logs
- Spark metrics → Minecraft server: reads metrics
- Mod storage → Mod config and logs: persists
- Admin UI → Dashboard and panels: renders
- Admin UI → Console view: renders
- Admin UI → Filter controls: renders
- Admin UI → Plugin controls: renders
- Admin UI → Quick actions: renders
- Administrator → Node HTTP and WS API: uses
- Node HTTP and WS API → Node storage: reads and writes
- Node HTTP and WS API → Node filter engine: evaluates log rules
- Node storage → Service JSON files: persists