I've been using some software and hardware wallets for years. Like most of you I am familiar with mnemonic seed phrases used in wallet creation/restoration operations.
Last week I decided to go a bit deeper on the design of these words. I worked with 24 word phrases which is basically 23+checksum word to validate the integrity of the phrase.
You can find the code I wrote for calculating checksum in following github repository :
Checksum calculation is the first part of the code.