Welcome to the Real Estate NFT Marketplace, a decentralized platform for buying, selling, and trading tokenized real estate properties as NFTs. This project combines the power of blockchain technology with the real estate market, offering a new way to invest in and manage property ownership.
The Real Estate NFT Marketplace is deployed at: https://real-estate-nft-market-place.vercel.app/
- Mint and list real estate properties as NFTs
- Buy and sell property NFTs using cryptocurrency
- View detailed property information and history
- User-friendly interface for easy navigation and transactions
- Secure, transparent, and decentralized operations
- Persistent wallet connection using Redis
- Smart Contracts: Solidity
- Frontend: Next.js (React)
- Blockchain Interaction: ethers.js
- Development Environment: Hardhat
- Styling: Tailwind CSS
- Database: Redis (Upstash)
- Node.js (v14 or later)
- npm or yarn
- MetaMask browser extension
-
Clone the repository:
git clone https://github.com/yourusername/your-repo-name.git cd your-repo-name
-
Install dependencies:
npm install
-
Set up environment variables:
- Create a
.env
file in the root directory - Add the following variables:
NEXT_PUBLIC_CONTRACT_ADDRESS=your_deployed_contract_address NEXT_PUBLIC_RPC_URL=your_rpc_url UPSTASH_REDIS_REST_URL=your_upstash_redis_rest_url UPSTASH_REDIS_REST_TOKEN=your_upstash_redis_rest_token
- Create a
-
Compile and deploy smart contracts:
cd web3 npx hardhat compile npx hardhat run scripts/deploy.js --network mumbai
-
Start the development server:
npm run dev
-
Open your browser and navigate to
http://localhost:3000
Prerequisites
- Docker installed on your machine
- Docker Hub account (for publishing)
-
Ensure you're in the root directory of the project.
-
Build the Docker image: docker build -t .
-
Once the build is complete, you can run the container locally: docker run -p 3000:3000 -p 6379:6379
Access the application at http://localhost:3000
To interact with the marketplace on the Polygon Mumbai testnet, you need to configure your Metamask wallet:
- Open Metamask and click on the network dropdown at the top.
- Select "Add Network" and then "Add a network manually".
- Fill in the following details:
- Network Name: Polygon Mumbai
- New RPC URL: https://rpc-mumbai.maticvigil.com/
- Chain ID: 80001
- Currency Symbol: MATIC
- Block Explorer URL: https://mumbai.polygonscan.com/
To interact with the marketplace, you'll need test MATIC tokens. Here are some faucets where you can get free test MATIC:
Steps to get test MATIC:
- Copy your Metamask wallet address
- Visit one of the faucet websites
- Paste your wallet address and request the tokens
- Wait for the transaction to complete (usually takes a few seconds)
- The test MATIC will appear in your Metamask wallet on the Mumbai network
Remember, these are test tokens and have no real value.
- Connect your MetaMask wallet to the application
- Ensure you're on the Polygon Mumbai network and have test MATIC
- Browse listed properties on the marketplace
- List your own property by minting a new NFT
- Make offers on properties or buy them directly
- Manage your owned properties in your profile