Skip to content

seetadev/ethopsud

Repository files navigation

PropTech: Registration Management and Transfer, Home Maintenance and Cleaning Planner for Elderly and Aged People

Enable effective registration and property transfer management, building maintenance communication and a technical solution for security and monitoring incidents using Multichain, Polygon, Moralis, BNB, Fantom, Filecoin powered by FEVM, Ethereum, IPFS, NFT.Storage and OSS AI; enable early detection and prevention of incidents.

Platform Features:

•Registration Management : Property Registration and Transfer Management using smart contracts compiled using EVM.

•Monitoring : Looking out and reporting incidents based on event detection in visual data using a Filecoin/IPFS powered security based solution.

•Detection : Identifying the security threats in the video feed using object detection.

•Geo-fencing : Discovering unlawful presence and raising alarms using the detection & discovery data.

•Discovery : Logging the identities of the property owners, using exchange of unique identifiers.

•Building Maintenance: Reminder and timely notifications for maintenance activities using an Alexa skill.

•Analysis : Analyzing incidents.

Registration Management Module: https://github.com/seetadev/ethopsud/tree/main/PropTech-Modules/Registration-Management

A distributed application to register users and properties and handle transfer of properties among users and validate.

Running the project in a development environment Requirements Truffle - to compile and deploy contracts Ganache/Test-RPC - to run local development ethereum network npm - to run the project Metamask - ethereum wallet (browser extension)

Setup

  1. Start ganache/test-rpc on port 8545
    • By default ganache starts on port 7545
    • If so, goto settings and change port to 8545
    • Hit restart
  2. In browser connect Metamask to local network on port 8545 and log in
  3. Import first five accounts from local blockchain network -
    • Copy private key of first account from ganche/test-rpc
    • In Metamask => import accounts , select private key
    • Paste the private key and press import
    • You should see Account# with some ethereum
    • If running the project for first time
      • Goto Settings and reset account
      • This should clear any old transactions linked to the account
      • Without this step you might see Incorrect nonce error in console
    • Similarly import at least one more account from Ganache/test-rpc
  4. Migrate contracts to local ethereum network using truffle
    1. On linux truffle migrate --development --reset
    2. On windows truffle.cmd migrate --development --reset
    3. The first account visible in ganche/test-rpc will be the Owner of the contract

After successful setup with no errors the project can be started by running npm run dev If missing module errors come up try again after running npm install After running the server sucessfully the DAPP can be accessed on localhost:3000

Flow of the DAPP

The purpose of the DAPP is to enable users to register themselves as well as their properties in a decentralized manner. An individual can be identified by her SSN and a property by Property Registry Number both of which for now are integers between 0 and 65535 (16 bit integers).

  1. Every SSN or individual is associated to an address of an individual ethereum account.
    • Any activity of registering a property or transffering a property belonging to the SSN must be submitted from the registered account only.
    • An SSN can be registered to an address by entering the SSN in the SSN input field under heading Individual Registry
    • On clicking Register button Metamask will prompt to submit transaction, hit submit.
      • If transcation succeeds Metamask will notify the user.
      • If transaction fails with a propmt "Identity Mismatch" it means that the supplied SSN is already registered with a differnt account than the one open in Metamask currently. This error is not treated as a failed transaction, thus ether will be charged as for a successful transaction.
  2. Every Property Registry Number or property is associated with an SSN, the SSN must be previously registered under Individual Registry
    • A Property Registry Number can be registered with an SSN under heading Property Registry
    • On clicking Register button Metamask will prompt to submit the transaction, hit submit.
      • If transaction fails with a proppt "Identity Mismatch" it means that the SSN supplied is not registered with the account currently open in Metamask.
      • If transaction fails with a prompt "Property Mismatch" it means that the Property Registry Number supplied is already registered to some other SSN or individual.
      • Both the above errors are not treated as failure so ethers will be charged as for successful transactions.
  3. Transferring Property Registry Number from Seller to Buyer
    • This transaction must be initiated while the account of the seller is logged in Metamask i.e. transfer is initiated by the seller
    • Supply the Seller SSN and the Buyer SSN along with the Property Registry Number to transfer
    • On clicking Transfer button Metamask will prompt to submit the transaction, hit submit.
      • If transaction fails with a proppt "Identity Mismatch" it means that the SSN supplied is not registered with the account currently open in Metamask.
      • If transaction fails with a prompt "Property Mismatch" it means that the Property Registry Number supplied is already registered to some other SSN or individual.
      • Both the above errors are not treated as failure so ethers will be charged as for successful transactions.
  4. Viewing the registered Property Registry Number with owner's SSN
    • Only the admin can view the registered properties and their owner
      • The first account in Ganache/test-rpc will be the owner under unchanged configurations
    • The owner needs to refresh the page after logging into her account with Metamask to see the registered properties.

Blockchain Technologies utilized with Moralis Transaction Dashboard

  1. MultiChain: We are extending multichain web app to integrate with SocialCalc to enable tabulation, charting, graphing, computation and organization. Please visit https://github.com/seetadev/ethopsud/tree/main/PropTech-Modules/MultiChain-PropTech-webapp/multichain-proptech-webapp

  2. BNB: Binance smart contracts for light client are implemented. Please visit https://github.com/seetadev/ethopsud/tree/main/PropTech-Modules/BNB-smart-contract-light-client

  3. Polygon: NFT is originally minted at Polygon source chain and shared with Fantom destination chain. Please find the link to send the NFT that was originally minted at Polygon source-chain to Fantom destination-chain at https://github.com/seetadev/ethopsud/tree/main/PropTech-Modules/NFT-Linker-Polygon-Fantom/nft-linker

  4. Fantom: NFT is originally minted at Polygon source chain and shared with Fantom destination chain. Please find the link to send the NFT that was originally minted at Polygon source-chain to Fantom destination-chain at https://github.com/seetadev/ethopsud/tree/main/PropTech-Modules/NFT-Linker-Polygon-Fantom/nft-linker

UD Login for Ethops Mint

(EthOps NFT Mint and the integration of "Login With Unstoppable")

Steps to setup and run the module:

  1. Go to base directory
  2. Install dependencies with yarn install
  3. Update .env.example file with your Unstoppable Domains keys
  4. Run yarn start to start the local server at http://localhost:3000/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors