Show / Hide Table of Contents

Namespace PonzianiComponents

Classes

Chessboard

Blazor Component for adding an interactive chessboard to a Blazor application. It was build as a Blazor version of chessboard.js and allows to use this functionality without the need to interop with javascript.

There are however quite some differences:

  • No animations
  • It has chess knowledge and therefore provides legal move check out of the box

Engine

Blazor component wrapping an UCI compliant WebAssembly Chess Engine

The component uses the WebAssembly port of Nathan Rugg of ((https://github.com/nmrugg/stockfish.js) Stockfish 14.1

NOTE: Stockfish.js 14.1 reqiures some of the latest features and does not work in every browser.
As it uses the latest WebAssembly threading proposal it requires these HTTP headers on the top level response:

Cross-Origin-Embedder-Policy: require-corp
Cross-Origin-Opener-Policy: same-origin
And the following header on the included files:
 
Cross-Origin-Embedder-Policy: require-corp

The UI of the engine component consists of 3 parts:

  • Info Panel showing the engine's evaluation info (score, depth and principal variation)
  • Evaluation Bar showing the current evaluation graphically
  • Log Panel showing the uci communication
Those 3 UI parts can be activated by the parameters ShowEvaluationInfo, ShowEvaluationbar and ShowLog. It's possible to set all 3 of those parameters to false. In that case the engine can be run completely faceless.
To have more flexibiliyt regarding the UI setup, the evaluation bar and the log panel are offered as independent components: EvaluationGauge and EngineLog

There is only one Engine Process available per window. So by using 2 Engine components, you will not get 2 engine workers, but only one. All UCI commands you to one of your engine commands will reach the same engine.

EngineLog

EvaluationGauge

Engine Evaluation Bar

MovePlayedInfo

Callback information provided by OnMovePlayed

MoveSelectInfo

Scoresheet

Blazor component to list the moves from a chess game

It offers Scoresheet.DisplayMode

You can select if moves shall be outputted in SAN, FIGURINE or in UCI (as used in UCI protocol for engines)

The component is able to output Comments and Variations

SetupChangedInfo

Callback information provided by OnSetupChanged

Enums

Orientation

Scoresheet.DisplayMode

Display Mode for Move List

Scoresheet.NotationType

The output format used for the moves

In This Article
Back to top Generated by DocFX