Zum Inhalt springen

Danksagungen & Zuordnungen

En Parlant~ ist ein Fork von En Croissant, „The Ultimate Chess Toolkit” — eine plattformübergreifende, quelloffene Schach-GUI, entwickelt mit Tauri (Rust + React/TypeScript). Dieses Dokument nennt jede Person, jedes Team, jede Organisation und jedes Projekt, deren Arbeit diese Software ermöglicht hat — vom Kern-Anwendungsframework bis hin zu einzelnen Schriftarten, Icons und Schachfiguren-SVGs.

Das gesamte Projekt ist unter GPL-3.0 lizenziert, bedingt durch die Copyleft-Anforderungen zentraler Schachbibliotheken (chessground, chessops, shakmaty), die von Niklas Fiekas und dem Lichess-Team geschrieben wurden. Zwei Einzelpersonen — Niklas Fiekas und Thibault Duplessis — sind im Wesentlichen für die gesamte Open-Source-Schachinfrastruktur verantwortlich, die En Parlant~ ermöglicht — von der Brettdarstellung über die Zuggenerierung bis hin zu Rätsel-Datenbanken.

Francisco Salgueiro ist der alleinige Schöpfer und Hauptbetreuer von En Croissant. Er hat die überwiegende Mehrheit der über 1.302 Commits in mehr als 23 Releases verfasst. Das Projekt hat über 1.400 GitHub-Sterne und 199 Forks erreicht, mit 46 Commit-basierten Mitwirkenden und über 56 Personen, die in den Release Notes genannt werden.

En Croissant ist eine Tauri 2-Desktop-Anwendung, geschrieben in TypeScript (87,7 %) und Rust (11,9 %). Sie unterstützt Multi-Engine-Analyse, Spielimport von Lichess und Chess.com, Repertoire-Training mit verteilter Wiederholung, Datenbankverwaltung mit Stellungssuche und Rätseltraining. Francisco kümmert sich persönlich um die React-Frontend-Architektur, das Rust-Backend für Datenbankoperationen und Engine-Kommunikation sowie die gesamte Produktvision. Er nimmt Spenden unter encroissant.org/support über Buy Me a Coffee entgegen.

En Parlant~ (von @DarrellThomas) ist ein Fork, der Text-to-Speech (TTS)-Erzählfunktionen hinzufügt — mit Integration von ElevenLabs und Google Cloud für Sprachkommentare, KittenTTS für lokale geräteinterne Synthese und Cloudflare R2 für Audio-Hosting.

Individuelle Mitwirkende an En Croissant vor dem Fork

Abschnitt betitelt „Individuelle Mitwirkende an En Croissant vor dem Fork“

Francisco Salgueiro — Schöpfer, Architekt und Hauptbetreuer aller Funktionen, einschließlich der Tauri 2-Migration, React 19-Migration, Eröffnungsübungssysteme und Datenbank-Engine.

  • @spinward — Option zum Ausblenden der aktuellen Rätselbewertung
  • @anderslundback — Einstellung zum Scrollen von Brettbewegungen
  • @yuval59 — Code-Beiträge (En Croissant v0.10.0)
  • @Cankyre — Züge zurücknehmen beim Spielen gegen die Engine; Durchblättern von Glanzpartien/Fehlern/Patzern
  • @tblrone — Schaltfläche zum Beenden der Engine
  • @pnodet — Code-Beiträge (En Croissant v0.10.0)
  • @Count-MHM — Code-Beiträge (En Croissant v0.11.0)
  • @Scoutboy06 — Code-Beiträge (En Croissant v0.11.0)
  • @Selyss — Code-Beiträge (En Croissant v0.11.0)
  • @RainRat — Code-Beiträge (En Croissant v0.11.0)
  • @zackschuster — Code-Beiträge (En Croissant v0.11.0)
  • @loloof64 — Funktion zur Aufnahme eines Brett-Schnappschusses
  • @JayceFFT — Umschalter zum Springen zum nächsten Rätsel
  • @archimag — Persistierter Datenbank-Seitenstatus, Fortschrittsbalken für Berichte, Tauri-Berechtigungseinstellungen
  • @LiberaTeMetuMortis — Suchoption für Spielergebnis in der Analyse; türkische Übersetzung
  • @teleginpro — Persistierte Einstellungen für Spielberichte
  • @alextaconet — Vorschau von Figurensätzen in den Einstellungen
  • @buracchi — Verbesserte Statistiken auf der Benutzerseite; Fix für die Lichess-Sitzungsauthentifizierung
  • @TurtleOrangina — Zugannotation für „Versäumnis”; Fix für Fenstergröße-Persistenz
  • @kimerikal-games — Farbgebung für Neuheits-Annotationen; koreanische Übersetzung; übersetzbare Zeichenketten
  • @PeterLombaers — Inline-Anzeige von einzeiligen Kommentaren
  • @mtwdev — Tablebase für OP1-Stellungen
  • @BlueManCZ — Fix für Audiowiedergabe unter Linux
  • @tweezerticle — Chess.com-Import-Fixes; Fix für Figurenbewegungssynchronisation
  • @Nullsp4ce — Alternative Matt-in-1-Züge im Rätselmodus akzeptieren
  • @woprandi — Fix für Flackern bei Tablebase-Bewertung; Tagging übersetzbarer Nachrichten
  • @Breush — Unterstützung des Dokumentverzeichnisses unter Linux ohne XDG
  • @dotneB — Züge nach Rätselabschluss verhindern
  • @arimourao — Fix für Schwarz-Start mit Inkrement-Zeit
  • @tkasa — FEN beim Wechsel der Orientierung beibehalten
  • @wjgr2004 — Absturz verhindern, wenn einem Spieler die Zeit ausgeht
  • @ed-cetera — Fix für Endlosschleife beim Hochstufen zur Hauptvariante
  • @sid0-0 — Fix für bedingte Hooks
  • @vainbaum — Fix für leere PGN-Speicherungen
  • @xiaoas, @OleBroemelbue, @nskobelevs, @beachwood23, @jaximus808 — Beiträge in En Croissant v0.14.2
SpracheMitwirkende
Chinesisch@chuigda
Portugiesisch@franciscoBSalgueiro
Spanisch@yako1984, @dav1312
Französisch@PaulJeFi
Italienisch@MrPiada
Russisch@artemy
Norwegisch (Bokmål)@TBestLittleHelper
Türkisch@LiberaTeMetuMortis
Deutsch@eskopp
Koreanisch@kimerikal-games

@garbidge, @pmyszka, @powy-e — Beiträge vor En Croissant v0.10.0.

Tauri — das Rust/WebView-Desktop-Anwendungsframework — wurde 2019 von Daniel Thompson-Yvetot und Lucas Nogueira mitgegründet und wird vom Tauri Programme innerhalb von The Commons Conservancy betreut. Wichtige Mitwirkende sind Amr Bashir und FabianLars. Lizenziert unter Apache-2.0 OR MIT.

React wurde 2013 von Jordan Walke bei Facebook erstellt und wird von Meta Open Source betreut. Wichtige Mitwirkende sind Dan Abramov, Andrew Clark, Sebastian Markbage, Sophie Alpert und Brian Vaughn. Lizenziert unter MIT.

Vite wurde von Evan You (ebenfalls Schöpfer von Vue.js) erstellt und wird unter VoidZero Inc. entwickelt. Wichtige Mitwirkende sind Patak, Anthony Fu und Bjorn Lu. Lizenziert unter MIT.

TypeScript wurde von Anders Hejlsberg (der auch C# und Turbo Pascal erschuf) bei Microsoft erstellt. Lizenziert unter Apache-2.0.

Schachspezifische Bibliotheken und das Niklas-Fiekas-Ökosystem

Abschnitt betitelt „Schachspezifische Bibliotheken und das Niklas-Fiekas-Ökosystem“

Niklas Fiekas ist wohl der wichtigste einzelne Mitwirkende am modernen Open-Source-Schachprogrammierungs-Ökosystem. Er hat alle Kernbibliotheken für die Schachlogik geschrieben, die En Parlant~ sowohl im Frontend als auch im Backend nutzt:

  • chessops — TypeScript-Bibliothek für Schach- und Variantenregeln im Frontend. Lizenziert unter GPL-3.0-or-later.
  • shakmaty — Rust-Schachbibliothek für das Backend mit Zuggenerierung, FEN/SAN/UCI-Notation, Bitboards und Zobrist-Hashing. Lizenziert unter GPL-3.0-or-later.
  • pgn-reader — schneller, nicht-allozierender, streamender PGN-Parser in Rust. Lizenziert unter GPL-3.0-or-later.
  • shakmaty-syzygy — Rust-Bibliothek zum Abfragen von Syzygy-Endspiel-Tablebases. Lizenziert unter GPL-3.0-or-later.

Niklas Fiekas ist auch der Autor von python-chess, der führenden Python-Schachbibliothek, und ein Kernmitwirkender am Lichess-Ökosystem. Seine GPL-3.0-Lizenzierung dieser Bibliotheken überträgt die Copyleft-Anforderung auf En Parlant~ selbst.

Thibault Duplessis gründete Lichess.org — den größten freien, quelloffenen Schachserver. Das Lichess-Projekt steuert mehrere Komponenten zu En Parlant~ bei:

  • Chessground — die interaktive Schachbrett-UI-Komponente mit eigenem DOM-Diffing, SVG-Pfeilzeichnung, Drag-and-Drop, Vorzügen und reinem CSS-Theming. ~10 KB gzipped ohne Abhängigkeiten. Lizenziert unter GPL-3.0-or-later.
  • Lichess API — wird zum Importieren von Benutzerpartien, zum Zugriff auf Cloud-Bewertungen und zum Abfragen des Eröffnungsexplorers verwendet. Teil des AGPL-3.0-Lichess-Projekts.
  • Lichess-Spieldatenbank — Milliarden von Partien im PGN-Format, monatlich veröffentlicht. Lizenziert unter CC0 (gemeinfrei).
  • Lichess-Rätseldatenbank — über 4,6 Millionen Rätsel, generiert aus 600 Millionen mit Stockfish NNUE analysierten Partien. Lizenziert unter CC0.
  • Schachfiguren-SVGs und Brettthemen — stammen aus der Lichess-Sammlung statischer Assets unter verschiedenen Lizenzen (siehe Abschnitt Schachfigurensätze unten).

En Parlant~ unterstützt jede UCI-kompatible Engine und bietet Ein-Klick-Installation für mehrere:

Die in der App angezeigten Engine-Bewertungen stammen von CCRL (Computer Chess Rating Lists), gepflegt von Graham Banks, Kirill Kryukov, Sergio Martinez, Gabor Szots, Shaun Brewer und anderen seit Dezember 2005.

Hauptsächlich aus der Lichess-Asset-Sammlung bezogen:

  • cburnett (Standard) — von Colin M.L. Burnett. Klare, wiedererkennbare SVG-Figuren, erstellt mit Inkscape. Mehrfach lizenziert: BSD-3-Clause, GFDL, GPL, CC-BY-SA-3.0. Auch als Grundlage für das Anwendungssymbol verwendet.
  • Kosal von PhilatypeCC BY 4.0.
  • Alpha — von Eric Bentzen. Klares, modernes Design.
  • Merida — basierend auf der klassischen Merida-Schachschrift, SVG-Adaption gepflegt von der Lichess-Community. Lizenziert unter GPLv2+.
  • California — von Jerry S. Lizenziert unter CC-BY-SA-4.0.
  • Anarcandy — von Mitwirkenden der Lichess-Community.
  • chessnut, chess7, companion, letter, shapes, pixel, pirouetti, cardinal, disguised, dubrovny, fantasy, fresca, gioco, governor, horsey, icpieces, Leipzig, libra, maestro, reillycraig, riohacha, spatial, staunty, tatiana — bezogen von Lichess und ihren jeweiligen Schöpfern, verteilt unter CC BY-SA 3.0 oder kompatiblen Lizenzen.
DatenbankPartienErsteller / Kurator
Lumbra’s Gigabase~9,57 Mio.Lumbra (Community-Kurator)
Caissabase 2024~5,4 Mio.Community-kuratiert aus MillionBase, KingBase und TWIC
Ajedrez Data (OTB)~4,28 Mio.Ajedrez Data-Community
Ajedrez Data (Fernschach)~1,52 Mio.Ajedrez Data-Community
MillionBase~3,45 Mio.Ed Schroder (Autor der Rebel-Schach-Engine) und Community

Syzygy-Endspiel-Tablebases — erstellt von Ronald de Man, mit 7-Steine-Tabellen generiert von Bojun Guo (2018). Zum Download bereitgestellt von Lichess.org.

ChessDB Cloud (chessdb.cn) — von Bojun Guo. Eine umfangreiche Schachwissensdatenbank, aufgebaut aus Engine-Analysen. In die Public Domain entlassen.

  • KittenTTS von KittenML — die standardmäßige lokale TTS-Engine, mit der App gebündelt. Läuft vollständig auf dem Gerät ohne API-Schlüssel. Verwendet ONNX-Sprachmodelle über ONNX Runtime und eSpeak NG für die Phonemisierung.
  • OpenTTS von Michael Hansen (synesthesiam) — optionaler selbst-gehosteter TTS-Server, lokal über Docker ausgeführt.
  • Google Cloud Text-to-Speech — optionaler Cloud-TTS-Anbieter mit WaveNet-Stimmen. Erfordert einen vom Benutzer bereitgestellten API-Schlüssel.
  • ElevenLabs — optionaler Premium-Cloud-TTS-Anbieter mit hochwertigen Stimmen. Erfordert einen vom Benutzer bereitgestellten API-Schlüssel.

Mantine-Ökosystem (alles von Vitaly Rtishchev, MIT)

Abschnitt betitelt „Mantine-Ökosystem (alles von Vitaly Rtishchev, MIT)“

Vitaly Rtishchev hat die gesamte Mantine-Komponentenbibliothek erstellt und betreut — über 30.600 Sterne, über 100 Komponenten, über 50 Hooks.

@mantine/core, @mantine/hooks, @mantine/form, @mantine/notifications, @mantine/spotlight, @mantine/dates, @mantine/modals, @mantine/carousel, @mantine/tiptap, @mantine/nprogress, @mantine/dropzone, @mantine/code-highlight, postcss-preset-mantine

Tauri npm-Pakete (The Tauri Programme, Apache-2.0 OR MIT)

Abschnitt betitelt „Tauri npm-Pakete (The Tauri Programme, Apache-2.0 OR MIT)“

@tauri-apps/api, @tauri-apps/cli, @tauri-apps/plugin-dialog, @tauri-apps/plugin-shell, @tauri-apps/plugin-process, @tauri-apps/plugin-os, @tauri-apps/plugin-log, @tauri-apps/plugin-updater

Tanner Linsley hat das TanStack-Ökosystem erstellt: @tanstack/react-query (asynchrones Datenabrufen/Caching), @tanstack/react-table (Headless-Table/Datagrid), @tanstack/react-virtual (Listen-Virtualisierung).

Erstellt von Tiptap GmbH. @tiptap/react, @tiptap/starter-kit, @tiptap/extension-link.

PaketAutorLizenz
react, react-domJordan Walke / MetaMIT
react-router-domRyan Florence, Michael Jackson / Remix SoftwareMIT
react-i18next, i18nextJan MuhlemannMIT
PaketAutorLizenz
zustandPaul Henschel (Original), Daishi Kato (Hauptbetreuer) / pmndrsMIT
framer-motionMatt Perry / Motion DivisionMIT
embla-carousel-reactDavid JerlekeMIT
PaketAutorLizenz
chess.jsJeff HlywaBSD-2-Clause
chessgroundThibault Duplessis / Lichess.orgGPL-3.0-or-later
chessopsNiklas Fiekas (niklasf)GPL-3.0-or-later
PaketAutorLizenz
dayjsiamkunMIT
fuse.jsKiro RiskApache-2.0
idb-keyvalJake ArchibaldApache-2.0
rechartsXian Wang und Community, aufgebaut auf D3MIT
sql.jsOphir Lojkine und Alon ZakaiMIT
PaketAutorLizenz
@biomejs/biomeEmanuele Stoppa (Fork von Rome von Sebastian McKenzie)MIT OR Apache-2.0
@vitejs/plugin-reactEvan You / Vite-TeamMIT
postcssAndrey Sitnik / Evil MartiansMIT
typescriptAnders Hejlsberg / MicrosoftApache-2.0
viteEvan You / VoidZero Inc.MIT

Alle Tauri-Crates (tauri, tauri-build, tauri-plugin-log, tauri-plugin-dialog, tauri-plugin-shell, tauri-plugin-process, tauri-plugin-os, tauri-plugin-updater) vom Tauri Programme. Lizenziert unter Apache-2.0 OR MIT.

David Tolnay betreut über 160 Rust-Crates und ist verantwortlich für einige der grundlegendsten Bibliotheken im Rust-Ökosystem. Etwa 40 % aller Crates auf crates.io hängen transitiv von serde ab.

CrateAutorLizenz
serdeErick Tryzelaar, David TolnayMIT OR Apache-2.0
serde_jsonDavid TolnayMIT OR Apache-2.0
thiserrorDavid TolnayMIT OR Apache-2.0
anyhowDavid TolnayMIT OR Apache-2.0
CrateAutorLizenz
tokioCarl Lerche, Alice Ryhl, Sean McArthur, Eliza WeismanMIT
reqwestSean McArthurMIT OR Apache-2.0
futures / futures-utilAlex CrichtonMIT OR Apache-2.0
CrateLizenzBeschreibung
shakmatyGPL-3.0-or-laterSchachzuggenerierung, Bitboards, FEN/SAN/UCI
pgn-readerGPL-3.0-or-laterStreamender PGN-Parser
shakmaty-syzygyGPL-3.0-or-laterSyzygy-Tablebase-Abfragen
CrateAutorLizenz
rusqliteJohn Gallagher (Original) / rusqlite-EntwicklerMIT
logDie Rust-ProjektentwicklerMIT OR Apache-2.0
tempfileSteven AllenMIT OR Apache-2.0
dirsSimon OchsenreitherMIT OR Apache-2.0
flate2Alex Crichton, Josh TriplettMIT OR Apache-2.0
zipMathijs van de Nes, Marli Frost, Ryan LevickMIT
  • Tabler Icons — über 6.000 freie SVG-Icons von Pawel Kuna. Verwendet über @tabler/icons-react als Teil des Mantine-Ökosystems. Lizenziert unter MIT.
  • CodeMirror — Code-Editor im Browser von Marijn Haverbeke (auch Schöpfer von ProseMirror und Autor von Eloquent JavaScript), mit Beiträgen von Adrian Heine. Wird für die PGN-Bearbeitung verwendet. Lizenziert unter MIT.
  • Inter — die UI-Schriftart, erstellt von Rasmus Andersson. Eine variable Schriftart, optimiert für Bildschirmlesbarkeit. Wird als Standard-Schriftfamilie von Mantine verwendet. Lizenziert unter SIL Open Font License 1.1.
  • Schachnotations-Schriftart (lichess.chess) — von den pgn4web-Autoren, stellt figurine algebraische Notationssymbole bereit. Lizenziert unter GPLv2+.

Der En Parlant~-Fork — einschließlich seiner TTS-Integration, Dokumentationsseite, mehrsprachigen Übersetzungen, Demo-Pipeline und dieser Danksagungsseite — wurde fast vollständig mit Claude Code erstellt, Anthropics agentem Programmierwerkzeug. Claude Code nutzt Claude, Anthropics KI-Assistent, um direkt im Terminal zu arbeiten — Dateien lesen, Code bearbeiten, Befehle ausführen und Git-Workflows verwalten.

Anthropic wurde 2021 von Dario Amodei und Daniela Amodei zusammen mit mehreren ehemaligen OpenAI-Forschern gegründet, mit Fokus auf KI-Sicherheitsforschung. Claude ist ihre Familie großer Sprachmodelle.

  • Lichess API — gepflegt von Thibault Duplessis und dem Lichess-Team. Spielexporte, Cloud-Bewertungen, Eröffnungsexplorer und Rätseldaten. Teil des AGPL-3.0-Lichess-Projekts.
  • Chess.com Published-Data API — schreibgeschützte REST-API für öffentliche Spielerprofile, Spielarchive und Vereins-/Turnierdaten.
  • ChessDB Cloud Evaluation — von Bojun Guo. Schachwissensdatenbank aus Engine-Analysen. Public Domain.
  • Stockfish — Engine-Binärdateien gehostet auf unserer eigenen Infrastruktur (enparlant.redshed.ai).
  • Lichess — Eröffnungsdatenbanken und Rätseldatenbank, gehostet auf unserer eigenen Infrastruktur. CC BY 4.0.

En Parlant~ ist unter GPL-3.0 lizenziert, bedingt durch die Copyleft-Kaskade seiner Schachabhängigkeiten:

LizenzPakete / Komponenten
GPL-3.0 / GPL-3.0-or-laterEn Parlant~ selbst, chessground, chessops, shakmaty, pgn-reader, shakmaty-syzygy, Stockfish, Lc0, RubiChess, Fairy-Stockfish, Merida-Figuren, Schachnotations-Schriftart
MITReact, Vite, Mantine (alle), TanStack (alle), TipTap (alle), zustand, framer-motion, embla-carousel, dayjs, recharts, sql.js, Tabler Icons, CodeMirror, Node.js, pnpm, tokio, rusqlite, PostCSS
MIT OR Apache-2.0Tauri (alle), Rust-Sprache, serde (alle), tokio, reqwest, futures, thiserror, anyhow, log, tempfile, dirs, flate2, TypeScript, Biome
BSD-2-Clausechess.js
Apache-2.0fuse.js, idb-keyval
SIL OFL 1.1Inter-Schriftart
CC0 (gemeinfrei)Lichess-Spieldatenbank, Lichess-Rätseldatenbank
CC-BY-SA-3.0 / 4.0cburnett-Figuren, California-Figuren, Shapes-Figurensatz
AGPL-3.0Lichess-Hauptcodebasis (API ist frei nutzbar)
Kommerziell/ProprietärKomodo, Dragon by Komodo (optionale Engines, nicht gebündelt)

Die GPL-3.0-Copyleft-Anforderung bedeutet, dass jede Distribution von En Parlant~ den Quellcode enthalten oder ein schriftliches Angebot zu dessen Bereitstellung umfassen muss, und abgeleitete Werke ebenfalls unter GPL-3.0 oder einer kompatiblen Lizenz stehen müssen. Dies wird primär durch die Schachbibliotheken von Niklas Fiekas und die Lichess-Chessground-Komponente bedingt.

Diese Software existiert dank der Beiträge von Hunderten von Einzelpersonen in Dutzenden von Projekten. Drei Personen verdienen besondere Anerkennung: Francisco Salgueiro hat die Anwendung gebaut; Niklas Fiekas hat die Schachlogik-Infrastruktur gebaut (sowohl TypeScript als auch Rust); und Thibault Duplessis hat die Schachbrett-UI und das umfassende Lichess-Ökosystem gebaut, das Figurensätze, Datenbanken, Rätsel und Cloud-Bewertungen bereitstellt. Darüber hinaus untermauern David Tolnays Serialisierungsbibliotheken das Rust-Backend, das Tauri-Team hat das Desktop-Framework ermöglicht, und 56 Community-Mitwirkende haben Features, Übersetzungen in 10 Sprachen und Fehlerbehebungen geliefert, die das Produkt geformt haben.

Jede bewertete Schachstellung verdankt der Stockfish-Community etwas, und jede Endspielabfrage den Syzygy-Tablebases von Ronald de Man. Das Open-Source-Schachökosystem ist bemerkenswert vernetzt — eine einzelne Anwendung wie En Parlant~ greift auf Arbeiten zurück, die zwei Jahrzehnte umspannen, von Colin M.L. Burnetts SVG-Schachfiguren aus dem Jahr 2006 auf Wikimedia bis hin zu den Compiler-Optimierungen von React 19.

Haben wir Sie vergessen? Schreiben Sie uns eine Nachricht und wir können es korrigieren. Falls Sie lieber anonym bleiben möchten, teilen Sie uns auch das einfach mit: darrell@redshed.ai.