{"id":26560455,"url":"https://github.com/lfdt-web3j/web3j-evm","last_synced_at":"2025-04-06T12:08:08.812Z","repository":{"id":40385141,"uuid":"219706137","full_name":"LFDT-web3j/web3j-evm","owner":"LFDT-web3j","description":"A library for running an embedded Ethereum EVM in-process on a JVM","archived":false,"fork":false,"pushed_at":"2025-03-17T11:22:54.000Z","size":46015,"stargazers_count":67,"open_issues_count":7,"forks_count":25,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-04-06T12:08:01.620Z","etag":null,"topics":["ethereum","evm-bytecode","solidity","web3j"],"latest_commit_sha":null,"homepage":"https://web3j.io/","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LFDT-web3j.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["web3j"]}},"created_at":"2019-11-05T09:26:52.000Z","updated_at":"2025-03-17T11:22:58.000Z","dependencies_parsed_at":"2024-03-27T15:55:48.417Z","dependency_job_id":"261e51bf-5bb0-4876-9c2e-6e695417b981","html_url":"https://github.com/LFDT-web3j/web3j-evm","commit_stats":{"total_commits":197,"total_committers":15,"mean_commits":"13.133333333333333","dds":0.6954314720812182,"last_synced_commit":"627a6840ad1a87590f4c1269807ef004ee8cbe11"},"previous_names":["hyperledger-web3j/web3j-evm","web3j/web3j-evm","lfdt-web3j/web3j-evm"],"tags_count":46,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LFDT-web3j%2Fweb3j-evm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LFDT-web3j%2Fweb3j-evm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LFDT-web3j%2Fweb3j-evm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LFDT-web3j%2Fweb3j-evm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LFDT-web3j","download_url":"https://codeload.github.com/LFDT-web3j/web3j-evm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247478321,"owners_count":20945266,"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","evm-bytecode","solidity","web3j"],"created_at":"2025-03-22T13:04:00.864Z","updated_at":"2025-04-06T12:08:08.793Z","avatar_url":"https://github.com/LFDT-web3j.png","language":"Kotlin","funding_links":["https://github.com/sponsors/web3j"],"categories":[],"sub_categories":[],"readme":"# web3j-evm [![Build Status](https://github.com/web3j/web3j-evm/actions/workflows/build.yml/badge.svg)](https://github.com/web3j/web3j-evm/actions/workflows/build.yml)\n\nWeb3j-evm is an embedded freestanding Ethereum EVM and ledger running\nwithin a Java process, which can be used for unit and integration\ntesting your Web3j projects.\n\nAs everything is local and in-process, there is no need to start up\nexternal Ethereum nodes, which helps with easy of use and performance.\n\nEverything runs within the JVM process, including EVM bytecode, which\nallows for easy debugging of Solidity smart contracts.\n\n## Getting started\n\nOften you'd use this together with the [web3j-unit](https://github.com/web3j/web3j-unit)\nproject, allowing you to run unit and integration tests without the need\nto start an Ethereum node.\n\nIf you want to use this within our own project directly, you would need\nthe EVM dependency + a few external libraries. Have a look at\nthe [example project](https://github.com/web3j/web3j-evmexample) on how\nto do this.\n\n```groovy\nrepositories {\n    mavenCentral()\n}\n\ndependencies {\n    implementation \"org.web3j:core:4.13.0\"\n    implementation \"org.web3j:web3j-evm:4.13.0\"\n}\n```\n\nBelow is a simple demonstration of ETH transactions, contract deployment\nand simple contract interactions. Using the ConsoleDebugTracer, we're\nable to step through the EVM bytecode, inspect the stack and also see\nwhere in the related solidity code we're currently at.\n\nThe demo also show to how get started with the `EmbeddedWeb3jService`\nwhich is what you'd use when building your web3j instance.\n\nThis demo is available on the [example project](https://github.com/web3j/web3j-evmexample).\n\n![](https://raw.githubusercontent.com/web3j/evm/master/resources/web3j-evm-demo.gif)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flfdt-web3j%2Fweb3j-evm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flfdt-web3j%2Fweb3j-evm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flfdt-web3j%2Fweb3j-evm/lists"}