A modern, secure, and transparent blockchain-based application designed to revolutionize land ownership management.
The Land Registry DApp eliminates the risks of fraud, corruption, and inefficiency inherent in traditional, paper-based land registry systems. Built on the Ethereum blockchain, it provides a tamper-proof ledger where property deeds are verified, registered, and transferred securely.
- π Admin Authentication: Strict role-based access control. Only the authorized contract deployer (Admin) can verify citizens.
- π Smart Contract Ownership: Land records are permanently stored and verified on the Ethereum blockchain.
- π€ Secure Transfer of Title: Seamlessly and securely transfer property ownership through autonomous smart contracts. Only the current verified owner can initiate a transfer.
- π Modern Web3 Interface: A sleek, enterprise-grade frontend dashboard featuring glassmorphism, toast notifications, and MetaMask integration.
- π‘οΈ Tamper-Proof Records: Immutability guarantees that once a transaction is recorded, it can never be altered or forged.
- Smart Contracts: Solidity (
^0.8.0) - Blockchain Network: Local Ganache / Ethereum Testnets
- Development Environment: Truffle Suite
- Frontend Interactivity: Web3.js
- UI/UX Design: HTML5, Vanilla CSS, FontAwesome, Google Fonts (Outfit)
LAND-REGISTRY-DAPP/
βββ build/ # Compiled smart contracts
βββ contracts/ # Solidity smart contracts
βββ migrations/ # Deployment scripts for smart contracts
βββ test/ # Tests for smart contracts
βββ .env # Environment variables
βββ .gitignore # Git ignore file
βββ index.html # Main frontend application file
βββ logo.png # Project logo
βββ package.json # Node.js dependencies and scripts
βββ package-lock.json # Lockfile for Node.js dependencies
βββ README.md # Project documentation
βββ truffle-config.js # Truffle configuration file
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
You will need the following installed on your machine:
- Node.js
- Truffle Suite (
npm install -g truffle) - Ganache (CLI or GUI for local blockchain)
- MetaMask (Browser extension)
-
Clone the repository
git clone https://github.com/your-username/LAND-REGISTRY-DAPP.git cd LAND-REGISTRY-DAPP -
Start a local blockchain Open a terminal and start Ganache to create a local Ethereum network on port
7545.npx ganache -p 7545
(Keep this terminal window open!)
-
Deploy the Smart Contract Open a second terminal window in the project directory and migrate the smart contract:
npx truffle migrate --network development
Important: Note the
contract addressprinted in the terminal output. You will need this for the frontend! -
Launch the Frontend Use any local web server to host the
index.htmlfile. For example:npx serve -l 3000
Open your browser and navigate to
http://localhost:3000.
- Connect Wallet: Configure MetaMask to connect to
Localhost 7545and connect your wallet via the UI. - Initialize Contract: Paste the deployed contract address into the System Config tab and click "Initialize".
- Verify Citizen (Admin Only): Switch your MetaMask to the Ganache account that deployed the contract (Account #0). Use the Admin Panel to verify the Ethereum address of the user who wishes to register land.
- Register Land: Once verified, switch to the user's account and register a new parcel of land using a unique ID, location, and area size.
- Lookup / Transfer: Use the Public Registry Lookup to view an official digital certificate of ownership, or transfer the land to another Ethereum address!
---
Sarvesh Pingale
- πΌ LinkedIn: sarvesh-pingale-8b9090299
If you like this project, please consider giving it a β on GitHub!