From your 25 words the private key (and for that matter the public key, too) can be produced with an API call. E.g. in JavaScript,
const account1_mnemonic = "write the twenty five words here";
const recoveredAccount1 = algosdk.mnemonicToSecretKey(account1_mnemonic);
console.log('Private key: '+ recoveredAccount1.sk);
console.log('Address: ' + recoveredAccount1.addr);
So, the process is: “25 word mnemonic” → “seed” → “private and public key”
and “public key” → “address”