{"id":22799854,"url":"https://github.com/tangle-network/layerzero-dvn-blueprint-template","last_synced_at":"2025-03-30T19:17:29.586Z","repository":{"id":259574914,"uuid":"878244290","full_name":"tangle-network/layerzero-dvn-blueprint-template","owner":"tangle-network","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-27T20:04:13.000Z","size":1535,"stargazers_count":1,"open_issues_count":8,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T21:22:35.374Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Solidity","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tangle-network.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-25T03:05:46.000Z","updated_at":"2025-01-23T17:53:04.000Z","dependencies_parsed_at":"2024-12-12T07:10:13.960Z","dependency_job_id":"76182596-79b3-4a36-9b61-fb38afbb5534","html_url":"https://github.com/tangle-network/layerzero-dvn-blueprint-template","commit_stats":null,"previous_names":["tangle-network/layerzero-dvn-blueprint-template"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Flayerzero-dvn-blueprint-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Flayerzero-dvn-blueprint-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Flayerzero-dvn-blueprint-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Flayerzero-dvn-blueprint-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tangle-network","download_url":"https://codeload.github.com/tangle-network/layerzero-dvn-blueprint-template/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246365646,"owners_count":20765549,"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":[],"created_at":"2024-12-12T07:10:09.487Z","updated_at":"2025-03-30T19:17:29.255Z","avatar_url":"https://github.com/tangle-network.png","language":"Solidity","funding_links":[],"categories":["Bridges"],"sub_categories":[],"readme":"# \u003ch1 align=\"center\"\u003eLayerzero DVN Blueprint Template 🌐\u003c/h1\u003e\n\n**A template for creating Decentralized Verifier Network (DVN) Blueprints for LayerZero V2 on Tangle**\n\n## 📚 Overview\n\nThis project provides a template for creating Layerzero Decentralized Verifier Network (DVN) Blueprints on the Tangle Network. DVNs are an essential component of the LayerZero protocol, responsible for verifying cross-chain messages and ensuring the security and reliability of inter-blockchain communications.\n\nBlueprints in Tangle are specifications for Actively Validated Services (AVS) that run arbitrary computations for a user-specified period of time. This template allows developers to create reusable DVN infrastructures, enabling them to participate in the LayerZero ecosystem and potentially monetize their work.\n\n## 📚 Prerequisites\n\nBefore you can run this project, you will need to have the following software installed on your machine:\n\n- [Rust](https://www.rust-lang.org/tools/install)\n- [Forge](https://getfoundry.sh)\n- [Tangle](https://github.com/tangle-network/tangle?tab=readme-ov-file#-getting-started-)\n\nYou will also need to install `cargo-tangle`, our CLI tool for creating and deploying Tangle Blueprints:\n\n```bash\ncurl --proto '=https' --tlsv1.2 -LsSf https://github.com/tangle-network/gadget/releases/download/cargo-tangle-v0.1.2/cargo-tangle-installer.sh | sh\n```\n\nOr, if you prefer to install the CLI from crates.io:\n\n```bash\ncargo install cargo-tangle --force # to get the latest version\n```\n\n## 🛠️ Getting Started\n\n1. Create a new project using the DVN blueprint template:\n\n```sh\ncargo tangle blueprint create --name my-dvn-blueprint --repo https://github.com/tangle-network/layerzero-dvn-blueprint-template\n```\n\n2. Navigate to your project directory:\n\n```sh\ncd my-dvn-blueprint\n```\n\n3. Implement your offchain DVN logic in `src/lib.rs` and onchain DVN in `contracts/src/`, building upon the provided template functions.\n\n4. Build your project:\n\n```sh\ncargo build\n```\n\n5. Deploy your DVN blueprint to the Tangle network:\n\n```sh\ncargo tangle blueprint deploy\n```\n\n## 📖 Understanding the Template\n\nThe DVN has one off-chain workflow:\n\n1. The DVN first listens for the `PacketSent` event:\n2. After the `PacketSent` event, the `DVNFeePaid` is how you know your DVN has been assigned to verify the packet's `payloadHash`.\n3. After receiving the fee, your DVN should query the address of the `MessageLib` on the destination chain:\n4. After your DVN has retrieved the receive `MessageLib`, you should read the `MessageLib` configuration from it. In the configuration is the required block confirmations to wait before calling verify on the destination chain.\n5. Your DVN should next do an idempotency check:\n   1. If the state is `true`, then your idempotency check indicates that you already verified this packet. You can terminate your DVN workflow.\n   2. If the state is `false`, then you must call `ULN.verify`:\n\n## 📚 Resources\n\n- [LayerZero V2 Documentation](https://layerzero.network/docs)\n- [Tangle Network Documentation](https://docs.tangle.tools)\n\n## 📬 Feedback\n\nIf you have any feedback or issues, please feel free to open an issue on our [GitHub repository](https://github.com/tangle-network/layerzero-dvn-blueprint-template/issues).\n\n## 📜 License\n\nThis project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for more details.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftangle-network%2Flayerzero-dvn-blueprint-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftangle-network%2Flayerzero-dvn-blueprint-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftangle-network%2Flayerzero-dvn-blueprint-template/lists"}