From dffcdd57743a54d4817709d06ef9e59261791529 Mon Sep 17 00:00:00 2001 From: phuetz <83292498+phuetz@users.noreply.github.com> Date: Sun, 15 Jun 2025 07:47:22 +0200 Subject: [PATCH] docs: explain how to add 3d piece set --- .gitignore | 8 ++++++++ TODO.MD | 2 +- public/3d-pieces-png/README.md | 21 +++++++++++++++++++++ src/components/ChessMasterDatabase.tsx | 2 ++ src/components/ChessboardDisplay.tsx | 20 +++++++++++++++++++- src/components/PieceSetSelector.tsx | 21 +++++++++++++++++++++ src/screens/Tournaments.tsx | 19 +++++++++++++++++-- src/store/useChessStore.ts | 18 ++++++++++++++++++ 8 files changed, 107 insertions(+), 4 deletions(-) create mode 100644 public/3d-pieces-png/README.md create mode 100644 src/components/PieceSetSelector.tsx diff --git a/.gitignore b/.gitignore index a547bf3..cb2ca23 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,11 @@ dist-ssr *.njsproj *.sln *.sw? + +# Playwright reports +playwright-report +test-results + + +# 3D piece images +public/3d-pieces-png/*.png diff --git a/TODO.MD b/TODO.MD index 789006d..1332f98 100644 --- a/TODO.MD +++ b/TODO.MD @@ -20,7 +20,7 @@ Liste d'améliorations inspirées de Chess.com pour rendre l'application plus co ## Expérience utilisateur - **Notifications** *(implémenté)* : alertes pour les défis reçus, les débuts de tournois ou l'arrivée de nouveaux puzzles. -- **Personnalisation** : thèmes d'échiquier supplémentaires et options pour les pièces, inspirés de ceux de Chess.com. +- **Personnalisation** *(implémenté)* : thèmes d'échiquier supplémentaires et options pour les pièces, inspirés de ceux de Chess.com. - **Progression et succès** : badges et objectifs à débloquer en fonction des activités (puzzles résolus, parties jouées, etc.). ## Autres idées diff --git a/public/3d-pieces-png/README.md b/public/3d-pieces-png/README.md new file mode 100644 index 0000000..c32a740 --- /dev/null +++ b/public/3d-pieces-png/README.md @@ -0,0 +1,21 @@ +# 3D Piece Set Installation + +Les images des pièces 3D ne sont pas incluses dans le dépôt pour alléger le projet. Téléchargez-les depuis le dépôt open source de Lichess ou une autre source libre, puis placez-les dans ce dossier. + +## Téléchargement + +Vous pouvez par exemple récupérer le set "Staunty" de Lichess : +https://github.com/lichess-org/lila/tree/master/public/piece/staunty/png/150 + +Téléchargez les fichiers suivants : + +``` +bB.png bK.png bN.png bP.png bQ.png bR.png +wB.png wK.png wN.png wP.png wQ.png wR.png +``` + +## Installation + +1. Créez le dossier `public/3d-pieces-png` s'il n'existe pas. +2. Copiez les 12 fichiers PNG téléchargés dans ce dossier. +3. Relancez l'application puis choisissez « 3D » dans le sélecteur de sets de pièces. diff --git a/src/components/ChessMasterDatabase.tsx b/src/components/ChessMasterDatabase.tsx index e7222c3..c9b21e0 100644 --- a/src/components/ChessMasterDatabase.tsx +++ b/src/components/ChessMasterDatabase.tsx @@ -7,6 +7,7 @@ import LazyChessOpenings from './LazyChessOpenings'; import DragDropUpload from './DragDropUpload'; import ThemeSelector from './ThemeSelector'; import BoardThemeSelector from './BoardThemeSelector'; +import PieceSetSelector from './PieceSetSelector'; import AccessibleModal from './AccessibleModal'; import { toast } from 'react-toastify'; import { ClipboardCheck as ChessBoard, Search, BookOpen, Clock, Download, Upload, BookOpen as OpeningIcon, HelpCircle, BarChart3, GitCompare, Users as PlayersIcon, Zap, Puzzle, Timer, Calendar, Swords, Trophy } from 'lucide-react'; @@ -137,6 +138,7 @@ const ChessMasterDatabase = () => {
+