How NFT transaction is working on solana and how to get the price of a NFT?

Short: how can I get the certain value of an NFT on solana blockchain using web3.js?

I understand that NFT’s on solana is just a token with 1 total supply, 0 decimals, with minting disable.

I understand also, that to add metadata to solana’s NFT you need to use metaplex to create your collection and prepare the mint for candy machine.

With all of those notions I can create NFT collection on devnet (for example), minting them with my wallet or any solana’s wallet.

Now come’s the tricky part. Since you are the only one on this particular token addresss to have a token, you are the owner of this NFT. So if you want to give your NFT to someone you are just basically, giving 1 token of this NFT token address to someone else right ?

The other way to give (sell) your NFT is using auction mechanism, basically a smart contract, right?

So how do you manage to keep track of the price of a certain NFT? Like the platform you bought it can keep track of the price in their database. But there is no such record in a block of the value (in SOL or any other SPL-TOKEN) of a particular NFT.

I’ll give you an example. I am trying to display all my NFT from my PhantomWallet, and display the associated price (I am currently struggling to get the minted price)! But how can I get the certain value of an NFT on solana blockchain using web3.js or any solana compatible library.