{"id":8543,"date":"2025-02-14T23:29:23","date_gmt":"2025-02-14T22:29:23","guid":{"rendered":"https:\/\/wsj-crypto.com\/?p=8543"},"modified":"2025-02-14T23:29:23","modified_gmt":"2025-02-14T22:29:23","slug":"exciting-developments-in-the-ethereum-javascript-ecosystem","status":"publish","type":"post","link":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/","title":{"rendered":"Exciting Developments in the Ethereum JavaScript Ecosystem"},"content":{"rendered":"<p><\/p>\n<div id=\"\">\n<p class=\"chakra-text css-gi02ar\">The past few months have been quite eventful for the Ethereum javascripters. To begin with, an outstanding hackathon was held in collaboration with IPFS. You can read Dan Finlay&#8217;s wonderful summary <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/media.consensys.net\/ipfs-ethereum-hackathon-results-d6b90b34286f#.25vwli7yd\"><span style=\"font-weight:400\">here<!-- --><\/span><\/a><span style=\"font-weight:400\">.<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><span style=\"font-weight:400\">Additionally, during this period, Aaron Davis (<!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/kumavis\">Kumavis<!-- --><\/a>) made significant advancements towards a JS light client by leveraging IPFS&#8217;s <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/libp2p\">libp2p<!-- --><\/a> to forge an in-browser mesh network and <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ipld\">IPLD<!-- --><\/a> to establish the merklization foundation. This endeavor will be crucial for developing pure in-browser clients. Furthermore, <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"http:\/\/github.com\/cdetrio\">Casey Detrio<!-- --><\/a> worked on a standard JSON RPC testing suite, which you can view the outcomes of <!-- --><\/span><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"http:\/\/cdetr.io\/eth-compat-table\/\"><span style=\"font-weight:400\">here<!-- --><\/span><\/a><span style=\"font-weight:400\">.<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><span style=\"font-weight:400\">Following the Seattle Meetup, we (<!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/axic\">Axic<!-- --><\/a> and <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/wanderer\">Wanderer<!-- --><\/a>) gathered for a week-long hackathon in Budapest to iron out details of <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ewasm\">ewasm<!-- --><\/a>. Meanwhile, in the JS realm, Fabian is conducting an extensive overhaul of Web3.js in preparation for the 1.0 release, while Nick Dodson has been occupied with <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ethjs\">ethjs<!-- --><\/a>. The remainder of this article will explore the diverse prospects that this technology could offer, along with delving into specific details regarding each unique project. All these projects are open source and welcome community engagement, so if you&#8217;re interested, feel free to check them out, introduce yourself, and submit a PR when you can!\u00a0<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<h2 class=\"chakra-heading css-1w54o5f\" id=\"ewasm\"><span style=\"font-weight:400\">EWASM<!-- --><\/span><\/h2>\n<p><!-- --><span style=\"font-weight:400\"><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ewasm\/design\">Ewasm\u2019s<!-- --><\/a> objective is to investigate and replace the EVM with <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"http:\/\/github.com\/webassembly\">WebAssembly<!-- --><\/a> and, as a secondary aim, to create a client for the existing system that can be efficiently JITed (or <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"http:\/\/github.com\/ewasm\/evm2wasm\">transcompiled<!-- --><\/a>) to WebAssembly.<!-- --><\/span><br \/>\n<!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><span style=\"font-weight:400\">A crucial part of assessing WebAssembly for blockchain applications will be to establish a test network, and this year, the Ewasm team will concentrate on bringing that test network into existence. The testnet initiative will:<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<ul role=\"list\" class=\"css-1onhfjo\">\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">allow practical engagement with ewasm for a broader audience<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">facilitate related projects, such as experiments with Casper, by providing a versatile platform for exploration<!-- --><\/span><\/li>\n<\/ul>\n<p><!-- --><span style=\"font-weight:400\">The ewasm track is dedicated to ewasm exploration and progress, while the client integration track will focus on developing the network and bringing robust and light clients into being. There are numerous shared components in these two tracks. The Ewasm project is divided into two primary aspects: the <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"http:\/\/github.com\/ewasm\/ewasm-kernel\">Kernel Layer<!-- --><\/a>, which manages IPC and controls the state, and the core VM. This structure should allow us to use the same framework for distinct VM implementations.<!-- --><\/span><br \/>\n<!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><span style=\"font-weight:400\">To summarize, the key tasks for ewasm include:<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<ul role=\"list\" class=\"css-1onhfjo\">\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Establish an ewasm test network<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Create a reusable \u201ckernel\u201d module<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Revamp ethereumjs-vm<!-- --><\/span><br \/>\n<!-- --><\/p>\n<ul role=\"list\" class=\"css-1onhfjo\">\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Utilize ewasm-kernel for message passing<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Implement the latest EIPs<!-- --><\/span><\/li>\n<\/ul>\n<p><!-- --><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Ewasm integration tools<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Solidity-ewasm integration (forthcoming effort for the solidity hackathon!)<!-- --><\/span><\/li>\n<\/ul>\n<p>We invite you to participate in the implementation initiative! We hold bi-weekly meetings on Tuesdays. Our communication platform is on Matrix at\u00a0<!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/riot.im\/app\/#\/room\/#prima:matrix.org\">prima:matrix.org<!-- --><\/a>\u00a0(or #ewasm on IRC or at <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/gitter.im\/ewasm\/Lobby\">gitter<!-- --><\/a>)<br \/>\n<!-- --><\/p>\n<h2 class=\"chakra-heading css-1w54o5f\" id=\"networking\"><span style=\"font-weight:400\">Networking<!-- --><\/span><\/h2>\n<p><!-- --><span style=\"font-weight:400\">There are various justifications for developing an Ethereum networking implementation in JS. Firstly, it would enable us to create a complete and lightweight Ethereum JS node. These light clients would operate both in a Node.js environment and within a browser. A necessity for an in-browser light client involves \u201cbridge\u201d nodes. These nodes might also serve as\u00a0<!-- --><\/span><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/www.webrtc-experiment.com\/docs\/WebRTC-Signaling-Concepts.html\"><span style=\"font-weight:400\">signaling servers<!-- --><\/span><\/a><span style=\"font-weight:400\"> for the <!-- --><\/span><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/webrtc.org\/\"><span style=\"font-weight:400\">webrtc<!-- --><\/span><\/a><span style=\"font-weight:400\"> network which the browser light clients would utilize to relay messages from the RLPx network to the WebRTC framework. This initiative is being led by Metamask employing IPFS\u2019s libp2p. Moreover, the\u00a0<!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ethereumjs\/ethereumjs-devp2p\">RLPx<!-- --><\/a> implementation was recently updated by <!-- --><\/span><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/fanatid\"><span style=\"font-weight:400\">fanatid<!-- --><\/span><\/a><span style=\"font-weight:400\">.<!-- --><\/span><br \/>\n<!-- --><\/p>\n<h2 class=\"chakra-heading css-1w54o5f\" id=\"ipld\"><span style=\"font-weight:400\">IPLD<!-- --><\/span><\/h2>\n<p><!-- --><span style=\"font-weight:400\">Ethereum\u2019s blockchain and on-chain statecan be interpreted as a diagram of hash-linked information. <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ipld\">IPFS\/IPLD<!-- --><\/a> is suggested as a universal framework to articulate and disseminate hash-linked information. Thus, we can view Ethereum as an application layer built on the hash-linked data availability platform. As a demonstration, <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/kumavis\">Kumavis<!-- --><\/a> executed <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ipld\/js-ipld-eth-block\">IPLD resolvers<!-- --><\/a> for the Ethereum data formats that indicate where hash-links are incorporated within the standard Ethereum formats (e.g., block and state trie node). This, combined with additional universal characteristics of libp2p (IPFS\u2019s generalized p2p networking framework), allows for the development of lightweight Ethereum clients centered around the consensus protocol and the state transition mechanism. A key benefit of this strategy is that the networking layer is transport-neutral and can be utilized in environments lacking access to tcp\/udp (such as web browsers) which standard Ethereum clients rely on. Currently, this initiative is still being researched. MetaMask aims to leverage this strategy to create a browser-compatible Ethereum light client through a secondary network, facilitated by hybrid nodes.<!-- --><\/span><br \/>\n<!-- --><\/p>\n<h2 class=\"chakra-heading css-1w54o5f\" id=\"web3js-10-incoming\"><span style=\"font-weight:400\">Web3.js 1.0 is on the way! <!-- --><\/span><\/h2>\n<p><!-- --><span style=\"font-weight:400\">A new iteration of web3.js is under development. It represents the most significant refactor of the codebase since the establishment of the popular Ethereum library. It\u00a0<!-- --><\/span><span style=\"font-weight:400\">will introduce numerous convenient features like confirmation and receipt events on transactions, an appealing subscription API, and checksum validations on address entries.<!-- --><\/span><br \/>\n<!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><span style=\"font-weight:400\">The API remains in the early stages of completion, but if you&#8217;re keen to explore, you can view the documentation\u00a0<!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"http:\/\/web3js.readthedocs.io\/en\/1.0\/getting-started.html\">here<!-- --><\/a>.<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\">The new iteration will also encompass several\u00a0major changes, but such updates are essential to ensure the new API is correctly configured and to phase out certain deprecated methods, including synchronous calls. Version 1.0 will exclusively support <!-- --><em class=\"chakra-text css-0\">promises<!-- --><\/em> and in specific scenarios \u201cPromiseEvents\u201d to better represent multiple events during a transaction&#8217;s execution. For those contemplating transitioning their applications to the new web3, a migration guide will be available upon release to facilitate the shift from 0.x.x smoothly.<!-- --><\/p>\n<p><!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><span style=\"font-weight:400\">In Mist, there will no longer be a default exposure of web3, as this promotes the undesirable habit of depending on the Mist-supplied web3, making breaking changes detrimental for dapps. Instead, there will be an \u201cethereumProvider\u201d, that libraries like web3 can utilize to communicate with the underlying node. Web3.js will automatically identify any provided provider and make it accessible in its API for seamless instantiation.<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><span style=\"font-weight:400\">For those keen to try it immediately, check out the 1.0 branch in the <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ethereum\/web3.js\/tree\/1.0\">web3.js repository<!-- --><\/a><\/span><span style=\"font-weight:400\">. Just be cautious, there may be unforeseen issues!<!-- --><\/span><\/p>\n<p><!-- --><\/p>\n<h2 class=\"chakra-heading css-1w54o5f\" id=\"ethjs\"><span style=\"font-weight:400\">Ethjs<!-- --><\/span><\/h2>\n<p><!-- --><span style=\"font-weight:400\"><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ethjs\">Ethjs<!-- --><\/a> is a newly optimized, lightweight JavaScript utility for <!-- --><\/span><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/www.ethereum.org\/\"><span style=\"font-weight:400\">Ethereum<!-- --><\/span><\/a><span style=\"font-weight:400\">\u00a0designed to work with the JSON RPC, much like web3.js but more streamlined, asynchronous only, and utilizing <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/indutny\/bn.js\/\">bn.js<!-- --><\/a>. Presently, ongoing efforts include:<!-- --><\/span><br \/>\n<!-- --><\/p>\n<ul role=\"list\" class=\"css-1onhfjo\">\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Integrating ABI methods for log decoding in ethjs-abi<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Corrected a minor decoding issue in ethjs-abi (addressing 0x addresses)<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Merged the new schema for personal recovery and signing ethjs-schema<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Seeking assistance to make ethjs-filter stateless (ready for Infura)<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Bug resolution in ethjs-contract<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Documentation enhancements throughout<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Upcoming release of ethjs version 0.2.7!<!-- --><\/span><\/li>\n<\/ul>\n<p><!-- --><\/p>\n<h2 class=\"chakra-heading css-1w54o5f\" id=\"testrpc\"><span style=\"font-weight:400\">TestRPC<!-- --><\/span><\/h2>\n<p><!-- --><span style=\"font-weight:400\">Currently working on the 4.0.0 release! This version will feature:<!-- --><\/span><br \/>\n<!-- --><\/p>\n<ul role=\"list\" class=\"css-1onhfjo\">\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Data persistence. You can now establish a test chain and maintain that data, akin to any other private chain!<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Refinement of data storage in memory, which should significantly alleviate memory concerns. Although there may be a minor performance impact, which would mostly be unnoticeable unless many transactions are executed, it will greatly enhance stability.<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Bundling for browser use (provider only).<!-- --><\/span><\/li>\n<li class=\"css-cvpopp\"><span style=\"font-weight:400\">Simplified installations on Windows, and potentially other platforms.<!-- --><\/span><\/li>\n<\/ul>\n<p>We will transition the TestRPC to the <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"http:\/\/github.com\/trufflesuite\">Truffle GitHub organization<!-- --><\/a>\u00a0since it is primarily managed by Truffle developers. There are substantial new additions to TestRPC on the horizon. Additionally, we are dedicating considerable effort to unify documentation and branding under the Truffle identity. Any thoughts regarding this transition would be valued. Finally, the TestRPC is in need of a new name that reflects its full capabilities. If you have suggestions, please share!<br \/>\n<!-- --><br \/>\nThe Ethereum JS community is a thrilling and remarkable sphere to engage with. There are numerous impressive projects underway. If you&#8217;re interested in integrating, we have weekly Friday meetings at 3:00 EST \/ 10:00 PST \/ 18:00 UTC. Keep an eye on <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/gitter.im\/ethereum\/ethereumjs-lib\">our Gitter channel<!-- --><\/a> for the chat link. Furthermore, we are organizing an <!-- --><a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-ug8vf0\" href=\"https:\/\/github.com\/ethereumjs\/organization\/issues\/9\">upcoming hackathon<!-- --><\/a>.\u00a0Do let us know if you are interested.<br \/>\n<!-- --><\/p>\n<hr aria-orientation=\"horizontal\" class=\"chakra-divider css-1e6gg7n\"\/>\n<!-- --><\/p>\n<p class=\"chakra-text css-gi02ar\"><strong>ADDENDUM<!-- --><\/strong>\u00a0[Mar. 22, 2017]: Please note that certain projects mentioned in this post are not directly endorsed by the Ethereum Foundation but have been included due to their relevance to the broader Ethereum JS ecosystem update by the author.<!-- --><\/p>\n<\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/blog.ethereum.org\/en\/2017\/03\/21\/ethereum-js-ecosystem-updates\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The past few months have been quite eventful for the Ethereum javascripters. To begin with, an outstanding hackathon was held in collaboration with IPFS. You can read Dan Finlay&#8217;s wonderful summary here. Additionally, during this period, Aaron Davis (Kumavis) made significant advancements towards a JS light client by leveraging IPFS&#8217;s libp2p to forge an in-browser<\/p>\n","protected":false},"author":3,"featured_media":8282,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[23],"tags":[1291],"class_list":["post-8543","post","type-post","status-publish","format-standard","has-post-thumbnail","category-ethereum","tag-return-a-list-of-comma-separated-tags-from-this-title-ethereum-js-ecosystem-updates-ethereum-foundation-blog"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Exciting Developments in the Ethereum JavaScript Ecosystem - WSJ-Crypto<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Exciting Developments in the Ethereum JavaScript Ecosystem - WSJ-Crypto\" \/>\n<meta property=\"og:description\" content=\"The past few months have been quite eventful for the Ethereum javascripters. To begin with, an outstanding hackathon was held in collaboration with IPFS. You can read Dan Finlay&#8217;s wonderful summary here. Additionally, during this period, Aaron Davis (Kumavis) made significant advancements towards a JS light client by leveraging IPFS&#8217;s libp2p to forge an in-browser\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/\" \/>\n<meta property=\"og:site_name\" content=\"WSJ-Crypto\" \/>\n<meta property=\"article:published_time\" content=\"2025-02-14T22:29:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"2100\" \/>\n\t<meta property=\"og:image:height\" content=\"900\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"wsjcrypto\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"wsjcrypto\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/\",\"url\":\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/\",\"name\":\"Exciting Developments in the Ethereum JavaScript Ecosystem - WSJ-Crypto\",\"isPartOf\":{\"@id\":\"https:\/\/wsj-crypto.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg\",\"datePublished\":\"2025-02-14T22:29:23+00:00\",\"author\":{\"@id\":\"https:\/\/wsj-crypto.com\/#\/schema\/person\/88a93723b30416db1a352d5a0096c4a7\"},\"breadcrumb\":{\"@id\":\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#primaryimage\",\"url\":\"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg\",\"contentUrl\":\"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg\",\"width\":2100,\"height\":900},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/wsj-crypto.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Exciting Developments in the Ethereum JavaScript Ecosystem\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wsj-crypto.com\/#website\",\"url\":\"https:\/\/wsj-crypto.com\/\",\"name\":\"WSJ-Crypto\",\"description\":\"Just Another Crypto News Website\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wsj-crypto.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/wsj-crypto.com\/#\/schema\/person\/88a93723b30416db1a352d5a0096c4a7\",\"name\":\"wsjcrypto\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/wsj-crypto.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/86fe8af82ea089646d6639ca2f87e0243d8688d957bd8e3ec22ec3c457cc16d4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/86fe8af82ea089646d6639ca2f87e0243d8688d957bd8e3ec22ec3c457cc16d4?s=96&d=mm&r=g\",\"caption\":\"wsjcrypto\"},\"url\":\"https:\/\/wsj-crypto.com\/index.php\/author\/wsjcrypto\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Exciting Developments in the Ethereum JavaScript Ecosystem - WSJ-Crypto","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/","og_locale":"it_IT","og_type":"article","og_title":"Exciting Developments in the Ethereum JavaScript Ecosystem - WSJ-Crypto","og_description":"The past few months have been quite eventful for the Ethereum javascripters. To begin with, an outstanding hackathon was held in collaboration with IPFS. You can read Dan Finlay&#8217;s wonderful summary here. Additionally, during this period, Aaron Davis (Kumavis) made significant advancements towards a JS light client by leveraging IPFS&#8217;s libp2p to forge an in-browser","og_url":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/","og_site_name":"WSJ-Crypto","article_published_time":"2025-02-14T22:29:23+00:00","og_image":[{"width":2100,"height":900,"url":"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg","type":"image\/jpeg"}],"author":"wsjcrypto","twitter_card":"summary_large_image","twitter_misc":{"Scritto da":"wsjcrypto","Tempo di lettura stimato":"6 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/","url":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/","name":"Exciting Developments in the Ethereum JavaScript Ecosystem - WSJ-Crypto","isPartOf":{"@id":"https:\/\/wsj-crypto.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#primaryimage"},"image":{"@id":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#primaryimage"},"thumbnailUrl":"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg","datePublished":"2025-02-14T22:29:23+00:00","author":{"@id":"https:\/\/wsj-crypto.com\/#\/schema\/person\/88a93723b30416db1a352d5a0096c4a7"},"breadcrumb":{"@id":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#primaryimage","url":"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg","contentUrl":"https:\/\/wsj-crypto.com\/wp-content\/uploads\/2025\/02\/eth-org.jpeg","width":2100,"height":900},{"@type":"BreadcrumbList","@id":"https:\/\/wsj-crypto.com\/index.php\/2025\/02\/14\/exciting-developments-in-the-ethereum-javascript-ecosystem\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wsj-crypto.com\/"},{"@type":"ListItem","position":2,"name":"Exciting Developments in the Ethereum JavaScript Ecosystem"}]},{"@type":"WebSite","@id":"https:\/\/wsj-crypto.com\/#website","url":"https:\/\/wsj-crypto.com\/","name":"WSJ-Crypto","description":"Just Another Crypto News Website","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wsj-crypto.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Person","@id":"https:\/\/wsj-crypto.com\/#\/schema\/person\/88a93723b30416db1a352d5a0096c4a7","name":"wsjcrypto","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/wsj-crypto.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/86fe8af82ea089646d6639ca2f87e0243d8688d957bd8e3ec22ec3c457cc16d4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/86fe8af82ea089646d6639ca2f87e0243d8688d957bd8e3ec22ec3c457cc16d4?s=96&d=mm&r=g","caption":"wsjcrypto"},"url":"https:\/\/wsj-crypto.com\/index.php\/author\/wsjcrypto\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/posts\/8543","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/comments?post=8543"}],"version-history":[{"count":2,"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/posts\/8543\/revisions"}],"predecessor-version":[{"id":8545,"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/posts\/8543\/revisions\/8545"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/media\/8282"}],"wp:attachment":[{"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/media?parent=8543"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/categories?post=8543"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wsj-crypto.com\/index.php\/wp-json\/wp\/v2\/tags?post=8543"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}