A beautiful, cross-platform chess game that allows two players on different devices to compete via Bluetooth connectivity. Built with Flutter for seamless gameplay across Android, iOS, Linux, macOS, and Windows.
- Full Chess Implementation: Complete rule set including castling, en passant, and pawn promotion
- Multi-Platform Support: Android, iOS, Linux, macOS, Windows
- Bluetooth Connectivity: Classic Bluetooth (Android/Linux) and BLE (iOS/macOS/Windows)
- Modern UI: Material Design 3 with beautiful animations
- Real-time Gameplay: Instant move synchronization between devices
- Intuitive Controls: Tap to select and move pieces
- Game Management: Resign, draw offers, and automatic game end detection
git clone https://github.com/KaitoJD/btchess.git
cd btchess
flutter pub get
./run.sh # Runs on current platformFor detailed installation instructions, platform setup, and build commands, see INSTALLATION.md.
| Platform | Bluetooth Type | Status | Build Command |
|---|---|---|---|
| Android | Classic BT | Full | ./run.sh build android |
| Linux | Classic BT | Full | ./run.sh build linux |
| iOS | BLE | Full | ./run.sh build ios |
| macOS | BLE | Full | ./run.sh build macos |
| Windows | BLE | Full | ./run.sh build windows |
- Gameplay Guide - Learn how to play, game controls, and UI features
- Installation Guide - Setup instructions for all platforms
- Technical Documentation - Architecture, dependencies, and development details
- Troubleshooting Guide - Common issues and solutions
- Classic Bluetooth: Uses traditional Bluetooth Serial Port Profile
- Device Scanning: Automatic discovery of paired and nearby devices
- Robust Connection: Established Serial Port communication
- Bluetooth Low Energy (BLE): Modern, energy-efficient communication
- Service Discovery: Custom chess service UUID for device identification
- Notification-based: Real-time data exchange via BLE characteristics
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly on multiple platforms
- Submit a pull request
For detailed development information, see TECHNICAL.md.
This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License (CC BY-NC-SA 4.0).
You are free to share and adapt the material for non-commercial purposes, as long as you give appropriate credit and distribute your contributions under the same license.
See the LICENSE file for details.