To create an intuitive, real-time chess teaching assistant that enhances the learning experience for both instructors and students during live gameplay.
Find a file
2025-01-06 10:56:49 -06:00
ChessPrism So it begins 2025-01-06 10:56:49 -06:00
cline_docs So it begins 2025-01-06 10:56:49 -06:00
config Initial project structure 2025-01-06 00:01:16 -06:00
docs Initial project structure 2025-01-06 00:01:16 -06:00
src Initial project structure 2025-01-06 00:01:16 -06:00
tests Initial project structure 2025-01-06 00:01:16 -06:00
.gitignore Initial project structure 2025-01-06 00:01:16 -06:00
collect_system_info.py So it begins 2025-01-06 10:56:49 -06:00
LICENSE Initial project structure 2025-01-06 00:01:16 -06:00
README.md So it begins 2025-01-06 10:56:49 -06:00
setup_project.py Initial project structure 2025-01-06 00:01:16 -06:00

Chess Teaching Assistant - ChessPrism

Project Overview

ChessPrism is a native macOS application designed to enhance chess learning and analysis by providing real-time visual feedback and move suggestions during online chess games. The application integrates with chess.com through screen capture and provides advanced analysis using Stockfish and custom machine learning models.

Key Features

  • Real-time board position recognition
  • Visual move suggestions and threat analysis
  • Integrated Stockfish engine analysis
  • Customizable visual overlays
  • Multi-monitor support
  • Keyboard shortcut controls

Current Development Status

Completed Features

  • Project architecture setup (MVVM pattern)
  • Core screenshot capture functionality
  • Basic board recognition using Vision framework
  • Stockfish ARM64 integration
  • Metal-based rendering pipeline foundation

In Progress

  • Advanced piece recognition model training
  • Visual overlay system implementation
  • Move suggestion system integration
  • Performance optimization for real-time analysis

Upcoming Features

  • User settings and customization
  • Advanced threat visualization
  • Analytics and feedback system
  • TestFlight distribution setup

Technical Architecture

Core Components

  1. Screenshot Capture Module

    • Uses VisionKit and Screen Capture API
    • Handles multi-monitor scenarios
    • Implements keyboard shortcuts
  2. Board Position Analysis

    • Vision framework + CoreML for computer vision
    • Real-time FEN conversion
    • Position validation system
  3. Stockfish Integration

    • ARM64 optimized binary
    • Async/await interface
    • Position evaluation caching
  4. Visual Overlay System

    • Metal-accelerated rendering
    • Transparent NSWindow implementation
    • Multiple visualization types

Technology Stack

  • Languages: Swift, Metal Shading Language
  • Frameworks: SwiftUI, Vision, CoreML, Metal
  • Dependencies: Stockfish 16, Create ML
  • Tools: Xcode 16.2, Swift 6.0.3

Development Environment Setup

System Requirements

  • Hardware: Apple Silicon (M1/M2/M3)
  • Memory: 16GB+ RAM
  • GPU: Metal 2+ support
  • OS: macOS Ventura 13.0+

Installation

  1. Clone the repository:

    git clone https://gitea.example.com/chessprism.git
    cd chessprism
    
  2. Install dependencies:

    brew install swiftlint
    
  3. Open project in Xcode:

    open ChessPrism/ChessPrism.xcodeproj
    
  4. Configure development settings:

    • Enable Metal API validation
    • Set up code signing
    • Configure entitlements

Contribution Guidelines

Code Style

  • Follow Swift style guide
  • Use SwiftLint for code formatting
  • Maintain 80%+ test coverage

Branching Strategy

  1. main - Stable production-ready code
  2. develop - Current development branch
  3. feature/* - Feature development branches
  4. hotfix/* - Critical bug fixes

Pull Request Process

  1. Create a feature branch from develop
  2. Implement changes with tests
  3. Open PR with detailed description
  4. Address code review feedback
  5. Merge after CI passes and approval

Key Milestones

Completed

  • Project setup and architecture
  • Basic screenshot capture
  • Stockfish integration

Current

  • Advanced board recognition
  • Visual overlay system
  • Performance optimization

Upcoming

  • User settings implementation
  • Analytics integration
  • TestFlight distribution

Documentation

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For project inquiries, please contact: