ChessMentor is an innovative iOS app that leverages augmented reality (AR) technology to analyze chess games and provide strategic move suggestions. By simply holding your device's camera above a chessboard, the app overlays helpful insights and recommendations directly onto the board, empowering players to make informed decisions and improve their gameplay.
ChessMentor is composed of multiple specialized repositories.
This main repository serves as the central hub, while the following linked components handle data, ML training, and backend engine logic:
- Roboflow Workspace:
https://universe.roboflow.com/chessmentor/chessmentor
Contains all annotated chessboard datasets, preprocessing pipelines, and model versions used during training.
- ChessMentor-ML Repository:
https://github.com/ObayAlshaer/ChessMentor-ML/tree/main
Includes:
- Simulation notebooks
- Data preprocessing
- Stockfish Flask API (Python):
https://github.com/otoua046/stockfish-api
Provides:
- REST endpoint for Stockfish best-move evaluation
- Return format used by the iOS app
- Engine configuration and depth settings
[iOS App UI]
|
v
[Chessboard Scanner (Swift)]
|
v
[Roboflow Inference API]
|
v
[FEN Generator Logic]
|
v
[Stockfish Flask API Server]
|
v
[Best Move Suggestion]
- Augmented Reality Chess Analysis: Utilize AR technology to analyze chess positions in real-time.
- Move Suggestions: Receive intelligent move suggestions based on board positions and game analysis.
- Camera Integration: Seamlessly integrate your device's camera to capture and analyze chessboard positions.
- User-Friendly Interface: Enjoy a clean and intuitive interface designed for ease of use and accessibility.
- Launch the app and grant camera permissions when prompted.
- Hold your device's camera above a chessboard with a game in progress.
- Allow the app to analyze the board and suggest moves based on the current game state.
- Review the suggested moves and make your decision accordingly.
Special thanks to the contributors and maintainers of ARKit and SwiftUI for their valuable tools and frameworks.
| Name | Student Number | Time spent | |
|---|---|---|---|
| Mohamed-Obay Alshaer | 300170489 | 100 hours | malsh094@uottawa.ca |
| Sam Touahri | 300234041 | 100 hours | otoua046@uottawa.ca |
| Justin Bushfield | 300188318 | 100 hours | jbush023@uottawa.ca |
| Samuel Rose | 300173591 | 100 hours | srose096@uottawa.ca |
| Anas Hammou | 300220367 | 100 hours | ahamm073@uottawa.ca |
| Name | Affiliation | |
|---|---|---|
| Omar Al-Dib | CUSmile (Charity) | mromaldib@gmail.com |
