What exactly is a smart contract?
A smart-contract is a precompiled contract (or code) that cannot be altered on the blockchain. It is very useful for many applications, such as a marketplace.
So, in this project whether the buyer and seller will agree and sign on the smart contract?
Yes, both the buyer and the seller will have to interact with the smart-contract to complete the transaction.