{"id":20632094,"url":"https://github.com/oxmarco/abodeme","last_synced_at":"2025-04-15T18:55:38.176Z","repository":{"id":51107828,"uuid":"369847444","full_name":"OxMarco/AbodeMe","owner":"OxMarco","description":"Rent and let guest houses in a decentralised, secure and permissionless way.","archived":false,"fork":false,"pushed_at":"2021-05-23T15:26:26.000Z","size":15133,"stargazers_count":6,"open_issues_count":2,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T23:51:13.860Z","etag":null,"topics":["ethereum","ipfs","opendefi","polygon","reactjs","secret-network","superfluid","torus","web3"],"latest_commit_sha":null,"homepage":"https://OxMarco.github.io/AbodeMe","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OxMarco.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-05-22T15:49:14.000Z","updated_at":"2024-08-12T20:13:16.000Z","dependencies_parsed_at":"2022-09-04T04:22:33.704Z","dependency_job_id":null,"html_url":"https://github.com/OxMarco/AbodeMe","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OxMarco%2FAbodeMe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OxMarco%2FAbodeMe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OxMarco%2FAbodeMe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OxMarco%2FAbodeMe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OxMarco","download_url":"https://codeload.github.com/OxMarco/AbodeMe/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249135778,"owners_count":21218365,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ethereum","ipfs","opendefi","polygon","reactjs","secret-network","superfluid","torus","web3"],"created_at":"2024-11-16T14:14:52.381Z","updated_at":"2025-04-15T18:55:38.155Z","avatar_url":"https://github.com/OxMarco.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- MIT License\u003e\n[![Contributors][contributors-shield]][contributors-url]\n[![Forks][forks-shield]][forks-url]\n[![Stargazers][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n[![MIT License][license-shield]][license-url]\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/grcasanova/AbodeMe\"\u003e\n    \u003cimg src=\"images/logo.png\" alt=\"Logo\" width=\"100\" height=\"162\"\u003e\n  \u003c/a\u003e\n\n  \u003ch3 align=\"center\"\u003eAbodeMe\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n  Rent and let guest houses in a decentralised, secure and permissionless way\u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://grcasanova.github.io/AbodeMe\"\u003eView Demo\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/grcasanova/AbodeMe/BUG-TEMPLATE.md\"\u003eReport Bug\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/grcasanova/AbodeMe/FEATURE-REQUEST.md\"\u003eRequest Feature\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/cover.png\" alt=\"cover\" width=\"600\" height=\"450\"\u003e\n\u003c/p\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails open=\"open\"\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-project\"\u003eAbout The Project\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#built-with\"\u003eBuilt With\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#prerequisites\"\u003ePrerequisites\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#usage\"\u003eUsage\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#roadmap\"\u003eRoadmap\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contact\"\u003eContact\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#acknowledgements\"\u003eAcknowledgements\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n## About The Project\n\nOne of the great things about holidays is to ease off your mind and enjoy your deserved free time without having to think about mundane practicalities. Sometimes, it is good to just pick a location and stay as much as you like without having to arrange everything beforehand.\n\nThat's why we have created *AbodeMe*. A decentralised platform that allows you to rent a property in a fluid way as we say, without any time limits just pay as you go on an hourly basis. The tenant can then enjoy a hassle-free rental experience while the landlord is paid continuously and is protected against accidental damage by a security deposit stored on the contract.\nUpon starting the rental period, the tenant will be given the keycode to unlock the safety box with the entrance key, stored in *Secret Network* and burned after reading. In this way, the landlord doesn't have to always be present for the tenant and let them in.\nFinally, by having the dapp run on *Polygon* we were able to reduce gas costs by approximately 70%, minting the NFT containing the property data costs just a fraction of dollar compared to the $60-80 figure in Ethereum mainnet.\n\nSuperfluid cashflows in xDAI allow capital value to be preserved from market fluctuations and can pave the way for a future implementation of a Polygon/xDAI bridge using *xPollinate*.\n\nA few key features of the platform:\n* completely decentralised\n* privacy preserving\n* security by default\n* collateral deposit as insurance\n* pay as you go, no hidden fees\n\n### Future Ideas\nSurely an integral part of the next development phase will be to debug Superfluid cashflows and port them to the *RentalToken* smart contract in order to avoid manipulation from the frontend as well as provide a better user experience. Secondly, users should be able to pay with Torus only, thus making Keplr wallet obsolete in the expected workflow towards a cleaner and more immediate user-centric interface.\nLastly, collaterals should be invested into yield farming protocols like *Aave* to generate a revenue to keep the dapp alive without having to charge users for the service.\n\n### Built With\n\nTo bring *AbodeMe* to life we integrated the following awesome projects:\n\n* [Polygon](https://polygon.technology)\n* [SecretNetwork](https://scrt.network/)\n* [SuperFluid](https://www.superfluid.finance)\n* [Torus](https://tor.us)\n* [IPFS](https://ipfs.io/)\n* And a sprinkle of *ReactJs*\n\nIn particular, *Polygon* is the main L2 infrastructure allowing us to scale without unloading the costs to our users, *Secret Network* maintains the confidentiality of key locker codes, *SuperFluid* allows us to create dynamic cashflows, *Torus* acts as the main user wallet also providing email and username data while data and images are stored on *IPFS*.\n\n\n\u003c!-- GETTING STARTED --\u003e\n## Getting Started\n\nDeploy a local copy of the project and test it yourself.\n\n### Prerequisites\n\nTo setup the development environment, run the following commands:\n\n* npm\n  ```sh\n  npm install --global npm@latest\n  ```\n\n* yarn\n  ```sh\n  npm install --global yarn@latest\n  ```\n\nYou will also need to have some test MATIC tokens in your Torus wallet and to have installed [Keplr](https://wallet.keplr.app/#/dashboard) wallet with Secret Network switched on.\n\n### Installation\n\nTo install the repository and run it locally:\n\n1. Clone the repo\n   ```sh\n   git clone https://github.com/grcasanova/AbodeMe.git\n   ```\n2. Install nodejs packages with *yarn*\n   ```sh\n   yarn install\n   ```\n3. Start the app with\n   ```sh\n   yarn start\n   ```\n\n\u003c!-- USAGE EXAMPLES --\u003e\n## Usage\n\nUsing *AbodeMe* is very simple, just head off the [Homepage](https://grcasanova.github.io/AbodeMe) and login with your Torus wallet. On the _rent_ page you can see a list of all properties to let and their location pinpointed on a map while on the _let_ page you can list your property and start earning. Once a new tenant accepts the rental agreement you will both receive a welcome email to exchange contacts and you're good to go.\nIn the _dashboard_ you can find all your properties to let and the ones you're currently renting and eventually stop the rental agreement once you want to leave the guest house.\n\n\u003c!-- ROADMAP --\u003e\n## Roadmap\n\nSee the [open issues](https://github.com/grcasanova/AbodeMe/issues) for a list of proposed features (and known issues).\n\n\u003c!-- CONTRIBUTING --\u003e\n## Contributing\n\nContributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.\n\n1. Fork the Project\n2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the Branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request and describe your proposal\n\n\u003c!-- LICENSE --\u003e\n## License\n\nDistributed under the MIT License. See `LICENSE` for more information.\n\n\u003c!-- CONTACT --\u003e\n## Contact\n\nWeb Link: [Homepage](https://grcasanova.github.io/AbodeMe)\n\n\u003c!-- AUTHORS --\u003e\n## Authors\n* [grcasanova](https://github.com/grcasanova)\n* [metypes](https://github.com/metypes)\n\n\u003c!-- ACKNOWLEDGEMENTS --\u003e\n## Acknowledgements\n* [ReactJs](https://reactjs.org)\n* [Ethereum](https://ethereum.org)\n* [Gitcoin](https://gitcoin.co)\n* [Bootstrap](https://getbootstrap.com)\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n[contributors-shield]: https://img.shields.io/github/contributors/grcasanova/AbodeMe.svg?style=for-the-badge\n[contributors-url]: https://github.com/grcasanova/AbodeMe/graphs/contributors\n[forks-shield]: https://img.shields.io/github/forks/grcasanova/AbodeMe.svg?style=for-the-badge\n[forks-url]: https://github.com/grcasanova/AbodeMe/network/members\n[stars-shield]: https://img.shields.io/github/stars/grcasanova/AbodeMe.svg?style=for-the-badge\n[stars-url]: https://github.com/grcasanova/AbodeMe/stargazers\n[issues-shield]: https://img.shields.io/github/issues/grcasanova/AbodeMe.svg?style=for-the-badge\n[issues-url]: https://github.com/grcasanova/AbodeMe/issues\n[license-shield]: https://img.shields.io/github/license/grcasanova/AbodeMe.svg?style=for-the-badge\n[license-url]: https://github.com/grcasanova/AbodeMe/blob/master/LICENSE.txt\n[product-screenshot]: images/screenshot.png\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foxmarco%2Fabodeme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foxmarco%2Fabodeme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foxmarco%2Fabodeme/lists"}