> ## Documentation Index
> Fetch the complete documentation index at: https://docs.totemlabs.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Player features

> Understand player tags, scores, leaderboards, and the Totem game-over screen.

export const StatusBadge = ({state = "available", children}) => {
  const labels = {
    available: "Available",
    "early-access": "Early access",
    planned: "Planned",
    internal: "Internal draft"
  };
  return <span className={`totem-status totem-status--${state}`}>
      {children || labels[state] || state}
    </span>;
};

<StatusBadge state="available" />

Totem adds the common player features that most browser games need.

## One player tag

A player can claim one tag and use it across Totem games. Anonymous play still works. Claiming a tag is always optional and never blocks a restart.

## Scores and leaderboards

Report the end of a run with:

```javascript theme={null}
window.Totem.gameOver({ score })
```

## Public leaderboards

Every listed game has a public board:

```text theme={null}
https://play.totemlabs.io/leaderboards/<game-slug>
```

The public board links back to the game and its creator. Claimed tags appear on accepted scores. Anonymous scores stay anonymous.

Totem does not currently expose a public player-profile lookup. The player tag belongs to the player identity used across games; it is not an owner handle.
`score` must be a finite number. Totem ignores an invalid value and writes a console warning.

The ready-made leaderboard shows the top 10 for all time or the last seven days. It also shows the current player's own rank when that player is outside the top 10.

## Game-over screen

After a run, Totem can show:

* the score,
* a personal best,
* the player's current rank,
* Play again,
* the creator and game name,
* another Totem game,
* install guidance on supported devices.

If scores or the leaderboard are unavailable, Play again remains available.
