could someone explain how a seed phrase on can be used to generate / restore multiple wallets?
I understand a the secret key is a public/private keypair, but how is a single seed phrase associated with multiple wallets?
It uses BIP39 to transorm the mnemonic phrase into a private key and BIP32 to compute hierarchical deterministic wallets (HD wallets) from it.
https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
then
https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki
This image illustrate the one way process going from the master seed to the wallet addresses.
https://github.com/bitcoin/bips/blob/master/bip-0032/derivation.png
So at the end there is a private key corresponding to each public key, but it doesn't have to be stored since it can be derived again next time we need it.