Podziękowania i atrybucje
En Parlant~ jest forkiem projektu En Croissant, „Kompletnego zestawu narzędzi szachowych” — wieloplatformowego, otwartoźródłowego interfejsu szachowego zbudowanego przy użyciu Tauri (Rust + React/TypeScript). Niniejszy dokument wymienia wszystkie osoby, zespoły, organizacje i projekty, których praca umożliwiła powstanie tego oprogramowania — od podstawowego szkieletu aplikacji po poszczególne czcionki, ikony i pliki SVG figur szachowych.
Cały projekt jest objęty licencją GPL-3.0, wynikającą z wymogów copyleft kluczowych bibliotek szachowych (chessground, chessops, shakmaty) autorstwa Niklasa Fiekasa i zespołu Lichess. Dwie osoby — Niklas Fiekas i Thibault Duplessis — są odpowiedzialne za zasadniczo całą otwartoźródłową infrastrukturę szachową, która umożliwia działanie En Parlant~, od renderowania szachownicy po generowanie ruchów i bazy zagadek.
Główny projekt i jego twórca
Dział zatytułowany „Główny projekt i jego twórca”Francisco Salgueiro jest jedynym twórcą i głównym opiekunem En Croissant. Jest autorem zdecydowanej większości z ponad 1302 commitów w ponad 23 wydaniach. Projekt zdobył ponad 1400 gwiazdek na GitHubie i 199 forków, a wkład w postaci commitów wniosło 46 współtwórców, zaś w notatkach do wydań wymieniono ponad 56 osób.
En Croissant to aplikacja desktopowa Tauri 2 napisana w TypeScript (87,7%) i Rust (11,9%). Obsługuje analizę wielosilnikową, import partii z Lichess i Chess.com, trening repertuaru z powtórkami rozłożonymi w czasie, zarządzanie bazami danych z wyszukiwaniem pozycji oraz trening zagadek. Francisco osobiście odpowiada za architekturę frontendową w React, backend w Rust do operacji na bazach danych i komunikacji z silnikami oraz za ogólną wizję produktu. Przyjmuje darowizny na stronie encroissant.org/support za pośrednictwem Buy Me a Coffee.
En Parlant~ (autorstwa @DarrellThomas) to fork dodający funkcje narracji za pomocą syntezy mowy (TTS) — integrujący ElevenLabs i Google Cloud do komentarza głosowego, KittenTTS do lokalnej syntezy na urządzeniu oraz Cloudflare R2 do hostowania plików audio.
Indywidualni współtwórcy En Croissant sprzed forka
Dział zatytułowany „Indywidualni współtwórcy En Croissant sprzed forka”Główny deweloper
Dział zatytułowany „Główny deweloper”Francisco Salgueiro — twórca, architekt i główny opiekun wszystkich funkcji, w tym migracji do Tauri 2, migracji do React 19, systemów ćwiczenia otwarć i silnika bazy danych.
Współtwórcy funkcji
Dział zatytułowany „Współtwórcy funkcji”- @spinward — opcja ukrycia aktualnego ratingu zagadki
- @anderslundback — ustawienie przewijania ruchów na szachownicy
- @yuval59 — wkład w kod (En Croissant v0.10.0)
- @Cankyre — cofanie ruchów podczas gry z silnikiem; przeglądanie geniuszy/błędów/poważnych błędów
- @tblrone — przycisk zatrzymania silnika
- @pnodet — wkład w kod (En Croissant v0.10.0)
- @Count-MHM — wkład w kod (En Croissant v0.11.0)
- @Scoutboy06 — wkład w kod (En Croissant v0.11.0)
- @Selyss — wkład w kod (En Croissant v0.11.0)
- @RainRat — wkład w kod (En Croissant v0.11.0)
- @zackschuster — wkład w kod (En Croissant v0.11.0)
- @loloof64 — funkcja przechwytywania zrzutu szachownicy
- @JayceFFT — przełącznik przeskakiwania do następnej zagadki
- @archimag — zapamiętywanie stanu strony bazy danych, pasek postępu raportów, ustawienia uprawnień Tauri
- @LiberaTeMetuMortis — opcja wyszukiwania wyniku partii w analizie; tłumaczenie na turecki
- @teleginpro — zapamiętywanie ustawień raportów partii
- @alextaconet — podgląd zestawów figur w ustawieniach
- @buracchi — ulepszone statystyki na stronie użytkowników; poprawka uwierzytelniania sesji Lichess
- @TurtleOrangina — adnotacja ruchu „Miss”; poprawka zapamiętywania rozmiaru okna
- @kimerikal-games — kolorowanie adnotacji nowości; tłumaczenie na koreański; łańcuchy znaków możliwe do przetłumaczenia
- @PeterLombaers — wyświetlanie komentarzy jednowierszowych w linii
- @mtwdev — baza końcówek dla pozycji OP1
- @BlueManCZ — poprawka odtwarzania dźwięku na Linuksie
- @tweezerticle — poprawki importu z Chess.com; poprawka synchronizacji przesuwania figur
Współtwórcy poprawek błędów
Dział zatytułowany „Współtwórcy poprawek błędów”- @Nullsp4ce — akceptowanie alternatywnego mata w 1 ruchu w trybie zagadek
- @woprandi — poprawka migotania ewaluacji bazy końcówek; oznaczanie komunikatów do tłumaczenia
- @Breush — obsługa katalogu dokumentów na Linuksie bez XDG
- @dotneB — zapobieganie ruchom po ukończeniu zagadki
- @arimourao — poprawka startu czarnych z dodawaniem czasu
- @tkasa — zachowywanie FEN przy zmianie orientacji
- @wjgr2004 — zapobieganie awarii, gdy graczowi skończy się czas
- @ed-cetera — poprawka nieskończonej pętli przy promowaniu do wariantu głównego
- @sid0-0 — poprawka warunkowych hooków
- @vainbaum — poprawka zapisywania pustych PGN
- @xiaoas, @OleBroemelbue, @nskobelevs, @beachwood23, @jaximus808 — wkład w En Croissant v0.14.2
Współtwórcy tłumaczeń
Dział zatytułowany „Współtwórcy tłumaczeń”| Język | Współtwórcy |
|---|---|
| Chiński | @chuigda |
| Portugalski | @franciscoBSalgueiro |
| Hiszpański | @yako1984, @dav1312 |
| Francuski | @PaulJeFi |
| Włoski | @MrPiada |
| Rosyjski | @artemy |
| Norweski (Bokmål) | @TBestLittleHelper |
| Turecki | @LiberaTeMetuMortis |
| Niemiecki | @eskopp |
| Koreański | @kimerikal-games |
Współtwórcy dokumentacji i CI/CD
Dział zatytułowany „Współtwórcy dokumentacji i CI/CD”- @qqiumax — aktualizacja licencji w README
- @jaimecbernardo — instrukcje instalacji pnpm
- @qoqosz — poprawki ostrzeżeń shakmaty
- @hadim — zmiana nazwy TAURI_SIGNING_PRIVATE_KEY
- @chrisbilodeau — aktualizacje workflow GitHub
Wcześni współtwórcy
Dział zatytułowany „Wcześni współtwórcy”@garbidge, @pmyszka, @powy-e — wkład sprzed wersji En Croissant v0.10.0.
Szkielet i platforma bazowa
Dział zatytułowany „Szkielet i platforma bazowa”Tauri — desktopowy szkielet aplikacyjny Rust/WebView — został współzałożony przez Daniela Thompson-Yvetota i Lucasa Nogueirę w 2019 roku i jest utrzymywany przez The Tauri Programme w ramach The Commons Conservancy. Kluczowi współtwórcy to Amr Bashir i FabianLars. Licencja Apache-2.0 OR MIT.
React został stworzony przez Jordana Walke’a w Facebooku w 2013 roku i jest utrzymywany przez Meta Open Source. Kluczowi współtwórcy to Dan Abramov, Andrew Clark, Sebastian Markbage, Sophie Alpert i Brian Vaughn. Licencja MIT.
Vite został stworzony przez Evana You (również twórcę Vue.js) i jest rozwijany w ramach VoidZero Inc. Kluczowi współtwórcy to Patak, Anthony Fu i Bjorn Lu. Licencja MIT.
TypeScript został stworzony przez Andersa Hejlsberga (który stworzył również C# i Turbo Pascala) w Microsoft. Licencja Apache-2.0.
Biblioteki szachowe i ekosystem Niklasa Fiekasa
Dział zatytułowany „Biblioteki szachowe i ekosystem Niklasa Fiekasa”Niklas Fiekas jest prawdopodobnie najważniejszym pojedynczym współtwórcą współczesnego otwartoźródłowego ekosystemu programowania szachowego. Jest autorem wszystkich podstawowych bibliotek logiki szachowej używanych przez En Parlant~ zarówno po stronie frontendu, jak i backendu:
- chessops — biblioteka szachowa TypeScript z regułami wariantów dla frontendu. Licencja GPL-3.0-or-later.
- shakmaty — biblioteka szachowa Rust dla backendu, zapewniająca generowanie ruchów, notację FEN/SAN/UCI, bitboardy i hashing Zobrista. Licencja GPL-3.0-or-later.
- pgn-reader — szybki, strumieniowy parser PGN w Rust bez alokacji. Licencja GPL-3.0-or-later.
- shakmaty-syzygy — biblioteka Rust do odpytywania baz końcówek Syzygy. Licencja GPL-3.0-or-later.
Niklas Fiekas jest również autorem python-chess, dominującej biblioteki szachowej dla Pythona, oraz kluczowym współtwórcą ekosystemu Lichess. Jego licencjonowanie GPL-3.0 tych bibliotek przenosi wymóg copyleft na sam En Parlant~.
Ekosystem Lichess i Thibault Duplessis
Dział zatytułowany „Ekosystem Lichess i Thibault Duplessis”Thibault Duplessis założył Lichess.org — największy darmowy, otwartoźródłowy serwer szachowy. Projekt Lichess dostarcza wiele komponentów dla En Parlant~:
- Chessground — interaktywny komponent UI szachownicy, oferujący niestandardowe porównywanie DOM, rysowanie strzałek SVG, przeciąganie i upuszczanie, ruchy wstępne oraz stylowanie wyłącznie za pomocą CSS. ~10KB po gzipie, bez zależności. Licencja GPL-3.0-or-later.
- Lichess API — używane do importowania partii użytkowników, dostępu do ewaluacji chmurowych i odpytywania eksploratora otwarć. Część projektu Lichess na licencji AGPL-3.0.
- Baza partii Lichess — miliardy partii w formacie PGN, publikowane co miesiąc. Licencja CC0 (domena publiczna).
- Baza zagadek Lichess — ponad 4,6 miliona zagadek wygenerowanych z 600 milionów przeanalizowanych partii za pomocą Stockfish NNUE. Licencja CC0.
- Pliki SVG figur szachowych i motywy szachownic — pochodzą z kolekcji zasobów statycznych Lichess na różnych licencjach (patrz sekcja zestawów figur szachowych poniżej).
Silniki szachowe
Dział zatytułowany „Silniki szachowe”En Parlant~ obsługuje każdy silnik kompatybilny z UCI i oferuje instalację jednym kliknięciem dla kilku z nich:
- Stockfish — najsilniejszy otwartoźródłowy silnik szachowy, pierwotnie stworzony przez Torda Romstada, Marco Costalbę i Joonę Kiiskiego. Obecnie utrzymywany przez globalną społeczność. Używa ewaluacji NNUE trenowanej na danych z projektu Leela Chess Zero. GPL-3.0.
- Leela Chess Zero (Lc0) — szachowy silnik sieci neuronowej inspirowany AlphaZero firmy DeepMind, prowadzony przez Gary’ego Linscotta. Wytrenowany na ponad 2,5 miliarda partii samogry. GPL-3.0-or-later.
- RubiChess autorstwa Andreasa Matthiesa — silny otwartoźródłowy silnik UCI z ewaluacją NNUE. GPL-3.0.
- Komodo — pierwotnie stworzony przez Dona Daileya (1956–2013), kontynuowany przez Marka Leflera z wiedzą ewaluacyjną GM Larry’ego Kaufmana. Przejęty przez Chess.com w 2018 roku. Darmowy do użytku niekomercyjnego.
- Dragon by Komodo — wersja NNUE, rozwijana przez ten sam zespół plus Dmitrija Pervova i Dietricha Kappego. Komercyjny/własnościowy.
- Fairy-Stockfish autorstwa Fabiana Fichtera — silnik wariantów szachowych obsługujący Xiangqi, Shogi, Crazyhouse i dziesiątki innych. GPL-3.0.
Rankingi silników wyświetlane w aplikacji pochodzą z CCRL (Computer Chess Rating Lists), utrzymywanych przez Grahama Banksa, Kirilla Kryukova, Sergio Martineza, Gabora Szotsa, Shauna Brewera i innych od grudnia 2005 roku.
Zestawy figur szachowych
Dział zatytułowany „Zestawy figur szachowych”Pochodzą głównie z kolekcji zasobów Lichess:
- cburnett (domyślny) — autorstwa Colina M.L. Burnetta. Czyste, rozpoznawalne figury SVG stworzone w Inkscape. Wielolicencyjne: BSD-3-Clause, GFDL, GPL, CC-BY-SA-3.0. Używany również jako podstawa ikony aplikacji.
- Kosal autorstwa Philatype — CC BY 4.0.
- Alpha — autorstwa Erica Bentzena. Czysty, nowoczesny design.
- Merida — oparty na klasycznej czcionce szachowej Merida, adaptacja SVG utrzymywana przez społeczność Lichess. Licencja GPLv2+.
- California — autorstwa Jerry’ego S.. Licencja CC-BY-SA-4.0.
- Anarcandy — autorstwa współtwórców społeczności Lichess.
- chessnut, chess7, companion, letter, shapes, pixel, pirouetti, cardinal, disguised, dubrovny, fantasy, fresca, gioco, governor, horsey, icpieces, Leipzig, libra, maestro, reillycraig, riohacha, spatial, staunty, tatiana — pochodzą z Lichess i od ich odpowiednich twórców, dystrybuowane na licencji CC BY-SA 3.0 lub kompatybilnych.
Grafika
Dział zatytułowany „Grafika”- Melanie Thomas — różnorodna grafika używana w projekcie.
Bazy danych szachowych
Dział zatytułowany „Bazy danych szachowych”| Baza danych | Partii | Twórca / Kurator |
|---|---|---|
| Lumbra’s Gigabase | ~9,57 mln | Lumbra (kurator społecznościowy) |
| Caissabase 2024 | ~5,4 mln | Kuratorzy społecznościowi z MillionBase, KingBase i TWIC |
| Ajedrez Data (OTB) | ~4,28 mln | Społeczność Ajedrez Data |
| Ajedrez Data (korespondencyjne) | ~1,52 mln | Społeczność Ajedrez Data |
| MillionBase | ~3,45 mln | Ed Schroder (autor silnika szachowego Rebel) i społeczność |
Bazy końcówek Syzygy — stworzone przez Ronalda de Mana, z tabelami 7-figurowymi wygenerowanymi przez Bojuna Guo (2018). Udostępniane do pobrania przez Lichess.org.
ChessDB Cloud (chessdb.cn) — autorstwa Bojuna Guo. Ogromna baza wiedzy szachowej zbudowana z analiz silnikowych. Udostępniona w domenie publicznej.
Synteza mowy
Dział zatytułowany „Synteza mowy”- KittenTTS autorstwa KittenML — domyślny lokalny silnik TTS, dołączony do aplikacji. Działa w pełni na urządzeniu, bez wymaganego klucza API. Używa modeli głosowych ONNX przez ONNX Runtime oraz eSpeak NG do fonemizacji.
- OpenTTS autorstwa Michaela Hansena (synesthesiam) — opcjonalny samodzielnie hostowany serwer TTS, uruchamiany lokalnie przez Docker.
- Google Cloud Text-to-Speech — opcjonalny dostawca chmurowy TTS z głosami WaveNet. Wymaga klucza API dostarczonego przez użytkownika.
- ElevenLabs — opcjonalny premium dostawca chmurowy TTS z głosami wysokiej jakości. Wymaga klucza API dostarczonego przez użytkownika.
Drzewo zależności npm
Dział zatytułowany „Drzewo zależności npm”Ekosystem Mantine (wszystko autorstwa Witalija Rtiszczewa, MIT)
Dział zatytułowany „Ekosystem Mantine (wszystko autorstwa Witalija Rtiszczewa, MIT)”Witalij Rtiszczew stworzył i utrzymuje całą bibliotekę komponentów Mantine — ponad 30 600 gwiazdek, ponad 100 komponentów, ponad 50 hooków.
@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
Pakiety npm Tauri (The Tauri Programme, Apache-2.0 OR MIT)
Dział zatytułowany „Pakiety npm Tauri (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
TanStack (wszystko autorstwa Tannera Linsleya, MIT)
Dział zatytułowany „TanStack (wszystko autorstwa Tannera Linsleya, MIT)”Tanner Linsley stworzył ekosystem TanStack: @tanstack/react-query (asynchroniczne pobieranie/cache’owanie danych), @tanstack/react-table (headless tabele/datagrid), @tanstack/react-virtual (wirtualizacja list).
Edytor tekstu sformatowanego TipTap (Tiptap GmbH, MIT)
Dział zatytułowany „Edytor tekstu sformatowanego TipTap (Tiptap GmbH, MIT)”Stworzony przez Tiptap GmbH. @tiptap/react, @tiptap/starter-kit, @tiptap/extension-link.
Ekosystem React
Dział zatytułowany „Ekosystem React”| Pakiet | Autor | Licencja |
|---|---|---|
| react, react-dom | Jordan Walke / Meta | MIT |
| react-router-dom | Ryan Florence, Michael Jackson / Remix Software | MIT |
| react-i18next, i18next | Jan Muhlemann | MIT |
Zarządzanie stanem i animacje
Dział zatytułowany „Zarządzanie stanem i animacje”| Pakiet | Autor | Licencja |
|---|---|---|
| zustand | Paul Henschel (oryginał), Daishi Kato (główny opiekun) / pmndrs | MIT |
| framer-motion | Matt Perry / Motion Division | MIT |
| embla-carousel-react | David Jerleke | MIT |
Pakiety frontendowe do szachów
Dział zatytułowany „Pakiety frontendowe do szachów”| Pakiet | Autor | Licencja |
|---|---|---|
| chess.js | Jeff Hlywa | BSD-2-Clause |
| chessground | Thibault Duplessis / Lichess.org | GPL-3.0-or-later |
| chessops | Niklas Fiekas (niklasf) | GPL-3.0-or-later |
Pakiety narzędziowe
Dział zatytułowany „Pakiety narzędziowe”| Pakiet | Autor | Licencja |
|---|---|---|
| dayjs | iamkun | MIT |
| fuse.js | Kiro Risk | Apache-2.0 |
| idb-keyval | Jake Archibald | Apache-2.0 |
| recharts | Xian Wang i społeczność, zbudowany na D3 | MIT |
| sql.js | Ophir Lojkine i Alon Zakai | MIT |
Narzędzia deweloperskie
Dział zatytułowany „Narzędzia deweloperskie”| Pakiet | Autor | Licencja |
|---|---|---|
| @biomejs/biome | Emanuele Stoppa (fork Rome autorstwa Sebastiana McKenziego) | MIT OR Apache-2.0 |
| @vitejs/plugin-react | Evan You / zespół Vite | MIT |
| postcss | Andrey Sitnik / Evil Martians | MIT |
| typescript | Anders Hejlsberg / Microsoft | Apache-2.0 |
| vite | Evan You / VoidZero Inc. | MIT |
Drzewo zależności Rust/Cargo
Dział zatytułowany „Drzewo zależności Rust/Cargo”Szkielet podstawowy
Dział zatytułowany „Szkielet podstawowy”Wszystkie crate’y Tauri (tauri, tauri-build, tauri-plugin-log, tauri-plugin-dialog, tauri-plugin-shell, tauri-plugin-process, tauri-plugin-os, tauri-plugin-updater) autorstwa The Tauri Programme. Licencja Apache-2.0 OR MIT.
Serializacja (ekosystem Davida Tolnaya)
Dział zatytułowany „Serializacja (ekosystem Davida Tolnaya)”David Tolnay utrzymuje ponad 160 crate’ów Rust i jest odpowiedzialny za jedne z najbardziej fundamentalnych bibliotek w ekosystemie Rust. Około 40% wszystkich crate’ów na crates.io zależy tranzytywnie od serde.
| Crate | Autor | Licencja |
|---|---|---|
| serde | Erick Tryzelaar, David Tolnay | MIT OR Apache-2.0 |
| serde_json | David Tolnay | MIT OR Apache-2.0 |
| thiserror | David Tolnay | MIT OR Apache-2.0 |
| anyhow | David Tolnay | MIT OR Apache-2.0 |
Środowisko uruchomieniowe asynchroniczne i sieciowe
Dział zatytułowany „Środowisko uruchomieniowe asynchroniczne i sieciowe”| Crate | Autor | Licencja |
|---|---|---|
| tokio | Carl Lerche, Alice Ryhl, Sean McArthur, Eliza Weisman | MIT |
| reqwest | Sean McArthur | MIT OR Apache-2.0 |
| futures / futures-util | Alex Crichton | MIT OR Apache-2.0 |
Biblioteki szachowe (Niklas Fiekas)
Dział zatytułowany „Biblioteki szachowe (Niklas Fiekas)”| Crate | Licencja | Opis |
|---|---|---|
| shakmaty | GPL-3.0-or-later | Generowanie ruchów szachowych, bitboardy, FEN/SAN/UCI |
| pgn-reader | GPL-3.0-or-later | Strumieniowy parser PGN |
| shakmaty-syzygy | GPL-3.0-or-later | Odpytywanie baz końcówek Syzygy |
Baza danych i system plików
Dział zatytułowany „Baza danych i system plików”| Crate | Autor | Licencja |
|---|---|---|
| rusqlite | John Gallagher (oryginał) / deweloperzy rusqlite | MIT |
| log | Deweloperzy projektu Rust | MIT OR Apache-2.0 |
| tempfile | Steven Allen | MIT OR Apache-2.0 |
| dirs | Simon Ochsenreither | MIT OR Apache-2.0 |
| flate2 | Alex Crichton, Josh Triplett | MIT OR Apache-2.0 |
| zip | Mathijs van de Nes, Marli Frost, Ryan Levick | MIT |
Projektowanie UI, ikony i czcionki
Dział zatytułowany „Projektowanie UI, ikony i czcionki”- Tabler Icons — ponad 6000 darmowych ikon SVG autorstwa Pawła Kuny. Używane przez @tabler/icons-react jako część ekosystemu Mantine. Licencja MIT.
- CodeMirror — edytor kodu w przeglądarce autorstwa Marijna Haverbeke’a (również twórcy ProseMirror i autora Eloquent JavaScript), ze wkładem Adriana Heine. Używany do edycji PGN. Licencja MIT.
- Inter — krój pisma UI, stworzony przez Rasmusa Anderssona. Czcionka zmienna zoptymalizowana pod kątem czytelności na ekranie. Używana jako domyślna rodzina czcionek Mantine. Licencja SIL Open Font License 1.1.
- Czcionka notacji szachowej (lichess.chess) — autorów pgn4web, zapewniająca symbole figurowej notacji algebraicznej. Licencja GPLv2+.
Narzędzia kompilacji i infrastruktura deweloperska
Dział zatytułowany „Narzędzia kompilacji i infrastruktura deweloperska”- Rust — stworzony przez Graydona Hoare’a w Mozilli w 2006 roku. Utrzymywany przez Rust Foundation. Kluczowi współtwórcy: Niko Matsakis, Steve Klabnik, Alex Crichton, Manish Goregaokar. Licencja MIT OR Apache-2.0.
- Node.js — stworzony przez Ryana Dahla w 2009 roku. Utrzymywany przez OpenJS Foundation. Licencja MIT.
- pnpm — szybki, oszczędny menedżer pakietów autorstwa Zoltana Kochana. Licencja MIT.
- Biome — zunifikowany linter/formatter oparty na Rust, fork Rome (oryginalnie autorstwa Sebastiana McKenziego, twórcy Babel). Przywrócony przez Emanuele Stoppę. Licencja MIT OR Apache-2.0.
Rozwój wspomagany przez AI
Dział zatytułowany „Rozwój wspomagany przez AI”Fork En Parlant~ — w tym integracja TTS, strona dokumentacji, tłumaczenia wielojęzyczne, pipeline demo i ta strona podziękowań — został zbudowany niemal w całości za pomocą Claude Code, agentowego narzędzia programistycznego Anthropic. Claude Code wykorzystuje Claude, asystenta AI Anthropic, do pracy bezpośrednio w terminalu — odczytywania plików, edycji kodu, uruchamiania poleceń i zarządzania przepływami pracy git.
Anthropic został założony w 2021 roku przez Dario Amodei i Danielę Amodei wraz z kilkoma byłymi badaczami OpenAI, z naciskiem na badania nad bezpieczeństwem AI. Claude to ich rodzina dużych modeli językowych.
Zewnętrzne API i usługi danych
Dział zatytułowany „Zewnętrzne API i usługi danych”- Lichess API — utrzymywane przez Thibaulta Duplessisa i zespół Lichess. Eksport partii, ewaluacje chmurowe, eksplorator otwarć i dane zagadek. Część projektu Lichess na licencji AGPL-3.0.
- Chess.com Published-Data API — REST API tylko do odczytu dla publicznych profili graczy, archiwów partii oraz danych klubów/turniejów.
- ChessDB Cloud Evaluation — autorstwa Bojuna Guo. Baza wiedzy szachowej zbudowana z analiz silnikowych. Domena publiczna.
Źródła danych
Dział zatytułowany „Źródła danych”- Stockfish — pliki binarne silnika hostowane na naszej własnej infrastrukturze (enparlant.redshed.ai).
- Lichess — bazy otwarć i baza zagadek, hostowane na naszej własnej infrastrukturze. CC BY 4.0.
Podsumowanie zgodności licencyjnej
Dział zatytułowany „Podsumowanie zgodności licencyjnej”En Parlant~ jest objęty licencją GPL-3.0, wymaganą przez kaskadę copyleft jego zależności szachowych:
| Licencja | Pakiety / Komponenty |
|---|---|
| GPL-3.0 / GPL-3.0-or-later | Sam En Parlant~, chessground, chessops, shakmaty, pgn-reader, shakmaty-syzygy, Stockfish, Lc0, RubiChess, Fairy-Stockfish, figury Merida, czcionka notacji szachowej |
| MIT | React, Vite, Mantine (wszystkie), TanStack (wszystkie), TipTap (wszystkie), zustand, framer-motion, embla-carousel, dayjs, recharts, sql.js, Tabler Icons, CodeMirror, Node.js, pnpm, tokio, rusqlite, PostCSS |
| MIT OR Apache-2.0 | Tauri (wszystkie), język Rust, serde (wszystkie), tokio, reqwest, futures, thiserror, anyhow, log, tempfile, dirs, flate2, TypeScript, Biome |
| BSD-2-Clause | chess.js |
| Apache-2.0 | fuse.js, idb-keyval |
| SIL OFL 1.1 | Czcionka Inter |
| CC0 (domena publiczna) | Baza partii Lichess, baza zagadek Lichess |
| CC-BY-SA-3.0 / 4.0 | Figury cburnett, figury California, zestaw figur Shapes |
| AGPL-3.0 | Główna baza kodu Lichess (API jest darmowe w użyciu) |
| Komercyjna/Własnościowa | Komodo, Dragon by Komodo (opcjonalne silniki, niedołączane) |
Wymóg copyleft GPL-3.0 oznacza, że każda dystrybucja En Parlant~ musi zawierać kod źródłowy lub pisemną ofertę jego dostarczenia, a prace pochodne muszą być również objęte licencją GPL-3.0 lub kompatybilną. Wynika to głównie z bibliotek szachowych Niklasa Fiekasa i komponentu Chessground z Lichess.
Podsumowanie
Dział zatytułowany „Podsumowanie”To oprogramowanie istnieje dzięki wkładowi setek osób w dziesiątki projektów. Trzy osoby zasługują na szczególne wyróżnienie: Francisco Salgueiro zbudował aplikację; Niklas Fiekas zbudował infrastrukturę logiki szachowej (zarówno w TypeScript, jak i Rust); a Thibault Duplessis zbudował interfejs szachownicy i szerszy ekosystem Lichess dostarczający zestawy figur, bazy danych, zagadki i ewaluacje chmurowe. Poza nimi biblioteki serializacji Davida Tolnaya stanowią fundament backendu Rust, zespół Tauri umożliwił stworzenie szkieletu desktopowego, a 56 współtwórców ze społeczności dostarczyło funkcje, tłumaczenia na 10 języków i poprawki błędów, które ukształtowały produkt.
Każda ewaluowana pozycja szachowa jest zadłużona wobec społeczności Stockfish, a każde sprawdzenie końcówki wobec baz Syzygy Ronalda de Mana. Otwartoźródłowy ekosystem szachowy jest niezwykle powiązany — pojedyncza aplikacja taka jak En Parlant~ czerpie z prac obejmujących dwie dekady, od figur szachowych SVG Colina M.L. Burnetta z 2006 roku na Wikimedia po optymalizacje kompilatora React 19.
Pominęliśmy Cię? Napisz do nas, a to naprawimy. Jeśli wolisz pozostać anonimowy, daj nam znać również: darrell@redshed.ai.