stardance has been extended another month! the new deadline is october 31 :)

You are browsing as a guest. Sign up (or log in) to start making projects!

Chess Bot

  • 8 Devlogs
  • 26 Total hours

I am building a chess bot that uses an algorithm to find a good move to play. the board and the rules are managed by chessboard.js and chess.js libraries

Ship #1

This is a browser based chess engine, where you can play against a bot that I made. You can play with both the white and the black pieces.
One challenge that was hard to fix was making the chessboard appear. I spend well over 2 hours trying to make it appear, and I finally got it to work because my CDN was not properly configured, and the one I downloaded was not the right version. I am proud of actually getting the chess bot to work, let alone making it to the point where it can actually beat me, and other bots on chess.com. You can play against this by going to the releases page and downloading the zip file. The index.html file houses the webpage where you can play against the chess bot. Good luck on beating my chess bot! (and don’t use stockfish :) )

  • 8 devlogs
  • 26h
  • 7.28x multiplier
  • 192 Stardust
Try project → See source code →
Open comments for this post

1h 42m 11s logged

Devlog #8
I finally implemented playing both white and black for the chess bot! So, I think it is pretty much done. I also updated the README.md on Github so it aligns more with what actual readme files look like, and i polished some code so it is easier to tweak in case anyone wanted to do that. (everything is in script.js)

Overall, I think this was a really fun journey and I definitely learned a lot about javascript, and about creating something efficient and fast. So, that’s pretty much it, you can play the bot on github, and I published a release for the chess bot. Have fun!

0
0
22
Open comments for this post

1h 12m 25s logged

Devlog 7

I am finishing up the HTML layout and the content for my project, and I just now realized that the chessbot is broken again ;( So for the weekend, my first task will be to fix that (probably by getting the code from previous versions of the chess bot) and maybe some finshing touches on the CSS.

I still haven’t writtin the README file yet. I will get to it soon. By the time I’m posting this, there are about 5 days until the deadline, so that would probably be one of the final things to add.

PS: if you are close to done with your project, this is your reminder to lock in and ship the project, good luck :)

Also the image is the website not working 😢

0
0
33
Open comments for this post

1h 34m 38s logged

DEVLOG 6

I changed the CSS around a little bit, because it looked basic. Now, the website has a paper theme, so it looks easier on the eyes. I really like this theme because it looks polished (the chess board isn’t working in the picture, i’m working on fixing it.)

The analysis link now works, and by clicking it, it redirects you to a lichess analysis board of the current game. The page looks plain, so if there is something I should add, you can tell me below.

the only things I really need to add now is an option to play with the black pieces AND maybe add more in the “how it works’ section.

0
0
9
Open comments for this post

5h 12m 57s logged

Devlog 5

I finished implementing a new bitboard engine, since the old chess.js library was really slow, and it froze the screen.
ALSO, the github link was not displaying the chessboard, and i spent well over 2 hours trying to debug this. But in the end, the chess bot would not work correctly if the board appears in the github website. So, for now, if you want to test the chess bot, you can click releases in the github and download & run the HTML file.
I plan to let the player play the black side too, instead of only white.

(I will update the github repo soon so there is an option to download)
P.S. You can change the background image in the code, and I might make an option to change the image in the website soon)

0
0
6
Open comments for this post

6h 35m 47s logged

Devlog #4

It’s been a while, but I’ve finally (mostly) finished with coding the chess bot. I might go back to it soon, but I want to focus more on the visuals, so I made a simple UI based on the chess.com/lichess layout. I also made it so you can customize the background by entering the image URL.

I also implemented an evaluation engine (with a low depth) for a numerical value of the position on board. I wanted a higher evaluation depth, but it lags whenever it calculates the score. So, it should be either depth 2 or 3, even if the actual bot is thinking deeper.

If you have any suggestions, you can comment them, and I will try to add them.

0
0
23
Open comments for this post

3h 13m 57s logged

Devlog 3:

By now, I’ve realized that the github pages doesn’t work. :( But, I’m trying to fix it as of now. (You can download the github project and it works that way though)

As for the actual game, I have improved it so that instead of a set depth, it searches for the best move for a set amount of time, and if there is still time left over from the search, it increases its depth by 1, and searches one more move deep. It normally searches 3-5 moves deep on my PC and ~3 moves on my chromebook.

I tested it against the chess.com bots, and it beats the beginner and intermediate bots pretty consistently. I also played it against Wendy bot (1500 elo) and it won! (I did not expect it to win)

Here’s the game, if anyone wants to analyze it themselves:

[Event “Play vs Bot”]
[Site “Chess.com”]
[Date “2026.08.06”]
[Round “-”]
[White “Wendy-BOT”]
[Black “Chess-Bot(Stardance)”]
[Result “0-1”]
[CurrentPosition “5k2/pp4R1/6P1/3pB3/4b2P/7K/1P4q1/8 w - - 11 52”]
[Timezone “UTC”]
[ECO “C61”]
[ECOUrl “https://www.chess.com/openings/Ruy-Lopez-Opening-Birds-Defense-4.Nxd4-exd4-5.O-O”]
[UTCDate “2026.08.06”]
[UTCTime “21:56:10”]
[WhiteElo “1500”]
[BlackElo “172”]
[TimeControl “?”]
[Termination “Akshay Kommoju won by checkmate”]
[StartTime “21:56:10”]
[EndDate “2026.08.06”]
[EndTime “22:16:01”]
[Link “https://www.chess.com/analysis/game/computer/1894651872/review?move=27”]
[WhiteUrl “https://images.chesscomfiles.com/uploads/v1/user/66746050.adfcf725.50x50o.d52666e0e879.png”]
[WhiteCountry “3”]
[WhiteTitle “”]
[BlackUrl “https://www.chess.com/bundles/web/images/noavatar_l.84a92436.gif”]
[BlackCountry “69”]
[BlackTitle “”]

e4 e5 2. Nf3 Nc6 3. Bb5 Nd4 4. Nxd4 exd4 5. O-O Qg5 6. Bd3 Nf6 7. f4 Qh4 8. e5 Nd5 9. Qf3 Nb6 10. c3 dxc3 11. Nxc3 Bc5+ 12. Kh1 O-O 13. Ne4 Bd4 14. g3 Qe7 15. Ng5 h6 16. Qe4 f5 17. Qxd4 hxg5 18. fxg5 c5 19. Qf4 Nd5 20. Bc4 Qe6 21. Bxd5 Qxd5+ 22. Rf3 Re8 23. d4 cxd4 24. Qxf5 d6 25. e6 Bxe6 26. Qd3 Bg4 27. Kg2 Bxf3+ 28. Kf2 Bh1 29. Qb3 Qxb3 30. axb3 d5 31. Bf4 Be4 32. Rd1 d3 33. h4 Re6 34. Rc1 Rb6 35. Ke3 Rxb3 36. Be5 Rf8 37. Rc7 Rf3+ 38. Kd2 Rf2+ 39. Ke1 d2+ 40. Kxf2 d1=Q 41. Rxg7+ Kf8 42. g6 Rf3+ 43. Kg2 Rf4+ 44. Kh3 Qf1+ 45. Kh2 Rxh4+ 46. gxh4 Qh1+ 47. Kg3 Qf3+ 48. Kh2 Qh1+ 49. Kg3 Qf3+ 50. Kh2 Qf2+ 51. Kh3 Qg2# 0-1

0
0
12
Open comments for this post

4h 47m 52s logged

I finally coding a basic bot that plays against you. This plays legal moves, and has a move depth of 3. I implemented minimax and piece square tables, so it would play better moves quickly.

There is also an option to export the game as a pgn or fen, so you can evaluate the chess bot as well as your accuracy.

currently, even with move depth 3, it is slow, especially when there are a lot of moves it has to sort through, and I want to make it so the algorithm works faster, even on lower end devices. Also, the algorithm is pretty bad, (it got about 75% accuracy on chess.com analysis) so I also plan on improving it in the future.

0
0
17
Open comments for this post

2h 4m 59s logged

Devlog #1

My first goal in building a chess bot is to code the board and defining the rules. I used chessboard.js to make the board, and I will later implement rules, so both sides can only play legal moves, and also castling, en passant, etc.

0
0
3

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…