Skip to content

Smart contract that enables users to record property titles as NFTs, along with their associated metadata. Additionally, it allows users to filter the recorded titles based on their instrument number.

Notifications You must be signed in to change notification settings

BjornBuug/TitleChain_Decentralized_Property_Ledger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TitleChain: The Decentralized Property Ledger

TitleChain is a decentralized application (Dapp) built on the Sepolia blockchain Testnet that enables secure and transparent recording of property titles. Using OpenZeppelin ERC721 Standard, this Dapp allows users to tokenize property titles into NFTs (Non-Fungible Tokens) along with associated metadata. Furthermore, it leverages IPFS for immutable and decentralized storage of essential documents. The Dapp includes a feature to filter titles based on the instrument number. It also implements a role-based access control system, allowing authorized users to approve property titles after verifying associated documents and information.

Propertytitle

Contract Functions:

Modifiers

  • onlyManager()
  • onlyOwner()

Contract Initialization

  • constructor()

Property Functions

  • createProperty(string memory tokenURI, uint256 instrumentNum)
  • setTokenURI(uint256 tokenId, string memory _tokenURI)
  • recordProperty(uint256 tokenId, uint256 instrumentNum)

Data Retrieval Functions

  • fetchAllPropertiesByManagers()
  • fetchAllProperties()
  • fetchPropertiesByNum(uint256 _instrumentNum)
  • fetchUserProperty()

Manager Functions

  • addManager(address _newManager)
  • approvedPropertyStatus(uint256 tokenId)

Contract Address

View Property Title Recorder Smart Contract on Sepolia Testnet

Foundry Test

Follow the instructions to install Foundry.

Clone and install dependencies: git submodule update --init --recursive
Test Contract: forge test --contracts ./src/test/PropertyRecorder.t.sol -vvvv

About

Smart contract that enables users to record property titles as NFTs, along with their associated metadata. Additionally, it allows users to filter the recorded titles based on their instrument number.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published