ARMAGEDDON POP

Music Philosophy Art Math Chess Programming and much more ...

May
13
Tuesday
2025
2025 05 13



🛠️ Armageddon POP Chess DB - ToDo List

If everything goes according to plan, we will begin updating the database around 2025-05-18. As of now, the first one million recorded games have been added, covering material well into the 1990s. (Yes, all the classic World Championship matches up to Kasparov–Karpov are already included!)

After that period, the number of recorded games increased dramatically. We have over eight million more to process, so patience is advised.

In the meantime, I’ve compiled a small selection of notable World Championship matches — including Fischer–Spassky 1972 and, of course, the legendary Kasparov–Karpov battles.

Steinitz - Zuckertort 1886

Botvinnik-Tal 1960

Spassky - Fischer 1972

Karpov - Kortschnoj 1978 (The "Hate" Match)

Karpov - Kasparov 1984 (the never ending Match)

Below you can see where we are in the development. Note that the GUI both can and will be subject to changes.

Eplanation of symbols:

Function or Script fully working and tested
✅🔄  Function or Script fully working and tested but ongoing work
❌🔄 Under investigation
Bug or missing function



Search & Filters
  • ✅ ECO-based search
  • ✅ Search by White player
  • ✅ Search by Black player
  • ✅ Search by Date range
  • ✅ Search by Event/Collection
  • 🔄 Search by Opening Name
  • ✅ Result filter (Win/Loss/Draw)
User Interface
  • ✅ Search Form styling
  • ✅ Pagination improvements
  • ✅🔄 Full responsive chessboard controls
  • ✅🔄 Autocomplete fields for players & ECO
  • ✅ Light/dark background for tablerows

    🔄 Eventhandler for mouseEnter in search input after first Criteria is set, then we take all the matches sorted alphabetically.? Really, you actually must type 1 character before the search kicks in
  • ❌  Sortingoption (first in query and should be saved in settings, but also in the pgn4web.js where I have to add a sorting funktion in the game list. Multiple sorts in the db-query might slow down performance.
Database & Backend
  • ✅ Move to single table + partitions
  • 🔄 Optimize complex queries (multiple criteria)

    ✅ Join with collections in async

    ❌ Search by Move Text (future step)
  • 🔄 PGN Export stability checks
  • ✅ General backend cleanup

  • ✅ PGN import

  • ✅ SQL import batch size 20 000 approx 20 s

Notes:

2025-04-28 19:05:46 Search on White performs as expected; i.e once "Morphy, Paul" is selected Black at once contains only Paul Morphys opponent just as you expect as a user. Here though we must think this through, we dont need to connect everything with everything so to speak, but a very good example is that white player should be connected to black player(s) As soon as we triggers Morphy, Paul search From date should be at first date with correct format and To date should automatically be last game with correct date format. Note, that fortunately the db is sorted chronologically by default ID :) .

We must also consider the Collections table where we have 2 major things to do, the display must be not the CollectionID but rather the "Event" Column. Event must naturally be connected to players both black and white. Here same logic about date from - to applies 

Questions: How important is a search for a player both as black and white? Normally you want to know a players repertoire as white OR black, and if you want from both sides the user casn be able to make 2 selections. Question is pending