The smart contracts powering blockimmo
Built on the Ethereum blockchain, Solidity, and OpenZeppelin:
- using common contract security patterns (See Onward with Ethereum Smart Contract Security)
- in the Solidity language.
NOTE: New to smart contract development? Check OpenZeppelin's introductory guide.
blockimmo integrates with Truffle.
After installing Truffle, to install the blockimmo platform smart contracts, run the following in your Solidity project root directory:
cd blockimmo-contracts npm i sh scripts/test.sh
||v1.0.0||A minimal, simple database mapping properties to their on-chain representation (
||v1.0.0||A minimal, simple database mapping public addresses (ie users) to their permissions.|
||v1.0.0||An asset-backed token (a property as identified by its E-GRID (a UUID) in the (Swiss) land registry).|
||v1.0.0||An ERC20-compliant token that distributes any Ether it receives to its token holders proportionate to their share.|
||v1.0.0||A simple DAO attached to a
||v1.0.0||Distribute tokens to investors in exchange for Ether.|
Unit test are critical to the blockimmo platform. They help ensure code quality and mitigate against security vulnerabilities. The directory structure within the
/tests directory corresponds to the
Some of our contracts rely on the addresses of the deployed
WhitelistProxy smart contracts. These addresses differ between testing, Ropsten, and Main net. Comments in our smart contracts indicate which addresses must be used for each kind of deployment.
blockimmo is meant to provide a secure, tested, and audited platform for real-estate.
We follow the core development principles and strategies that OpenZeppelin is based on including: security in depth, simple and modular code, clarity-driven naming conventions, comprehensive unit testing, pre-and-post-condition sanity checks, code consistency, and regular audits.
If you find a security issue, please make an issue at our HackerOne page.
Copyright (c) 2018 blockimmo AG email@example.com