Thank you for this, I would like to build a simple wallet for learning purposes, any idea on how to get started, familiar with Python and JavaScript, thanks.
This depends on personal preferences but for learning purposes I prefer Python. I'd define a scope for starters and work through each item and then add more support from there on, eg:
  • generate memoic seedphrase (bip-39)
  • only support HD wallet (bip-32)
  • only support segwit addresses (p2wpkh, p2wsh)
  • query Bitcoin RPC for data (balances and nr of tx confirmations)
I haven't checked if there's more JS support for Bitcoin so not sure if it would be easier or not. Might be a good section for bitcoinpy.dev to include an example how to build a light cli python wallet. :)