A modern, feature-rich chess application built with Next.js and React. Designed for chess players of all levels, it offers a soft, responsive interface, customizable settings, multilingual support, and a smooth gameplay experience.
Live Demo: Check out the deployed version at chess-master-ultimate.vercel.app
- Features
 - Screenshots
 - Getting Started
 - Usage
 - Customization
 - Project Structure
 - Built With
 - Dependencies
 - Releases
 - Key Features Explained
 - License
 - Acknowledgments
 - Contact
 - Contributing
 - Support
 
- Interactive Chess Board: Drag-and-drop or click-to-move piece movement.
 - Game Rules Enforcement: Full chess rules including castling, en passant, and checkmate detection.
 - Multilingual Support: Available in 12 languages for global accessibility.
 - Customizable Themes: Light, dark, or system theme options.
 - Responsive Design: Optimized for desktop, tablet, and mobile devices.
 - Game Timer: Optional 10-minute timer for timed matches.
 - Move History: Real-time tracking in standard chess notation.
 - Game Statistics: Displays captured pieces, move count, and game phase.
 - Particle Background: Dynamic, interactive background animation.
 - Keyboard Shortcuts: Comprehensive controls for all major actions.
 - Fullscreen Mode: Toggle for a distraction-free experience.
 - Accessibility Features: Tooltips and built-in help system.
 - High Performance: Fast load times and smooth gameplay.
 
| Feature | Light Mode | Dark Mode | 
|---|---|---|
| Home Screen | ![]()  | 
![]()  | 
| Game Screen | ![]()  | 
![]()  | 
Set up and run Chess Master Ultimate locally with these steps.
- Node.js: Version 18.0 or higher
 - Package Manager: 
npmoryarn 
- 
Clone the Repository
git clone https://github.com/VoxDroid/Chess-Master-Ultimate.git
 - 
Navigate to the Project Directory
cd Chess-Master-Ultimate - 
Install Dependencies
npm install # or yarn install - 
Start the Development Server
npm run dev # or yarn dev - 
Open http://localhost:3000 in your browser to start playing.
 
Once the application is running, you can explore and customize it. Below are key sections and how to use them effectively.
- Launch the development server as described above.
 - Click "Start Playing" on the home page to begin a game with white to move.
 - Use the board controls or keyboard shortcuts to play.
 
- Purpose: Play chess with an interactive board.
 - How to Use: Click a piece to select it, then click a valid square to move. Drag-and-drop also supported.
 
- Purpose: Manage gameplay with intuitive controls.
 - How to Use: Use buttons below the board to undo, redo, reset, flip, or toggle fullscreen mode.
 
- Purpose: Customize the game experience.
 - How to Use: Access the settings menu to adjust themes, fonts, language, and timer options.
 
Tailor Chess Master Ultimate to your preferences.
Modify the theme in tailwind.config.ts:
// tailwind.config.ts
const config = {
  theme: {
    extend: {
      colors: {
        primary: {
          DEFAULT: "hsl(210, 50%, 50%)", // Customize here
          foreground: "hsl(210, 10%, 95%)",
        },
      },
    },
  },
};Adjust CSS variables in styles/global.css:
:root {
  --primary: 210 50% 50%; /* Light mode */
}
.dark {
  --primary: 210 50% 60%; /* Dark mode */
}Edit these files to tweak the UI:
- Chessboard: 
components/custom-chessboard.tsx - Stats: 
components/game-stats.tsx - Move History: 
components/move-history.tsx - Translations: 
lib/translations.ts 
Adjust the animation in components/particle-background.tsx (if implemented separately):
const particleCount = Math.min(100, Math.floor((window.innerWidth * window.innerHeight) / 10000));
const colors = [
  "rgba(0, 102, 204, 0.5)", // Adjust colors
  "rgba(51, 153, 255, 0.5)",
];chess-master-ultimate/
├── app/                  # Next.js app directory
│   ├── game/             # Game page
│   ├── providers.tsx     # Context providers
│   ├── layout.tsx        # Root layout
│   └── page.tsx          # Home page
├── components/           # Reusable React components
│   ├── custom-chessboard.tsx  # Chess board component
│   ├── game-stats.tsx    # Game statistics widget
│   ├── move-history.tsx  # Move history widget
│   └── ...               # Other UI components
├── lib/                  # Utility functions
│   └── translations.ts   # Translation system
├── hooks/                # Custom React hooks
├── public/               # Static assets
│   ├── images/           # Images and icons
│   └── ...               # Other public files
├── styles/               # Global styles
├── tailwind.config.ts    # Tailwind CSS configuration
├── tsconfig.json         # TypeScript configuration
└── package.json          # Dependencies and scripts
- Next.js - React framework for production-grade apps
 - TypeScript - Typed JavaScript for reliability
 - Tailwind CSS - Utility-first CSS framework
 - Framer Motion - Animation library
 - chess.js - Chess logic engine
 - tsparticles - Particle effects
 - react-hotkeys-hook - Keyboard shortcuts
 - Lucide Icons - Consistent icon set
 - shadcn/ui - Reusable UI components
 
To run this project, the following Node.js packages are required (listed in package.json):
next- Core frameworkreactandreact-dom- React librariestypescript- Type checkingtailwindcss- Stylingframer-motion- Animationschess.js- Chess logictsparticles- Particle effectsreact-hotkeys-hook- Keyboard shortcuts@lucide/react- Icons- Various 
shadcn/uidependencies (e.g.,@radix-ui/*) 
Install them with:
npm install- Check the Releases page for versioned updates.
 - Each release includes notes on new features, bug fixes, and improvements.
 - The source code is the primary distribution method; no pre-built binaries are provided.
 
A fully functional board with drag-and-drop or click-to-move mechanics, powered by chess.js and custom-chessboard.tsx.
Supports 12 languages with a custom translation system in lib/translations.ts.
Dynamic particle effects using tsparticles, enhancing visual appeal.
Comprehensive controls implemented with react-hotkeys-hook for efficient gameplay.
This project is licensed under the MIT License. See the license file for details.
- chess.js - Robust chess logic
 - tsparticles - Particle animations
 - shadcn/ui - Reusable UI components
 - Lucide Icons - Beautiful icon library
 - Framer Motion - Smooth animations
 - Tailwind CSS - Efficient styling
 - Next.js - Robust framework
 
Questions or feedback? Reach out:
- GitHub: @VoxDroid
 
Contributions are welcome! Please read our Contributing Guide for details on how to contribute, and review our Code of Conduct to ensure a positive and inclusive community.
To contribute:
- Fork the repository: https://github.com/VoxDroid/Chess-Master-Ultimate
 - Create a feature branch (
git checkout -b feature-name) - Commit your changes (
git commit -m "Add feature") - Push to the branch (
git push origin feature-name) - Open a pull request
 
For support, please refer to our Support Guide. If you encounter security issues, please review our Security Policy.
If you find this project useful, consider supporting its development:
- Ko-fi: Buy me a coffee
 - Star the Repository: Give it a star on GitHub
 - Report Issues: Submit bugs or suggestions on the Issues page
 
Developed by VoxDroid
GitHub | Ko-fi
© 2025 Chess Master Ultimate. All rights reserved.




