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

# Now playing

> Customise the embed, add vote reactions, and let it update itself as you listen.

```javascript theme={null}
!nowplaying
```

Aliases: `now`, `np`, `fm`. Pass a member to see theirs.

## Embed styles

```javascript theme={null}
!lastfm mode compact
```

| Style     | Shows                                             |
| --------- | ------------------------------------------------- |
| `default` | Everything — artwork, playcounts, scrobble totals |
| `compact` | The essentials                                    |
| `minimal` | Track and artist only                             |

Alias: `style`. `!mode <style>` is the standalone shortcut.

### Custom embeds

Pass a [script](/scripting/overview) instead of a style name:

```javascript theme={null}
!lastfm mode {title: {track.name}} {description: by **{artist.name}** on *{album.name}*} {thumbnail: {track.image}} {color: dominant} {footer: {artist.plays} plays && {lastfm.avatar}}
```

Preview yours with `!lastfm mode view`, reset with `!lastfm mode remove`.

### Available variables

| Variable                                               | Value                          |
| ------------------------------------------------------ | ------------------------------ |
| `{track.name}` `{artist.name}` `{album.name}`          | Names                          |
| `{track.url}` `{artist.url}` `{album.url}`             | Last.fm links                  |
| `{track.image}` `{album.cover}` `{artist.image}`       | Artwork                        |
| `{track.plays}` `{artist.plays}`                       | Your playcount                 |
| `{track.duration}`                                     | Track length                   |
| `{track.spotify_url}` `{artist.spotify_url}`           | Spotify links                  |
| `{track.nowplaying}`                                   | Whether it's playing right now |
| `{lastfm.scrobbles}`                                   | Your total scrobbles           |
| `{lastfm.artists}` `{lastfm.albums}` `{lastfm.tracks}` | Library totals                 |
| `{lastfm.avatar}`                                      | Your Last.fm avatar            |
| `{artist.crown}` `{album.crown}` `{track.crown}`       | Whether you hold the crown     |
| `{artist.wk}` `{album.wka}` `{track.wkt}`              | Your whoknows position         |
| `{old_track.name}`                                     | The previously played track    |

Every name field also takes `.lower`, `.upper` and `.hyperlink`. `{old_track}` has aliases `previous_track`, `prev_track` and `last_track`, and carries the same properties as `{track}`.

### Server-wide styles

```javascript theme={null}
!lastfm mode server compact
!lastfm mode server view
!lastfm mode server remove
```

Requires **Manage Server**. Applies to everyone who hasn't set a personal style, which stays a personal override.

## Vote reactions

```javascript theme={null}
!lastfm reactions 🔥 💀
```

Custom upvote and downvote emojis added to your now-playing messages. Aliases: `reaction`, `reacts`, `react`.

```javascript theme={null}
!lastfm reactions remove
!lastfm reactions reset
!lastfm reactions server 🔥 💀
```

`remove` turns reactions off entirely; `reset` goes back to the defaults. The `server` variants require **Manage Server**.

### Vote stats

<CodeGroup>
  ```javascript Your stats theme={null}
  !lastfm votes
  ```

  ```javascript What you've received theme={null}
  !lastfm votes received
  ```

  ```javascript What you've cast theme={null}
  !lastfm votes given
  ```

  ```javascript Votes on a track theme={null}
  !lastfm votes track some song
  ```

  ```javascript Most upvoted listeners theme={null}
  !lastfm votes top
  !lastfm votes top global
  ```
</CodeGroup>

<Tip>
  Vote reactions turn now-playing from an announcement into a conversation. A music server with a `🔥`/`💀` reaction pair and a leaderboard develops opinions fast.
</Tip>

## Live updating

```javascript theme={null}
!lastfm live on
```

Edits your now-playing message in place as you change tracks, instead of you re-running the command. Aliases: `realtime`, `edit`, `rt`.

## Custom command

```javascript theme={null}
!lastfm command fm
```

Sets a personal alias for your now-playing command. Aliases: `cmd`, `cc`. Remove with `!lastfm command remove`.

## Reskin

Make your [reskin](/getting-started/finding-commands#making-responses-look-right) follow your listening — responses appear under an avatar of whatever you're playing.

<CodeGroup>
  ```javascript Album art as your avatar theme={null}
  !lastfm reskin avatar album
  ```

  ```javascript Artist image instead theme={null}
  !lastfm reskin avatar artist
  ```

  ```javascript Username follows a variable theme={null}
  !lastfm reskin username on
  ```

  ```javascript Reset theme={null}
  !lastfm reskin remove
  ```
</CodeGroup>

Reskin must be enabled in the channel by a moderator first.

## Featured album art

The bot's server avatar can rotate through album art from members' listening:

```javascript theme={null}
!lastfm server avatar on
!lastfm log set #music-log
!lastfm log mention on
```

Requires **Manage Server**. `!lastfm featured` shows what's currently featured; `!lastfm featured history` shows past picks.

## Who's listening right now

```javascript theme={null}
!lastfm playing
```

Everyone in the server currently listening to something. Aliases: `listeners`, `listening`.

## Command reference

| Command                               | Aliases              | Description                  |
| ------------------------------------- | -------------------- | ---------------------------- |
| `nowplaying [member]`                 | `now`, `np`, `fm`    | What's playing               |
| `lastfm mode <style>`                 | `style`              | Embed style or custom script |
| `lastfm mode view`                    | `show`, `display`    | Preview yours                |
| `lastfm mode remove`                  | `reset`, `del`       | Reset to default             |
| `lastfm mode server <style>`          | `guild`, `sv`        | Server-wide style            |
| `lastfm reactions <up> <down>`        | `reaction`, `reacts` | Vote emojis                  |
| `lastfm reactions remove`             | `off`, `none`        | Turn off                     |
| `lastfm reactions reset`              | `clear`, `default`   | Restore defaults             |
| `lastfm reactions server <up> <down>` | `guild`, `sv`        | Server-wide emojis           |
| `lastfm votes`                        | `vote`, `vt`         | Your vote stats              |
| `lastfm votes received`               | `stats`, `recv`      | Votes you've received        |
| `lastfm votes given`                  | `cast`, `voted`      | Votes you've cast            |
| `lastfm votes track <search>`         | `song`, `tr`         | Votes on a track             |
| `lastfm votes top [scope]`            | `leaderboard`, `lb`  | Most upvoted                 |
| `lastfm live (on/off)`                | `realtime`, `rt`     | Auto-update the message      |
| `lastfm command <command>`            | `cmd`, `cc`          | Personal alias               |
| `lastfm reskin avatar <scope>`        | `icon`, `pfp`        | Album/artist art as avatar   |
| `lastfm reskin username (on/off)`     | `name`, `nick`       | Dynamic reskin username      |
| `lastfm playing`                      | `listeners`          | Who's listening now          |
| `lastfm featured`                     | `feat`, `ft`         | Current featured art         |
| `lastfm server avatar (on/off)`       | `pfp`, `featured`    | Rotate the bot's avatar      |
| `lastfm log set <channel>`            | `channel`, `add`     | Log featured picks           |
