Opensea vs rarible


I watched both Opensea and Rarible tutorial on youtube. In Rarible tutorial, the instructor showed how to mint, but in Opensea tutorial, the instructor ignored that section. In Opensea there are different contract address for different collection (defined in collection.js). Is the case same for Rarible? My understanding is, in Rariblw, all nfts will be under the same contract address.

Is there any tutorial, where instructors explain how to mint/create collection/token, if I want to develop a NFT marketplace, something like Opensea?

How can the user of my NFT marketplace get different contract address for different collections like opensea?

Thanks for your time.