| Player | Identity | Last seen | Sessions | Playtime |
|---|---|---|---|---|
|
{player.displayName}
{player.online && |
{player.externalPlayerId ? ( `${player.externalPlayerId.slice(0, 12)}…` ) : ( name only )} | {formatRelativeTime(player.lastSeenAt)} | {player.totalSessions} | {formatDuration(player.totalPlaytimeSeconds)} |
{user.displayName ?? user.username}{' '} ({user.username})
{panelUser.displayName ?? panelUser.username}
joined {formatDateTime(panelUser.createdAt)}
Connection settings are managed through environment variables. Workshop metadata is fetched on demand and cached in the API process — there is no background polling.