{"id":17941755,"url":"https://github.com/weavevm/hello-world-avs-as-exex","last_synced_at":"2025-05-05T23:15:25.141Z","repository":{"id":259742379,"uuid":"878701457","full_name":"weaveVM/hello-world-avs-as-exex","owner":"weaveVM","description":"A blazingly fast hello-world-avs, implemented as an ExEx.","archived":false,"fork":false,"pushed_at":"2024-10-27T21:02:04.000Z","size":237,"stargazers_count":11,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-05-05T23:15:12.795Z","etag":null,"topics":["avs","eigenlayer","exex"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/weaveVM.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-25T22:26:30.000Z","updated_at":"2025-03-08T02:32:22.000Z","dependencies_parsed_at":"2024-10-27T19:13:45.918Z","dependency_job_id":null,"html_url":"https://github.com/weaveVM/hello-world-avs-as-exex","commit_stats":null,"previous_names":["weavevm/hello-world-avs-as-exex"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaveVM%2Fhello-world-avs-as-exex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaveVM%2Fhello-world-avs-as-exex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaveVM%2Fhello-world-avs-as-exex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaveVM%2Fhello-world-avs-as-exex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/weaveVM","download_url":"https://codeload.github.com/weaveVM/hello-world-avs-as-exex/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252590633,"owners_count":21772940,"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":["avs","eigenlayer","exex"],"created_at":"2024-10-29T02:03:53.213Z","updated_at":"2025-05-05T23:15:25.122Z","avatar_url":"https://github.com/weaveVM.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://wvm.dev\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/weaveVM/.github/main/profile/bg.png\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Synopsis \nOperators-As-ExEx is a paradigm that integrates partially or completely the operator of an Actively Validated Services as [Execution Extensions](https://exex.rs) in Reth. This approach aligns perfectly with events-driven activated predefined-actions (EDAs) such as Keeper Networks.\n\n## About This ExEx\nThis ExEx is the re-implementation of Eigenlayer's [hello-world-avs](https://github.com/Layr-Labs/hello-world-avs) as an ExEx. this work comes to demonstrate in practice how the Operator-As-ExEx paradigm works. This ExEx is for demoing and educational purposes only, ***DO NOT USE IT IN PRODUCTION.***\n\n## Low Latency EDA\nThis ExEx shows how to build a high-performance EDA-AVS-Operator by minimizing network latency. Rather than continuously polling JSON-RPC endpoints for AVS Service Manager smart contract events or monitoring blockchain events, this implementation uses direct ExEx notifications that has shared memory communication with the Reth node.\n\nThe operator initializes the RPC provider just once, using it only when submitting task results. All other monitoring/polling - whether for new AVS tasks or EDA-task completion events - happens through ExEx notifications instead of current polling methods in AVS operators.\n\n## Operators-As-ExEx Workflow\n![](./assets/workflow.png)\n\n## Run it\n\nFirst of all, make sure to setup your `.env` file according to [.env.example](./.env.example) \n\n```bash\ngit clone https://github.com/weaveVM/hello-world-avs-as-exex.git\n\ncd hello-world-avs-as-exex\n\ncargo build\n\ncargo run -- init --chain holesky --datadir data\n\ncargo run node\n```\n#### N.B: you need to run a CL along the EL (Reth). [Checkout Lighthouse](https://reth.rs/run/mainnet.html#running-the-consensus-layer)\n\n## License\nThis project is licensed under the [MIT License](./LICENSE)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweavevm%2Fhello-world-avs-as-exex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fweavevm%2Fhello-world-avs-as-exex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweavevm%2Fhello-world-avs-as-exex/lists"}