user1306: I'm new here and it's still a bit vague for me... In the developers' docs I often see that you can do the same thing with cardano-cli and cardano-wallet (receive payments, create metadata transactions, ...). So how do I know if I should use one or the other ?

user1032: Just like using the command line interface (CLI) on your computer exposes more capabilities as well as potential user errors, so does using the CLI on Cardano.
Unless you are very familiar with the CLI and the syntax, you are best off using the GUI Wallet software (Daedalus, Yoroi, ADALite, or....).

user382: The answer is it depends. The wallet provides a lot of high level automation, like coin selection for transactions, change addresses, etc... The CLI provides a bare bones I'm doing everything myself. In a production application, I'd recommend if you're not using the wallet, you use something like db-sync, graphql or rosetta to construct your transactions and handle the signing logic in your programming language of your choice rather executing cardano-cli from your code. That being said, I made my own single address wallet wrapping around CLI and cardano-addresses if you want to see an example of how you would utilize the CLI commands to build a simplified wallet here: https://github.com/input-output-hk/adawallet

1306: <p>I'm new here and it's still a bit vague for me... In the developers' docs I often see that you can do the same thing with <code>cardano-cli</code> and <code>cardano-wallet</code> (receive payments, create metadata transactions, ...). So how do I know if I should use one or the other ?</p>
 1032: <p>Just like using the command line interface (CLI) on your computer exposes more capabilities as well as potential user errors, so does using the CLI on Cardano.
Unless you are very familiar with the CLI and the syntax, you are best off using the GUI Wallet software (Daedalus, Yoroi, ADALite, or....).</p>
 382: <p>The answer is it depends. The wallet provides a lot of high level automation, like coin selection for transactions, change addresses, etc... The CLI provides a bare bones I'm doing everything myself. In a production application, I'd recommend if you're not using the wallet, you use something like db-sync, graphql or rosetta to construct your transactions and handle the signing logic in your programming language of your choice rather executing cardano-cli from your code. That being said, I made my own single address wallet wrapping around CLI and cardano-addresses if you want to see an example of how you would utilize the CLI commands to build a simplified wallet here: <a href="https://github.com/input-output-hk/adawallet" rel="nofollow noreferrer">https://github.com/input-output-hk/adawallet</a></p>
