peterphmikkelsen / kchess

Chess written in Kotlin - Using Compose for Desktop

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The ancient, famous game of chess - written using the young, little-known UI framework Compose for Desktop.


Note

This is still a work in progress

Motivation

I wrote this app mostly for learning purposes. I was looking at cool Kotlin frameworks and randomly stumbled upon this one and being an avid chess-fan (but far from good at it 😅) I decided to try and make the game. Back when I started (and maybe also now) the documentation was very scarce and there was a lot of trial and error involved in getting the app to the point where it is now.

Current state

  • Rendered board
  • Drag and drop of pieces (with snap-to-center functionality)
  • General game logic (internal board state etc.)
  • Valid moves for pieces (including promotion, check, casteling)
  • Previous state of the game (to see all previous positions)
  • Sound
  • Time (Classic, Rapid and Bullet)
  • Final polishing

Maybe

  • Backend for online playing
  • Different themes

Out of scope

  • A fully fledged game
  • Chess engine
  • Import/export positions

About

Chess written in Kotlin - Using Compose for Desktop


Languages

Language:Kotlin 100.0%