Skip to content

Repository files navigation

   _____ _    _ ______  _____ _____   _____  ______ ____   ____  _____  _   _ 
  / ____| |  | |  ____|/ ____/ ____| |  __ \|  ____|  _ \ / __ \|  __ \| \ | |
 | |    | |__| | |__  | (___| (___   | |__) | |__  | |_) | |  | | |__) |  \| |
 | |    |  __  |  __|  \___ \\___ \  |  _  /|  __| |  _ <| |  | |  _  /| . ` |
 | |____| |  | | |____ ____) |___) | | | \ \| |____| |_) | |__| | | \ \| |\  |
  \_____|_|  |_|______|_____/_____/  |_|  \_\______|____/ \____/|_|  \_\_| \_|

Android Kotlin Chess


Welcome to Chess Reborn

Chess Reborn is a modern, feature-packed chess application designed for Android. It features offline P2P multiplayer via Bluetooth and QR codes, 10 game variants, Stockfish engine analysis, and an ultra-smooth Material Design 3 UI with dynamic Monet styling and dynamic lava lamp background animations.


Click to view Design & Visual Features

1. Material Design 3 & Dynamic Colors

  • Adapts to Your Device: Color palettes automatically adapt to match your system theme and Material You Monet color scheme.
  • Customizable Glow Rings: Cards and buttons feature subtle glowing outlines with selectable accent colors in Settings:
    • Monet Primary, Emerald Green, Ruby Red, Sapphire Blue, Royal Gold, Amethyst Purple, Neon Cyan, Pixel Green, and Sunburst Coral.
  • Touch Responsiveness: Interactive buttons and cards scale smoothly inward when tapped for tactile feedback.

2. Interactive Lava Lamp Background

  • Fluid Wave Motion: A smooth, organic lava lamp animated background floats continuously behind the game board.
  • Move Reactivity: Every time a piece is moved, the lava lamp speeds up and shifts direction to reflect move energy.
  • Dynamic Turn Colors:
    • White's Turn: Warm sunburst gold and soft cyan waves.
    • Black's Turn: Electric purple, magenta, and midnight blue waves.
    • Check (+): Glowing warning red and coral orange waves.
    • Victory (++): Festive emerald green and celebratory gold waves.
  • Customizable in Settings: Toggle between turn-based dynamic colors or a fixed color theme.

3. 3D Depth Visuals for Menu Screens

  • Utility screens (such as Settings and Friends) feature a 3D-styled background with floating chess piece motifs, perspective grid lines, and soft lighting.

4. Smooth Menu & Screen Animations

  • Screen Transitions: Navigating between screens (Settings, Friends, Board Editor, Saved Games, QR Pairing) smoothly slides into view from the side.
  • Hidden Pop-up Menus: Game variant pickers and clock preset menus slide up gracefully from the bottom.
  • Easy Navigation: Tapping the back button smoothly closes open menus or returns to the home screen.

5. 10 World Languages

Full localized interface available in 10 major languages:

  • English, Spanish, Chinese, Hindi, Bengali, Portuguese, Russian, Japanese, French, and German.

6. Shimmering Loading Screen

  • Modern shimmering skeleton loading screen placeholders during startup initialization.

7. Win & Lose Celebrations

  • Victory Screen (++): Golden particle celebrations upon checkmate.
  • Defeat Screen: Animated shattered king overlay when checkmated.
  • Draw Screen: Neutral balanced card with quick rematch and engine analysis options.

Click to view Technical & Backend Architecture

1. Bluetooth & Offline QR Code Pairing

  • Play face-to-face on two separate phones without needing an internet connection.
  • Pair by scanning a QR code or discovering nearby Bluetooth devices.
  • Seamless move synchronization directly between both phones over RFCOMM socket channels.

2. Engine Analysis & Stockfish Integration

  • Built-in position evaluation powered by Stockfish.
  • Visual evaluation score breakdown in centipawns or forced mate sequences.
  • Step-by-step move review to analyze key moments and blunders.

3. Game Modes & 10 Chess Variants

Play traditional chess or explore 9 popular chess variants:

  • Standard Chess: Traditional FIDE rules of chess.
  • Crazyhouse: Captured pieces enter your reserve pocket and can be dropped onto empty squares.
  • Chess 960 (Fischer Random): Randomized back-rank pieces at game setup.
  • King of the Hill: Win by checkmate or by bringing your King to the four center squares (d4, d5, e4, e5).
  • Three-Check: Win by checkmate or by checking your opponent's King three times.
  • Atomic Chess: Captures trigger an explosion destroying adjacent non-pawn pieces.
  • Horde Chess: 36 pawns battle a standard chess army.
  • Antichess: Capturing is mandatory; first to lose all pieces or run out of moves wins.
  • Racing Kings: Race your King to the 8th rank without giving check.
  • Capablanca (8x8): Adapted Capablanca variant on an 8x8 board.

4. Crazyhouse Reserve Pocket

  • Captured pieces enter a reserve tray at the top or bottom of the screen.
  • Real-time piece count indicators (x2, x3) for stacked reserves.
  • Tap a reserve piece and an empty valid square to drop it back into action.

5. Time Controls & Custom Clocks

  • Quick Presets: Select Bullet (1|0, 2|1), Blitz (3|0, 3|2, 5|0, 5|3), Rapid (10|0), Slow (90|30), or Infinite Time.
  • Custom Times: Adjustable durations up to multi-hour matches with optional Fischer increment seconds per move.

6. Move History, PGN & FEN Tools

  • Real-time algebraic move log display.
  • Copy or export FEN position strings and full PGN game logs.
  • Interactive Board Editor to set up custom positions and export FEN.


Instructions & How to Build

To compile and run Chess Reborn locally:

  1. Ensure JDK 21 and Gradle 8.11.1 or higher are installed on your system.
  2. Configure your Android SDK path in local.properties.
  3. Run the following command in the project root directory:
    ./run.sh
    # Or
    ./gradlew assembleDebug
  4. The generated debug APK will be located at: app/build/outputs/apk/debug/app-debug.apk

Credits

  • Vector chess piece artwork created by Colin M.L. Burnett.
  • Built with Jetpack Compose, Material Design 3, and Kotlin.