This repository is the place to develop smart contracts for Dev Protocol.
- Whitepaper: https://github.com/dev-protocol/protocol/blob/main/docs/WHITEPAPER.md
- ホワイトペーパー(日本語): https://github.com/dev-protocol/protocol/blob/main/docs/WHITEPAPER.JA.md
First, install this repository as an npm package.
> npm i -D @devprotocol/protocol-v2You can use the Dev Protocol interface by importing it from a Solidity file.
import{IAddressRegistry} from "@devprotocol/protocol-v2/contracts/interface/IAddressRegistry.sol"; import{IPropertyFactory} from "@devprotocol/protocol-v2/contracts/interface/IPropertyFactory.sol"; contract TestContract{function validatePropertyAddress(address _property) external view{IAddressRegistry registry = IAddressRegistry(0x0a15Ccf5E6029AaAeBc5F01b09d3C240Dc56c5f9); IPropertyFactory propertyFactory = IPropertyFactory(registry.registries("PropertyFactory")); require(propertyFactory.isProperty(_property), "not property address")} } This is an example of logic that uses the PropertyFactory contract feature of the Dev Protocol to validate if it is a Property address.
The available interfaces can be found in "node_modules/@devprotocol/protocol-v2/contracts/interface/".
AddressRegistry holds the addresses of the contracts used in the Dev Protocol.
AddressRegistry address arbitrum mainet:0x0a15Ccf5E6029AaAeBc5F01b09d3C240Dc56c5f9 arbitrum rinkeby:0xE75929F46355ad8C5C558755D836364f119BdB22 Read the contributing guide, and create PR when you have time. 🧚✨
Executing the following command will compile each contract.
git clone https://github.com/dev-protocol/protocol-v2.git cd protocol-v2 yarn yarn generate run the following command to test each contract.
yarn test If you use Visual Studio Code, we recommend that you install the following plug-ins:
EditorConfig vscode-eslint solidity 