Skip to content

FractoReal is a blockchain-based real estate management system that leverages smart contracts to facilitate the management and fractional ownership of real estate properties. The system allows property owners to tokenize their real estate assets into NFTs (Non-Fungible Tokens) and further fractionalize them into ERC-1155 tokens.

License

Notifications You must be signed in to change notification settings

ahbanavi/FractoReal

Repository files navigation

FractoReal: A Blockchain-based Real Estate Tokenization and Management System

Disclaimer: This project was developed for educational purposes only and should not be used in production environments. The code and resources provided here are intended to demonstrate the concepts and technology discussed in the thesis and provided as-is without warranty of any kind.

Description

FractoReal is a blockchain-based real estate management system that leverages smart contracts to facilitate the management and fractional ownership of real estate properties. The system allows property owners to tokenize their real estate assets into NFTs (Non-Fungible Tokens) and further fractionalize them into ERC-1155 tokens. This enables multiple investors to own fractions of a property, making real estate investment more accessible and liquid. The system also provides a DAO (Decentralized Autonomous Organization) for managing the properties and making decisions collectively for shared assets, as well as rent distribution and charge management functionalities.

Deployed Smart Contracts Addresses

Here are the addresses and deployment transaction hashes of the deployed smart contracts on the Sepolia network:

Contract Name Contract Address Deployment Transaction
FractoRealNFT.sol 0x1F3706f4e43C061Fb880f832C96eEabC9978FD84 0xf1c34336eea...
FractoRealFractions.sol 0xaE2A3F9Ced096ff2236fA31b487978df267f8eED 0xeb19fbf27adb0...
ChargeManagement.sol 0x880E2EbF333bdB47855cB4f16E9E6DBa4928d91B 0xd11efcf067c1b...

File Structure

  • contracts/: Contains the Solidity smart contracts.
  • scripts/: Contains the deployment and testing scripts.
  • test/: Contains the test cases for the smart contracts.
  • gas-reporter/: Contains the gas reporter results.

Installation and Testing

To set up the project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/ahbanavi/FractoReal.git
    cd FractoReal
  2. Install the dependencies:

    npm install
  3. Run the tests:

    npm run test

asciicast

Setup and Deploy

Setting up Hardhat Variables

To set up the Hardhat environment variables, run the following command and do what it says:

npx hardhat vars setup

Here are the variables that you need to set up:

Mandatory:

INFURA_API_KEY=your_infura_api_key
SEPOLIA_PRIVATE_KEY=your_sepolia_private_key
ETHERSCAN_API_KEY=your_etherscan_api_key

Optional:

GANASHE_MNEMONIC=your_ganashe_mnemonic
COIN_MARKET_CAP_API_KEY=your_coin_market_cap_api_key

Deploying the Contracts

To deploy the contracts, run the following command:

npm run deploy

asciicast

License

This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. You are free to share, copy and adapt the material in any medium or format for non-commercial purposes with proper attribution, providing a link to the license, and indicating if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.

Acknowledgements

This project was developed as part of the Master's thesis titled "Management of Real Estate Investments on the Blockchain Platform based on Smart Contract and NFT" by Amir Hossein Banavi under the supervision of thesis advisor D. Bahrepour Ph.D. and consulting advisor SR. Kamel Tabbakh Ph.D.. The Department of Computer Engineering, Mashhad Branch, Islamic Azad University, Mashhad, Iran. retains the ownership of this project.

About

FractoReal is a blockchain-based real estate management system that leverages smart contracts to facilitate the management and fractional ownership of real estate properties. The system allows property owners to tokenize their real estate assets into NFTs (Non-Fungible Tokens) and further fractionalize them into ERC-1155 tokens.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published