Landsol is a blockchain-powered decentralized application (DApp) that revolutionizes real estate transactions in India by leveraging ERC-721 NFTs for property ownership and IPFS (via Pinata) for secure document storage. The platform ensures transparent, fraud-proof, and tamper-resistant land dealings using smart contracts on the Ethereum blockchain.
-
Admin Creates a Property Token:
- Each property is minted as an ERC-721 NFT.
- The NFT contains ownership details and legal documents stored on IPFS.
-
Token Transfer to Buyer:
- The admin transfers the property NFT to the buyer.
- The token can be resold to another buyer directly without middlemen.
-
Escrow-Free Transactions:
- Smart contracts ensure transactions occur securely without third-party involvement.
- Ownership is verified on-chain, reducing fraud risk.
β NFT-Based Land Ownership: Each property is tokenized as a unique ERC-721 NFT ensuring immutable ownership records.
β IPFS-Based Document Storage: Property documents, agreements, and metadata are securely stored on IPFS via Pinata.
β Smart Contract Transactions: Automated, secure transactions using escrow-free smart contracts.
β KYC Verification: Only verified users can list, buy, or transfer property.
β Fractional Ownership (Future Scope): Enables multiple users to co-own properties via NFT fractions.
β Low Transaction Fees: Future Polygon integration to minimize gas fees.
| Technology | Usage |
|---|---|
| Solidity | Smart Contracts |
| Ethereum | Blockchain Network |
| ERC-721 | NFT Standard for Tokenized Properties |
| IPFS (Pinata API) | Decentralized File Storage |
| React.js, Next.js | Frontend Development |
| Node.js, Express.js | Backend Services |
| MongoDB | Database for User & Property Metadata |
| Web3.js & MetaMask | Blockchain Authentication |
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract LandsolNFT is ERC721URIStorage, Ownable {
uint256 private _tokenIdCounter;
constructor() ERC721("LandsolProperty", "LAND") {}
function mintPropertyNFT(address to, string memory tokenURI) public onlyOwner returns (uint256) {
uint256 tokenId = _tokenIdCounter++;
_mint(to, tokenId);
_setTokenURI(tokenId, tokenURI);
return tokenId;
}
}To securely store property documents and metadata:
curl -X POST https://api.pinata.cloud/pinning/pinJSONToIPFS \
-H "Authorization: Bearer YOUR_PINATA_JWT" \
-H "Content-Type: application/json" \
--data '{ "name": "Property1", "description": "Land in Mumbai", "image": "https://ipfs.io/ipfs/{CID}" }'git clone https://github.com/your-repo/Landsol.git
cd Landsolnpm installnpx hardhat testnpx hardhat nodenpx hardhat run ./scripts/deploy.js --network localhostnpm run startβ‘ Open http://localhost:3000 in your browser to interact with the DApp.
π Download MetaMask
1οΈβ£ Open MetaMask.
2οΈβ£ Select Ethereum Mainnet or Localhost:8545 (for testing).
3οΈβ£ Import your test account using Hardhatβs generated private key.
β Polygon Integration β Reduce gas fees.
β Aadhaar-Based KYC β Enhance identity verification.
β Fiat Payment Support β Enable INR transactions.
β AI-based Property Valuation β Predict prices based on location & market trends.
This project is licensed under the MIT License.




