Merged
Conversation
This commit implements a large set of improvements to the Chess Master Database: ## Developer Experience & Code Quality - Add Prettier for consistent code formatting - Configure Husky and lint-staged for pre-commit hooks - Add comprehensive unit testing with Vitest - Add React Testing Library for component testing - Create unit tests for all utilities (ELO, material, captured pieces, tournament) - Add JSDoc comments to utility functions - Create constants.ts for centralized configuration - Improve TypeScript type safety ## New Components - ErrorBoundary for graceful error handling - Skeleton loading components for better UX - KeyboardShortcutsModal for keyboard shortcuts help - Multiple custom hooks (useKeyboardShortcuts, useLocalStorage, useDebounce, useMediaQuery) ## New Features - JSON/CSV/Excel export functionality for games - FEN import/export with full validation and utilities - Position comparison and analysis tools - Clipboard operations for FEN positions - Random position generator ## CI/CD & Documentation - GitHub Actions workflow for CI/CD (linting, testing, building, security audits) - CONTRIBUTING.md with comprehensive contribution guidelines - CHANGELOG.md following Keep a Changelog format - Improved code documentation with JSDoc ## Testing Infrastructure - Vitest configuration with coverage reporting - Test setup with jsdom and mocks - Comprehensive test suites for all utilities - E2E tests infrastructure This update significantly improves code quality, developer experience, and sets up a robust foundation for future development with proper testing, CI/CD, and documentation.
This commit adds several improvements to enhance developer experience and project documentation: ## Documentation - **README.md** - Added comprehensive "Nouveautés v2.1" section documenting all recent improvements - **QUICKSTART.md** - Created quick start guide for new developers (5-minute setup) - **.env.example** - Added environment variables template with detailed comments ## Developer Tools - **VSCode Configuration**: - settings.json - Editor settings with format on save, ESLint, Prettier integration - extensions.json - Recommended extensions for optimal DX - chess-snippets.code-snippets - Custom code snippets for common patterns - launch.json - Debug configurations for Chrome, Vitest, and Playwright ## npm Scripts - Added `build:analyze` - Bundle size analysis - Added `build:prod` - Production build with all quality checks - Added `lint:fix` - Auto-fix linting issues - Added `test:e2e:headed` - E2E tests with visible browser - Added `test:e2e:debug` - E2E tests in debug mode - Added `type-check` - TypeScript type checking - Added `validate` - Run all checks (lint + types + tests) - Added `clean` and `clean:all` - Cleanup commands ## Dependencies - vite-bundle-visualizer - For bundle analysis - vite-plugin-compression - For build optimization This update provides a complete developer experience with proper tooling, documentation, and configuration for both new and existing contributors.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.