SmallFish - Free Chess iOS App


As the developer for SmallFish iOS free chess playing app bundled with SmallFish. I'd like to share the development experience in a series of forum posts.

I will share my stores with unique pictures, and more! Please visit this post reguarly for updates.

Please download the app from

This is a free app, and I mean it. There's no advertisement, and there's no in-app purchase. You get a fully working functional brilliant chess app without any obligation. It's just free.

The app supports iPhones and iPads, including the latest iPhone X.


Blunder Analysis

Last month, the SmallFish app introduced a new blunder checking feature. Let's take a quick look.

This is the position. White is down by a queen. But what were the bad moves? And what could you have done better?

Let's try the Blunder Checking analysis. Click on the vertical dots in the app:


Click on "Blunder Check".

Now we know 4.Be2 was the mistake. A better move would have been 4.Qxe5+.

Blunder checking is a nice, simple and quick way to generate feedback on your games. Use it for automatic analysis with the strongest Stockfish engine on your iOS devices.

In the next post, I'll outline the existing algorithms and future changes.


awesome app!Smile

Thanks. This is a great app.
Best engine app for iOS on the market!
Panzercat, what are you talking about? I have this exact app, which I got for free. Also, the app was last updated on Dec. 18.
2017 btw.

As mentioned, I will periodically write posts about the SmallFish iOS app. Please come back and take a look!

Let’s continue from our previous discussion. Automatic game analysis is a popular discussion I have been asked to add for years. When I decided it was time to do the works, I had to decide what and how to annotate a chess game. I considered the following possibilities: 

  • Chessmaster annotation is instantly popular. Unfortunately, the software is no longer in development. But I have an old version on my old Windows machine.
  • Chess Artist is a powerful program for annotating a game database. It’s not popular because there was no marketing. (
  • Lichess annotation

All other game annotations I’d considered were not acceptable. Typical outputs would be something like this:

           1.e4 (0.23) 1...e5 (0.20) 2.Nf3 (0.40) 2...Nc6 (0.30)

I don’t like random numbers, they are just not very useful for understanding your own games. Let me give you an example for a blunder move (like losing your queen for nothing). Assume you’re the White player and you just lost your queen:


".... Black takes White’s queen with knight from f6 to h5. Black will be ahead in materials by a queen. Black is winning ...."

Chess Artist

“... -9.99 [Better is 35.Qd1 a5 36.Rc1 Ra9] ...”


"... (-9.99). Blunder. Best move was 35.Qd1..."

Both Chess Artist and Lichess would report engine score and the best move. Chessmaster would give you plain English analysis.

That was my decisions:

  • I liked Chessmaster, but the implementation was not trivial. I wanted to push for blunder checking before the end of 2017. There was not enough time.
  • Lichess annotation was simple enough for us to get started.

That was exactly what I did. I copied lichess annotation, while preparing for Chessmaster analysis for future updates.

 The lichess annotation was not very challenging to implement. They are the rules:

  • Blunder move if the change in engine evaluation is 3.0 or higher
  • Mistake move if the change in engine evaluation is 1.0 or higher
  • Inaccuracy move if the change in engine evaluation is 0.5 or higher.

For example, if Stockfish gives you a score of 0.1, you make a move that blunders your queen, the score is now -9.0. The change in evaluation would be (9.0 + 0.1 = 9.1), which triggers the blunder threshold (3.0).

 An example in my own game .... I blundered horribly against Stockfish and was crushed ...


I’m not convinced this is the best annotation, but it’s simple to understand. I’m looking for more Chessmaster style in future updates.


Please follow me on my twitter ( and like me on my Facebook ( 


Yewong wrote:

awesome app!


Thanks. I just updated where the current blunder analysis in SmallFish inspired from.


liml wrote:
Thanks. This is a great app.

Thanks. I just updated where the current blunder analysis in SmallFish inspired from.

kill_richard_becker wrote:
Best engine app for iOS on the market!

Thanks. I just updated where the current blunder analysis in SmallFish inspired from.

Panzercat wrote:
This app isn't free. The previous version(2013), which is no longer supported or updated is.

This is a free app, free to download and free to play.


I use this app with the Syzygy 5 tablebase on my smartphone when I don't have access to my computer  and I love it.  I actually just noticed the blunder check feature update yesterday and I look forward to further updates. Thank you for the app.


It was very prudent to do lichess annotation.  Thank you for your app!!


This week, I should cover the basic UI controls on the SmallFish app. The controls on SmallFish are quite efficient, but can be confusing for new players. There are two toolbars in the app.


Toolbar 1

Toolbar with Game, Analysis and Graph. This is the default toolbar.




Toolbar 2




Another toolbar with Game, Options, Flip, Move, Hint.


There is no right or wrong which one you should use. The first toolbar allows you effortlessly switch between analysis and graph. Your second option is a traditional toolbar that you should see in many other apps (not just chess). I personally prefer the first option: 

  • I like to see my graph
  • I like to see my analysis
  • I don’t like flipping the board, thus the Flip option is meaningless to me
  • I don’t like to see hints, again the Hint button is useless to me

Please take a look and make your selection.


But ... What if you want the first toolbar but you would also like to flip the board, what to do? You should try ShortcutWhat’s shortcut? There is a help page in the app, I quote what’s there:


Shortcut is a quick way for you to access the menu functions, You choose your favourite shortcut and execute it by clicking on the selected tab. It is a quick and efficient way to do whatever what you want to do.


That’s right. Start off by picking your shortcut. In the Options menu, select Shortcut.



Select your shortcut. If you want to flip your board, pick it.



Now, we come to the tricky part. Go back to your board. Double click on one of the buttons (Game or Analysis or Graph).




Yeah! The chess board is now flipped! Nice and simple. You pick whatever you want to do for your chess game.




Shortcut doesn’t work on the second toolbar, it only works on the first (and default) toolbar.


Please follow me on my twitter ( and like me on my Facebook (