Skip to content

About

Lichess TV Magic Mirror module

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

MMM-lichess-tv-live

This is a module for the MagicMirror.

MMM-lichess-tv-live shows the current live game from Lichess TV, including the board, player names, ratings, clocks, titles, flairs, and last-move highlighting.

Built using the public Lichess TV channel feed API. No Lichess account or API token is required.

Demo

demo.mp4

Using the Module

To install, clone this repo into the ~/MagicMirror/modules directory. Then move into the module folder and install required libraries:

cd ~/MagicMirror/modules
git clone https://github.com/andyklimczak/MMM-lichess-tv-live.git
cd MMM-lichess-tv-live
npm install

Restart MagicMirror after installing or updating the module.

To use this module, add a configuration block to the modules array in ~/MagicMirror/config/config.js.

Minimal configuration:

{
  module: "MMM-lichess-tv-live",
  position: "bottom_left",
  config: {
    channel: "bullet"
  }
}

Full configuration:

{
  module: "MMM-lichess-tv-live",
  position: "top_right",
  config: {
    channel: "bullet",
    clockTickInterval: 100,
    orientation: "lichess",
    board: "brown",
    pieceSet: "cburnett",
    showFlairs: true,
    showRatings: true,
    showClocks: true,
    showLastMove: true,
    showCoordinates: false
  }
}

Configuration Options

Option Type Default Values Description
channel string "bullet" best, bullet, blitz, rapid, classical, ultraBullet, chess960, crazyhouse, kingOfTheHill, threeCheck, antichess, atomic, horde, racingKings, bot, computer Lichess TV channel to stream. The helper always uses /api/tv/{channel}/feed; omitted or blank values fall back to "bullet".
clockTickInterval number 100 Any positive millisecond value How often the visible active-player clock is redrawn between Lichess feed updates. The default supports tenths display below 10 seconds.
orientation string "lichess" "lichess", "white", "black" Board orientation. "lichess" follows the orientation sent by the TV feed; "white" or "black" force a fixed orientation.
board string "brown" blue-marble, blue, blue2, blue3, brown, canvas2, green-plastic, green, grey, horsey, ic, leather, maple, maple2, marble, metal, ncf-board, olive, pink-pyramid, purple-diag, purple, wood, wood2, wood3, wood4 Local Lichess board image theme. Unsupported values fall back to "brown".
pieceSet string "cburnett" cburnett, celtic, chessnut, fantasy, firi, governor, kiwen-suwi, kosal, letter, merida, mono, mpchess, pirouetti, pixel, rhosgfx, shapes, spatial Local Lichess SVG piece theme. Unsupported values fall back to "cburnett".
showFlairs boolean true true, false Shows the Lichess flair image when the TV feed includes one for the player. Flair images load from Lichess static assets. Player names are rendered as text and preserve Unicode/emoji characters present in the name.
showRatings boolean true true, false Shows or hides player ratings.
showClocks boolean true true, false Shows or hides the player clocks from the feed.
showLastMove boolean true true, false Highlights the origin and destination squares of the last move.
showCoordinates boolean false true, false Shows board file and rank coordinates.

Channel Examples

Default bullet TV:

config: {
  channel: "bullet"
}

Rapid TV:

config: {
  channel: "rapid"
}

Chess960 TV:

config: {
  channel: "chess960",
  orientation: "white",
  board: "blue3",
  pieceSet: "shapes",
  showCoordinates: true
}

Default Configuration

{
  module: "MMM-lichess-tv-live",
  position: "bottom_left",
  config: {
    channel: "bullet",
    clockTickInterval: 100,
    orientation: "lichess",
    board: "brown",
    pieceSet: "cburnett",
    showFlairs: true,
    showRatings: true,
    showClocks: true,
    showLastMove: true,
    showCoordinates: false
  }
}

About

Lichess TV module for MagicMirror.

This is a mixed-license repository. The module source code is licensed under the MIT license in LICENSE.md. Vendored Lichess board and piece assets keep their original licenses, which are listed in THIRD_PARTY_NOTICES.md. Noncommercial and Lichess-listed non-free piece sets are intentionally not included.

Developer Commands

npm install
npm run lint
npm test

About

Lichess TV Magic Mirror module

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages