Your guild's OSRS data, on a server you run.

osrs-data-hub collects what your members' RuneLite sends: XP, drops, deaths, gear and where they are. It keeps the history and shares it inside your Discord guild, with each player deciding who sees what.

Self-hosted with Docker Compose or Kubernetes. Open source under Apache-2.0.

Guild activity
Live
  • Loot

    Alpha Main received Armadyl chestplate (35.2M) from Kree'arra

    1 min ago35.2M gp
  • Level up

    Iron Mira reached level 99 Fishing

    8 min ago
  • Achievement diary

    Bravo Alt completed a Hard Varrock diary task

    15 min ago
  • Combat task

    Alpha Main completed an Elite combat task: Perfect Zulrah (5 points)

    22 min ago
  • Collection log

    Iron Mira: new collection log item Pet kraken

    29 min ago
Online nowAlpha Mainw302Iron Miraw416Bravo Altw330

Players connect in a couple of minutes

No accounts, no passwords, nothing to configure in the game. The plugin decides what is sent; the hub stores only what arrives.

The player guide
  1. 1

    Install HA Exporter

    Each player installs the plugin from the RuneLite Plugin Hub.

  2. 2

    Pair with a code

    They sign in to your hub with Discord, open Add device, and paste the code and URL into the plugin.

  3. 3

    Play

    Log in to OSRS. The hub shows "Receiving data" within seconds, and keeps everything from then on.

What your guild sees

Screenshots of the hub itself, with test data. It follows each member's light or dark setting and works on phones too.

The dashboard: who is online and a card per account with recent events

Who is online, and a card per account with its levels, gains and latest events.

One hub per guild, and everything the plugin sends

Receives
A drop-in endpoint for the HA Exporter plugin. Players pair with a 5-digit code; no accounts to create, no passwords.
Keeps the history
Current state, 10+ years of XP, drops, level-ups, deaths, collection log, diaries, combat tasks, play sessions, gear, wealth and a location trail.
Shows it
A personal dashboard, a page per account, a guild page with leaderboards, and live toasts when something happens.
Shares it on your terms
Every account decides per category who sees what: only its players, the whole guild, or members they pick.

Sign-in is Discord OAuth, limited to members of your guild and optionally a role. Members who leave lose access automatically, with a grace period before their data is deleted.

Read the API before you run a hub

Every endpoint is documented here with its parameters and response schema, generated from the hub's own OpenAPI document. When your hub is up, point the playground at it and try requests with your key.

Browse the API reference
curl -H "Authorization: Bearer ohub_NM5kHo1WTn_…" \
  https://hub.example.com/api/v1/accounts?online=true

{"data":[{"id":"oC8RsqiTuyak","name":"Alpha Main","type_label":"Normal",
  "owner":{"name":"Owner","discord_id":"100000000000000042"},
  "online":true,"world":302,"last_seen":"2026-09-29T14:13:42.046Z"}],
 "meta":{"generated_at":"2026-09-29T14:14:12.330Z","count":1}}

Run one for your guild

One VM, Docker Compose, a Discord application, and your reverse proxy.

Read the quick start