<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Alchemy - Medium]]></title>
        <description><![CDATA[The World’s Most Powerful Blockchain Developer Platform - Medium]]></description>
        <link>https://medium.com/alchemy-api?source=rss----132bfc7f817b---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>Alchemy - Medium</title>
            <link>https://medium.com/alchemy-api?source=rss----132bfc7f817b---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 30 May 2026 09:00:46 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/alchemy-api" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Why NFTs are more than just JPEGs]]></title>
            <link>https://medium.com/alchemy-api/why-nfts-are-more-than-just-jpegs-ddc4367ac67d?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/ddc4367ac67d</guid>
            <dc:creator><![CDATA[Deric Cheng]]></dc:creator>
            <pubDate>Wed, 24 Nov 2021 19:03:03 GMT</pubDate>
            <atom:updated>2021-11-24T19:03:01.027Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*HU6qhkzRhQSheJRM" /></figure><p>As the world of Web3 continues to take shape, non-fungible-tokens, or NFTs, are playing a critical role in the mainstream adoption of cryptocurrency and helping shape the future of decentralization, ownership, finance, and more.</p><p>Though some believe NFTs to be nothing more than “JPEGs,” the reality is that innovation within the NFT ecosystem goes far beyond art or even collectibles. Appealing to our innate desire for social status and longing for community, NFTs are the building blocks of a new way to interact both online and in the physical world.</p><p>In this article, we’ll explore the many unique ways NFTs have and will continue to shape our world and, more specifically, what it means for building in the Web3 era for developers and technologists.</p><h3>More than just art: 3 unique use cases of NFTs</h3><h4>1. NFTs have a permanent, public history on the blockchain</h4><p>NFTs live on a variety of blockchains, which are open digital ledgers that are accessible to all. As a result, it’s incredibly easy to understand the history of a particular NFT using a blockchain explorer such as <a href="https://etherscan.io/">Etherscan</a>. When was it minted? Who was involved in the last sale?</p><p>While the majority of NFTs currently live on the Ethereum blockchain, other chains such as <a href="https://blog.alchemy.com/blog/ethereum-vs-flow">Flow</a> and Solana have also built popular NFT ecosystems as well.</p><p>Ultimately, the transparency of the blockchain can help reduce fraud and theft given that everything can be viewed in the public square.</p><figure><img alt="An image of alien CryptoPunk 3100" src="https://cdn-images-1.medium.com/max/1024/0*6eEnkbs009S5G7u2" /><figcaption>The highest known sale of a CryptoPunk (4,200 ETH) currently belongs to CryptoPunk 3100 (<a href="https://www.larvalabs.com/cryptopunks/details/3100#">Image source)</a></figcaption></figure><figure><img alt="List of bids, offers, and sales of CryptoPunk3100" src="https://cdn-images-1.medium.com/max/1024/0*fQNl2lvJtimPZaX_" /><figcaption>A public look at bids, offers, and sales of CryptoPunk 3100 (<a href="https://www.larvalabs.com/cryptopunks/details/3100#">Image source</a>)</figcaption></figure><p>While the often cited statistic that nearly <a href="http://www.mutualart.com/ExternalArticle/The-secret-lives-of-works-of-art--What-p/D7AA63DB3ECF5D64?utm_source=mutualart&amp;utm_medium=referral">10% of art is fake may be exaggerated</a>, misattributed art and collectibles are a natural part of the art ecosystem. Would you be able to tell if a version of the Mona Lisa was fake?</p><p>How could you prove you’re the legitimate owner of a rare baseball card or Beanie baby for example? With NFTs living on public blockchains, there is an open and transparent process in which to determine who is the owner of what.</p><p>As Kyle Chayka wrote in the <a href="https://www.newyorker.com/tech/annals-of-technology/how-beeple-crashed-the-art-world">New Yorker</a>, “Imagine digital Beanie Babies, but with only one existing copy of each. For art works, the N.F.T. format functions a little like a museum label noting the piece’s provenance — a proprietary stamp, attached to digital pieces that can still circulate freely across the Internet.”</p><p>Just as downloading a song online without paying for it doesn’t give you ownership, downloading an image on your desktop doesn’t give you ownership rights of an image, video, or any other piece of media. A public viewable history of ownership helps strengthen the value of NFTs.</p><h4>2. NFTs have multiple novel use cases</h4><p>Beyond just art and profile pictures, NFTs have the ability to provide additional value to holders with many creators pushing the boundaries of what’s possible in a short period of time.</p><p>From collectibles, to being eligible for future airdrops, to even getting access to real world venues , NFTs allow creators and collectors to engage and interact in ways that weren’t necessarily possible before.</p><p>In the music industry, artist 3lau recently raised eyebrows when he announced that he would be giving away royalties to his fans based on the performance of his new songs.</p><p>As<a href="https://www.rollingstone.com/pro/news/3lau-streaming-rights-royalties-nft-crypto-marketplace-1230638/"> Rolling Stone</a> shared in October: “He’s going to give away 50 percent of its streaming rights to 333 fans. The novel business play, the DJ/producer explains in an exclusive conversation with Rolling Stone, is designed to showcase the capabilities of Royal — a still-incomplete blockchain-powered marketplace he hustled to put together following 2021’s big NFT boom.”</p><p>Another unique and powerful use case for NFTs? Events and concerts.</p><p>The recent <a href="https://boredapeyachtclub.com/">Bored Ape Yacht club event</a>, which was considered by most to be a massive success, was accessible through owning a Bored Ape or being one of the select few invited to the event. Owning a Bored Ape not only got you into an amazing event, but also exclusive access to network and connect with others who also owned a Bored Ape.</p><figure><img alt="Image of Bored Ape Yacht club event with people and stage for music." src="https://cdn-images-1.medium.com/max/1024/0*ZVRM-WTTzhN9G6vt" /><figcaption>The Bored Ape Yacht club event in NYC. (<a href="https://twitter.com/_jeffnicholas_/status/1456092262828494851/photo/1">Image source</a>)</figcaption></figure><p>The event included many surprise guests and A-list celebrities which was a hit among the BAYC holders.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*VojvjXpVXP2aUEaK" /></figure><p>In many cases, NFTs offer access to events and individuals that otherwise would have been inaccessible before.</p><p>For example, several lucky NBA Top Shot card holders have r<a href="https://www.si.com/nba/2021/03/17/nba-top-shot-crypto-daily-cover">eceived tickets to games and signed worn jerseys</a>. Multiple NBA stars have also engaged directly with NBA Top Shot holders to trade for a particular card as well. For NBA fans specifically, it’s clear how this line of direct interaction can be massive for the sport of professional basketball.</p><p>Another NFT project “Lost Boy” was designed to raise funds for mental health and provide a safe community for those struggling in these trying times. Owning a “Lost Boy” provides holders with their own unique music track, and access to additional perks as well.</p><figure><img alt="The stated Lost Boy mission of the NFT project." src="https://cdn-images-1.medium.com/max/1024/0*WzrtTzyAaI7bvSa7" /><figcaption>The Lost Boy mission. (<a href="https://lostboy.io/">Image Source</a>)</figcaption></figure><p>As the adoption of NFTs continues to become more mainstream, there will be further ways in which holding can add value to the lives of those who invest in them.</p><h4>3. NFTs benefit the creator</h4><p>In addition to providing utility to the holders, NFTs also present a unique opportunity for creators to thrive as well.</p><p>Using NFT marketplaces such as Opensea and likes of smart contracts, creators are able to earn royalties on their work based on each time an NFT sells, generating consistent revenue and income for creators in perpetuity. Developers of popular NFT projects also stand to benefit long term as opposed to looking to make a quick buck.</p><p>The direct access to fans who feel bought into the success of a project gives creators the ability to receive feedback from supporters. Artists, photographers, and creators who may not have had the opportunity to showcase their work at a global scale have been thrust into the spotlight largely as the results of the NFT community.</p><p>18 year old artist, Victor Langlois aka (FEWOCiOUS) is one of the most successful NFT artists.</p><p>As <a href="https://www.esquire.com/entertainment/a36878931/fewocious-crypto-nft-art-christies-profile/">Esquire shared back</a> in June, “Since breaking into the NFT market in 2020, Langlois has earned just under $18 million. His digital art work “The Everlasting Beautiful” sold for a staggering $550,000. Now he is the youngest artist ever to be featured by Christie’s and the first to crash its site — two incredible records that he reacted to in perfect, teenage fashion on a recent Zoom call: “It’s like… woah.” Not bad for an 18 year old.</p><p>NFTs have also helped Issac “Drift” Wright, a former paratrooper who quickly rose to prominence through his daring photography all over the globe. His following on social media and selling his photos as NFTs completely changed his life and he remains actively engaged in the NFT ecosystem.</p><figure><img alt="Issac “Drift” Wright on a tall building." src="https://cdn-images-1.medium.com/max/1024/0*U6ZFHbxR92ozemC4" /><figcaption>Issac “Drift” Wright posing for one of his daring photographs. (<a href="https://www.instagram.com/p/CMf3RTXDo5P/">Image source</a>)</figcaption></figure><p>“Isaac Wright is an honorably retired Army special operations veteran of six years who began shooting photography to cope with mental illness, specifically PTSD and depression. His work involves capturing the world from never before seen perspectives” says his <a href="https://driftershoots.com/about/">website</a>.</p><p>Photographer Justin Aversano felt the power of the NFT community who helped his Twin Flames project reach audiences around the world and ultimately land in the Christies auction house.</p><p>As reported by <a href="https://decrypt.co/82730/how-nft-photo-sensation-twin-flames-landed-at-christies">Decrypt</a>:</p><p>“Conceived as a tribute to Aversano’s twin brother, who passed away in utero, Twin Flames is a collection spanning 100 photos, each of a different set of twins.</p><p>Taken around the world between 2017 and 2018, the photos showcase a wide array of subjects in the location and apparel of their respective choosing, all united by the shared attribute of being twins.”</p><p>Originally hoping to sell the project as a whole, after connecting with those involved in cryptocurrency and NFT he reconsidered.</p><figure><img alt="Image of Twin Flames photograph" src="https://cdn-images-1.medium.com/max/1024/0*TWYkaauJrybWrcbr" /><figcaption>“Twin Flames #83, Bahareh &amp; Farzaneh” by Justin Aversano (<a href="https://decrypt.co/82730/how-nft-photo-sensation-twin-flames-landed-at-christies">Image source)</a></figcaption></figure><p>“In 2021, Justin connected with GmoneyNFT and some of the folks involved in the CryptoPunks movement, and they encouraged him to let go of the attachment to the project as one whole. Justin tells me that he realized he could allow the project to “exist centralized in the physical world, decentralized in the digital world.” And thus, the plan to mint the images as separate NFTs was born” says <a href="https://www.one37pm.com/nft/art/justin-aversano-twin-flames-nft-photography">One37pm.</a></p><p>Though still in their infancy, NFTs are allowing creators all around the globe to connect with their supporters at scale and in many cases make a living doing what they love. As the creator economy grows, so too will the many use cases of NFTs.</p><h3>How to Get Involved</h3><p>With innovation within NFTs only just beginning, now is the time to get involved! At Alchemy, one of our primary goals is to help educate blockchain developers on the tooling available in the space, and to provide resources to help you become a better developer.</p><p>Here’s a few tutorials that might help you get started minting your own NFTs:</p><blockquote><a href="https://blog.alchemy.com/blog/how-to-create-an-nft">How to Build an NFT</a></blockquote><blockquote><a href="https://blog.alchemy.com/blog/nft-minter-tutorial-how-to-create-a-full-stack-dapp">NFT Minter: How to Create a Full Stack DApp</a></blockquote><blockquote><a href="https://blog.alchemy.com/blog/how-to-view-your-nft-in-your-mobile-wallet">How to View Your NFT in Your Mobile Wallet</a></blockquote><p>Additionally, we’ve just released an NFT API that will help you fetch this metadata without relying on the limited toolset available to you via web3.js or ethers.js!</p><blockquote><a href="https://www.alchemy.com/nft-api">Alchemy’s NFT API</a></blockquote><p>And finally, we’re always available to help 24/7 on our <a href="http://www.alchemy.com/discord">Alchemy Discord</a>. Stop by and say hi — we’d love to help you on your journey to becoming a full-fledged blockchain developer!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ddc4367ac67d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/why-nfts-are-more-than-just-jpegs-ddc4367ac67d">Why NFTs are more than just JPEGs</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Your Guide to ERC-1155: Comparing ERC-721 to ERC-1155]]></title>
            <link>https://medium.com/alchemy-api/your-guide-to-erc-1155-comparing-erc-721-to-erc-1155-cbf624a34657?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/cbf624a34657</guid>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[cryptocurrency]]></category>
            <category><![CDATA[erc721]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[blockchain-development]]></category>
            <dc:creator><![CDATA[Deric Cheng]]></dc:creator>
            <pubDate>Wed, 17 Nov 2021 18:12:14 GMT</pubDate>
            <atom:updated>2021-11-17T18:12:14.394Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*Ol01ptehu2t3u4BG" /></figure><p>The arrival of new applications on Ethereum has led to development teams designing new kinds of token standards. In its early years, the <a href="https://ethereum.org/en/developers/docs/standards/tokens/erc-20/">ERC-20 token standard</a>, which defines how a traditional token such as DAI or UNI functions, dominated the market. This approach to crypto treats all assets as completely interchangeable (known as fungibility), functioning conceptually like a currency such as USD.</p><p>However, in the past 18 months NFTs have captured the market’s attention, which rely on a newer standard termed ERC-721. This standard allows for the creation of one-off, custom tokens: for instance, a collectible trading card, or <a href="https://www.larvalabs.com/cryptopunks">personal avatar that is totally unique</a> and can’t be replicated.</p><p>Lately, attention in the crypto market has been moving towards another standard, which has a newly revised set of properties — the ERC-1155 token standard. This debate of ERC-721 vs. ERC-1155 can perplex teams, and it’s worth knowing when to employ each. Though ERC-1155 is a newer standard and has some technical benefits that may give it an edge in the future, it’s not a strict upgrade and differs in certain ways.</p><h3>A Brief History of NFTs</h3><p>Why has this choice between the two token standards become such a pain point? After all, many NFT projects today continue to use the ERC-721 standard.</p><p>Ethereum’s ecosystem initially had little need for a new token standard. After all, most were eager to use the highly praised smart contract feature, which set Ethereum apart in the early days. Creating a blockchain network with an accompanying ERC-20 token was comparatively easy and resulted in the birth of numerous new projects, such as <a href="https://crypto.com/">Crypto.com</a> and <a href="https://www.circle.com/en/usdc">Circle’s USDC</a>.</p><p>But the Ethereum ecosystem experienced a seismic shift when developers saw the potential for other use cases with its smart contract feature. Unlike fungible tokens which are fully interchangeable and function similar to a dollar bill, non-fungible tokens that uniquely identified each token allowed for a swathe of new applications.</p><p>Both token standards have their applications, and it’s worth knowing their unique properties to help decide which to implement in your project.</p><h3>What Is the ERC-721 Token Standard?</h3><p>The ERC-721 token standard kicked off the NFT craze. It was the first of its kind, and consequently, the most popular standard for creating these unique tokens. NFTs have a long history, but along with the ERC-721 token standard, they only truly came to the forefront with <a href="https://www.alchemy.com/case-studies/dapper">the CryptoKitties project</a>.</p><p>Dapper Labs, the company behind CryptoKitties, introduced ERC-721 <a href="https://eips.ethereum.org/EIPS/eip-721">via an Ethereum Improvement Proposal</a> (EIP) in 2017. CryptoKitties are a set of collectible, randomly generated kittens that can be individually traded, similar to Tamagotchis or Pokemon. Each CryptoKitty is 100% unique — they can’t be replicated, and they have a transaction history letting the public know exactly who has owned the kitty over its entire lifespan.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*7JsnvzOPPNeJPssk" /><figcaption>A limited edition CryptoKitty partnering with Operation Jairo to fund sea turtle conservation.</figcaption></figure><p>In addition to being completely, unique, here are some of the additional feature specifications of ERC-721:</p><ul><li>It allows you to transfer NFTs between accounts, allowing NFTs to be traded for other currencies.</li><li>It allows you to identify the total supply of a set of NFTs on the network.</li><li>It allows you to query for the owners of a specific asset.</li></ul><p>Just four years later, NFTs based on ERC-721 have taken over the crypto ecosystem. Projects range from blockchain ownership of <a href="https://www.dexerto.com/tech/top-10-most-expensive-nfts-ever-sold-1670505/">original copies of digital art </a>sellings in the tens of millions, to<a href="https://www.rollingstone.com/culture/culture-news/bayc-bored-ape-yacht-club-nft-interview-1250461/"> unique avatars that have become a public membership into an exclusive club</a>, to <a href="https://www.entrepreneur.com/article/382816#:~:text=NFTs%20for%20fractional%20property%20ownership&amp;text=NFTs%20can%20be%20used%20to,issuing%20tokens%20on%20the%20blockchain.">fractional ownership of private land</a>.</p><h3>What Is the ERC-1155 Token Standard?</h3><p>The <a href="https://github.com/ethereum/eips/issues/1155">ERC-1155 token standard</a> was developed by the team behind the <a href="https://enjin.io/">Enjin project</a>, which focuses on blockchain-based solutions for games. Enjin introduced the token standard in 2019, and it is a middle ground between the ERC-20 standard and the ERC-721 standard.</p><p>Enjin identified a number of challenges associated with the comparatively limited ERC-721 standard — in particular, the inability to conduct batch transfers.</p><p>Unlike ERC-721, if one were to transfer multiple NFTs, each NFT would require a single transaction — because each NFT is represented by a single smart contract. This results in exorbitantly high transaction costs when minting or trading individual NFTs. The ERC-1155 allows batch transfers — multiple assets on a single smart contract — that result in all tokens being transferred at once with, leading to a less congested network and consequently lower gas costs. For example, when a user wants to sell a thousand items in a game to another user, he or she can use the batch token transfer of ERC-1155 to send them all in one go 💸.</p><p>Another major feature of this multi-token standard is it supports both fungible and non-fungible tokens — because of its ability to support multiple states — on the same address and contract. In practical terms, this means you can make in-game payments using a fungible token on that address and simultaneously transfer unique NFT assets as well.</p><p>An additional feature of ERC-1155 is that it supports the creation of semi-fungible tokens. SFTs trade as fungible tokens, but once redeemed, they convert into NFTs. For example, a ticket to a concert prior to the event may be considered a fungible asset — any ticket will give you identical GA entry into the concert. However, after the concert, the ticket loses its tradeable value and becomes a unique item of memorabilia. SFTs enable that type of functionality directly into the code of the ticket itself.</p><p>Lastly, token transfers on this standard can be reverted in the event of a mistake. On the ERC-721 standard, you can’t reclaim assets if they are sent to the wrong address. However, ERC-1155 contains a function that addresses this. The <a href="https://eips.ethereum.org/EIPS/eip-1155#safe-transfer-rules">safe transfer function</a> and a number of other rules are in place to prevent exploitation.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*PSJad_TXXxOnxo_e" /><figcaption>A piece of artwork by Beeple, a prominent NFT artist.</figcaption></figure><h3>ERC-721 vs. ERC-1155</h3><p>The ERC-1155 token standard could see much more prominent use than the ERC-721 token standard in the near future, thanks to its additional features. Both allow you to be able to mint new NFTs, but there are some key differences:</p><ul><li>ERC-1155 permits the creation of both <strong>semi-fungible tokens and non-fungible tokens</strong>, whereas ERC-721 permits only the latter.</li><li>In ERC-1155, smart contracts are linked to multiple URIs and <strong>do not store additional metadata</strong> (such as file names). In comparison, ERC-721 only supports static metadata stored directly on the smart contract for each token ID,, increasing deployment costs and limiting flexibility.</li><li>ERC-1155’s smart contracts support <strong>an infinite number of tokens</strong>, whereas ERC-721 needs a new smart contract for each type of token.</li><li>ERC-1155 also allows <strong>batch transfers of tokens</strong>, which can reduce transaction costs and times. With ERC-721, if you want to send multiple tokens, they happen individually.</li></ul><h3>Building Towards the Future of NFTs</h3><p>If you’re looking for additional resources towards learning about NFTs or building your own, we’ve got you covered! At Alchemy, one of our primary goals is to help educate blockchain developers on the tooling available in the space, and to provide resources to help you become a better developer. Here’s a few tutorials that might help you get started minting your own NFTs:</p><blockquote><a href="https://blog.alchemy.com/blog/how-to-create-an-nft">How to Build an NFT</a></blockquote><blockquote><a href="https://blog.alchemy.com/blog/nft-minter-tutorial-how-to-create-a-full-stack-dapp">NFT Minter: How to Create a Full Stack DApp</a></blockquote><blockquote><a href="https://blog.alchemy.com/blog/how-to-view-your-nft-in-your-mobile-wallet">How to View Your NFT in Your Mobile Wallet</a></blockquote><p>Additionally, we’ve just released an NFT API that will help you fetch this metadata without relying on the limited toolset available to you via web3.js or ethers.js! Sign up for the waitlist below.</p><blockquote><a href="https://www.alchemy.com/nft-api">Alchemy’s NFT API</a></blockquote><p>And finally, we’re always available to help 24/7 on our <a href="http://www.alchemy.com/discord">Alchemy Discord</a>. Stop by and say hi — we’d love to help you on your journey to becoming a full-fledged blockchain developer!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cbf624a34657" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/your-guide-to-erc-1155-comparing-erc-721-to-erc-1155-cbf624a34657">Your Guide to ERC-1155: Comparing ERC-721 to ERC-1155</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Use Alchemy’s Application Monitoring Tools]]></title>
            <link>https://medium.com/alchemy-api/how-to-use-alchemys-application-monitoring-tools-266102feede5?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/266102feede5</guid>
            <category><![CDATA[development]]></category>
            <category><![CDATA[cryptocurrency]]></category>
            <category><![CDATA[blockchain-development]]></category>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[application-monitoring]]></category>
            <dc:creator><![CDATA[Deric Cheng]]></dc:creator>
            <pubDate>Fri, 05 Nov 2021 18:58:33 GMT</pubDate>
            <atom:updated>2021-11-06T00:35:24.853Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SJQJ4lCdF4zaQTdrkUpvzA.jpeg" /></figure><p>So you’ve read our article about using nodes to communicate with the blockchain and <a href="https://blog.alchemy.com/blog/what-is-a-node-provider">why you might need a node provider</a> such as Alchemy as opposed to running your own nodes!</p><p>What we haven’t fully discussed though, are the additional benefits you get when using us as compared to your average node provider.</p><p>In particular, one of the main reasons we have 70% of the top apps in the Ethereum ecosystem is because we provide a whole suite of developer-friendly tools that make life waaaay easier as a developer.</p><p>These tools cover a ton of bases, from helping you build your app faster, to analyzing requests and responses that are sent through our node endpoints, to monitoring the health of your traffic and users in real-time! If you’d like to try them out instead of reading this article, <a href="https://www.dashboard.alchemyapi.io/">you can play with them here.</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*FgeShN506xzFp3sg" /><figcaption>The home page for our dashboard!</figcaption></figure><p>Even if you don’t need this dashboard early on in the development process, trust us — once you push your dApp out publicly and other people start sending requests through your infra, these tools will be a lifesaver when it comes to debugging.</p><h3>The Alchemy Explorer: Viewing Your Historical Requests</h3><p>When you send a single request to the blockchain, you’ll typically get a response back immediately from your node with the answer to your query. But what do you do in the following cases?</p><ul><li>Some of your requests are malformed, and you’d like to see all failing requests in the past day to determine a pattern (e.g. finding all responses with a -32000 node error code).</li><li>You’ve pushed your dApp to production, and users are sending requests that trigger blockchain requests in your infrastructure. They start reporting that certain transactions are failing to make it through to the blockchain, and you’d like to debug their transaction send requests.</li></ul><p>Without a tool to help you manage this process, you’d be trawling through pages of logs stored in zipped text files, sorting these files by time, and using grep statements to try to isolate the information you need. Archaic, we know — that’s where the Request Explorer comes in!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ixWn2myKkkSB20DM" /><figcaption>Previously on “Debugging Your JSON-RPC API Request”</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*5WJ9FeSocV48lZrg" /><figcaption>Your new, improved request debugger!</figcaption></figure><p>Our Explorer allows you to search through historical requests and responses sent through our infrastructure anywhere from 1 second to 10 days ago! No more log-hunting — you’ve got modern technology at your fingertips.</p><p>On these requests, you can filter the queries by all sorts of parameters, such as the type of method, HTTP responses, or node-specific errors! You can see requests based on their timestamps, the duration of the request, and many more options.</p><p>Once you’ve found a request that catches your eye, there’s a few things you might typically want to do:</p><ol><li>Search for similar requests in the logs to determine the prevalence of a particular issue.</li><li>Attempt to make that identical request again, to verify if it’s still failing.</li></ol><p>For the first, we’ve got a handy little button “Explore Similar” next to each request that allows you to perform a new search with matching parameters! For the second, this is a great lead into:</p><h3>The Alchemy Composer: Testing Requests from the Browser</h3><p>Do you ever feel like it takes way longer to manually make one-off API requests than it needs to? Believe me, we feel the same way. Whether you’re meticulously writing curl requests in the terminal or looking up a Postman library that you misnamed two months ago — it’s always just a little annoying.</p><p>The Alchemy Composer essentially allows you to make one-off blockchain requests via a browser-based GUI, and get the response back immediately on the same webpage.</p><p>Instead of</p><ul><li>writing curl requests and selecting an endpoint, you simply pick the blockchain, network, and method you’d like to test.</li><li>guessing parameters for each method, you simply select them from the dropdowns!.</li><li>parsing JSON objects, they’re pre-parsed in the browser!</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*KrakMwkNj3sAW_N6" /></figure><p>One additional feature that’s particularly useful: if you want to share a request you’re looking at with your pair programmer, just click “Copy config URL” in the top right corner and you can share that URL directly with them while retaining all the request information! A fast and easy way to validate requests between friends.</p><h3>The Alchemy Mempool Watcher: View Your Transaction Status</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*AHoK8DvizbbMk8XWLMU8FA.jpeg" /></figure><p>First off, it’s important to understand what the Mempool does. Essentially, the mempool is a waiting room inside each node for pending transactions. These are transactions that have been sent by a user that have yet to be “mined”, or written onto the blockchain.</p><p>Here’s a summary of the typical flow of a transaction before it gets confirmed on the blockchain:</p><ol><li>User generates and signs a transaction, creates a sendTransaction request, and sends the request to a node.</li><li>That node places the pending transaction in its mempool. The mempool does a bunch of validation on the transaction and rejects it otherwise.</li><li>That node shares the pending transaction with as many of its peers as possible and so on, so that nodes across the network will have this specific pending transaction in their mempools.</li><li>Once a block is mined, the miner selects the pending transactions from its mempool that have the highest gas price and includes them in the block. These pending transactions are now mined.</li><li>Over time, a pending transaction that never gets mined may eventually be dropped by nodes.</li></ol><p>If you still have questions, <a href="https://blog.alchemy.com/blog/how-to-debug-pending-ethereum-transactions">this article on pending transactions might help you out!</a></p><p>One major issue is that the mempool is basically opaque to the user — the only way to access information about its contents is through API requests to check on the status that return endless log streams.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*LJEb45_0epsZKqiX" /><figcaption>This is a real-life, <em>successful</em> request to the mempool to fetch its status. Lovely, isn’t it.</figcaption></figure><p>Seeing how painful this was, we decided to build a GUI to allow you to access your mempool state in the dashboard instead of the CLI!</p><p>Here’s what it looks like to browse the mempool with our Mempool Watcher:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*s-vo9uIQU_vopesE" /><figcaption>Ahhh. Much better.</figcaption></figure><p>Have you ever wondered <a href="https://blog.alchemy.com/blog/how-to-debug-pending-ethereum-transactions">why your pending transactions aren’t going through</a>? The vast majority of the time, it’s because the gas price for your transactions is less than the current going rate. With a tool like this, you should be able to quickly identify transactions that are getting stuck in the mempool, see the gas prices associated with them, and compare with the market rate to determine if it’s time to resubmit a transaction with a higher gas price.</p><h3>What’s with all these charts?</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*emj6HsfP2xr-aBJ6" /></figure><p>There’s a lot of useful information that we’re able to collect for you as your node provider — and we’re doing the best job we can to share it with you! Things we’re able to graph for you that you wouldn’t otherwise see:</p><ul><li>Your request counts over time, broken down by app.</li><li>The IP addresses of your requests mapped on a U.S.A. and world map (very useful if you have client apps send traffic directly to Alchemy!)</li><li>A visualization of recent requests sent through your app.</li><li>Your usage history, sortable by app and month, helping you identify trends in your traffic!</li></ul><h3>What Other Benefits Does Alchemy Provide?</h3><p>Alchemy provides node infrastructure for the blockchain, which means we manage all the infrastructure associated with sending and receiving requests to the Ethereum blockchain (among a few others!). Here’s some information on <a href="https://blog.alchemy.com/blog/what-is-a-node-provider-and-why-do-i-need-alchemy">why you need a node provider.</a></p><p>Once you’re sending your requests through our system, you get all the benefits we’ve discussed above: visualizations and web-based browser tools making it easier to build and monitor your dApps.</p><p>On top of that, we’ll give you:</p><ul><li>Access to <a href="https://www.alchemy.com/supernode">Supernode</a>, our proprietary node infrastructure that solves scalability and consistency issues that plague the blockchain.</li><li>Access to <a href="https://www.alchemy.com/notify">Alchemy Notify</a>, a tool providing push notifications (webhooks) for events such as transactions happening on the blockchain.</li><li>Access to our <a href="https://www.alchemy.com/enhanced-apis">Enhanced APIs</a>, which allow you to make requests from the blockchain that are otherwise computationally expensive or impossible.</li><li>And plenty more, including access to these features across a variety of chains such as Flow, Crypto.org, and L2s such as Polygon and Arbitrum!</li></ul><h3>Getting Started With Alchemy</h3><p>Setting up Alchemy as a node provider is insanely simple — in fact, it should only be a single line of code! If you’ve been using <a href="https://web3js.readthedocs.io/en/v1.5.2/">web3.js</a> or <a href="https://docs.ethers.io/v5/">ethers.js</a>, it’s as simple as <a href="https://alchemy.com/?a=917c7d2926">creating an Alchemy account via our dashboard</a>, generating an API key, and replacing the instantiation with something like this:</p><pre>const web3 = createAlchemyWeb3(“<a href="https://eth-mainnet.alchemyapi.io/">https://eth-mainnet.alchemyapi.io/</a>&lt;api-key&gt;&quot;);</pre><p>If you’d like a full tutorial, check out our<a href="https://docs.alchemy.com/alchemy/introduction/getting-started"> Getting Started With Alchemy documentation here!</a> And finally, we’re always available to help 24/7 on our<a href="https://discord.gg/AwtatAHG"> Alchemy Discord</a>. Stop by and say hi — we’d love to help you on your journey in blockchain development!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=266102feede5" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/how-to-use-alchemys-application-monitoring-tools-266102feede5">How to Use Alchemy’s Application Monitoring Tools</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Debug Pending Ethereum Transactions]]></title>
            <link>https://medium.com/alchemy-api/how-to-debug-pending-ethereum-transactions-4faa7cec9459?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/4faa7cec9459</guid>
            <category><![CDATA[ethereum-development]]></category>
            <category><![CDATA[blockchain-development]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[transactions]]></category>
            <category><![CDATA[crypto]]></category>
            <dc:creator><![CDATA[Deric Cheng]]></dc:creator>
            <pubDate>Thu, 21 Oct 2021 00:32:42 GMT</pubDate>
            <atom:updated>2021-10-21T00:32:42.795Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*MuQZJugbCUiMGN2h" /></figure><p>When you send a transaction to the Ethereum blockchain, where does it go? What is a pending transaction and what happens before it gets mined? What is a mempool? Why do some of my transactions succeed and others fail?</p><p>We’ll take a deep dive into the flow of a transaction on the Ethereum network, from the moment you hit “send” to the point when the transaction becomes fully mined. We’ll discuss what might go wrong and how Alchemy’s suite of developer tools might help you debug and gain visibility into this process.</p><p>Though this guide is Ethereum-specific, the core principles will apply to basically all blockchains!</p><h3>What is an Ethereum Transaction?</h3><p>An Ethereum transaction, in its simplest form, is a request from a user to encode new information onto the permanent state of the blockchain. The contents of this request typically take one of a few forms:</p><ol><li>A simple transfer of value from the user’s public account to another party (e.g. sending ETH to a merchant)</li><li>Encoding a new smart contract onto the public blockchain that can be accessed by other third parties (e.g. starting a new lottery smart contract)</li><li>Sending information to an existing smart contract to engage with the contract (e.g. entering your name and funds into a lottery smart contract)</li></ol><h3>What is a Mempool?</h3><p>Before we can understand the transaction flow in Ethereum, first we need to understand what the mempool is! A mempool is a waiting room in an Ethereum node for unconfirmed transactions, configured specifically to act as a staging area. Depending on the client you’re using, it might also be called a TX-POOL or TX-QUEUE.</p><p>Transactions sent to a node will first land in the mempool, and will remain there until they’re fully confirmed by the network. The mempool handles a few key steps of the process, including:</p><ol><li>Running a series of validation tests to ensure that the transaction will be successful once submitted to a miner. Some of the validations the node might perform include: Are there available funds to cover the cost of gas?Is the transaction signature valid?Is the nonce next in order for this given sender address?</li><li>Ordering the list of transactions to be processed based on their gas prices. Higher gas prices mean the transaction will likely be prioritized by the miner.</li><li>Sharing the pending transactions with the mempools of peered nodes which then continue to forward to other mempools, allowing the entire network to view the list of pending transactions. When a block is mined, the transactions across the entire network with the highest gas prices will be confirmed.</li></ol><h3>What Does the Ethereum Transaction Flow Look Like?</h3><p>Now that we’ve covered the mempool, what steps are involved in sending a transaction from a user to permanently storing this transaction on the blockchain?</p><ol><li>A user generates a new transaction, signs the transaction with their private key, and sends it to a node on the blockchain by calling the method <strong>eth_sendTransaction</strong> or <strong>eth_sendRawTransaction</strong> as exposed, typically via a service like<a href="https://alchemy.com/supernode?a=a437fb8d33"> Alchemy’s Supernode API.</a></li><li>The transaction is sent to the mempool of a node.</li><li>The mempool runs a series of validation tests. If the transaction passes these validations it’ll enter a pending state.</li><li>The node will broadcast the transaction to the other nodes in the blockchain, where it will end up in their corresponding mempools.</li><li>Once a new block is mined by a node on the blockchain, the ~200 pending transactions with the highest gas prices will be included into the next block on the blockchain. These transactions will be removed from the mempool, and the new block and mempool state propagated through the network</li><li>After 5–7 more blocks are confirmed, the chances of the blockchain re-organizing to follow another fork of blocks (with a different set of confirmed transactions) become vanishingly small. At this point, it’s safe to assume that the transaction is permanently on the blockchain.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*CWoSimEL_IWwfvB6" /></figure><h3>What Could Go Wrong With A Pending Ethereum Transaction?</h3><h4>1. The Mempool Might Be Full</h4><p>Let’s start simple. There’s limits to the size of the mempool (unless you’re using a tool like Alchemy!), both across the entire node and per address in the node. Typically for Geth, it’s 4096 pending transactions, and Geth will drop older pending transactions in favor of newer ones.</p><h4>2. Your Parameters Might Be Invalid</h4><p>When you make a transaction, you’ll need to include a variety of relevant parameters, such as:</p><ul><li>What’s the sending address and destination address?</li><li>What’s the value to be transferred?</li><li>How much gas am I willing to use for the transaction?</li><li>What should the current nonce for my transaction be?</li></ul><p>If you’ve made a mistake entering these, the node will typically return an error code explaining the issue. If you can’t understand the error message or find the answer via Google, feel free to shoot us a message <a href="https://discord.gg/BxRDCHf6">on Discord</a> and we’ll try to help you out!</p><h4>3. Your Gas Price Might Be Too Low</h4><p>To determine which transactions to prioritize, Ethereum transactions must be submitted with a gas price. Just like a regular auction, a higher gas price means your transaction is more likely to be included into the next block — and too low of a gas price means you might never make it onto the blockchain.</p><p>Because the gas price fluctuates rapidly and unpredictably over the course of a day based on demand, it’s very important that you set this field properly. You’ve got a few options here:</p><ul><li>If you’re sending a single transaction manually, you can visit the <a href="https://ethgasstation.info/">ETH Gas Station website</a> to view the most recent gas prices and set your price accordingly.</li><li>If you’re sending requests to a node provider like Alchemy, the Ethereum JSON-RPC spec exposes an endpoint called <a href="https://docs.alchemy.com/alchemy/apis/ethereum/eth_estimategas">eth_estimateGas</a> that gives you an estimate of how much gas you’ll need to get your transaction mined! You can use this to automate setting gas prices programmatically.</li><li>If you’d like to receive push notifications when gas prices rise above or fall below a certain price, we provide a tool called <a href="https://docs.alchemy.com/alchemy/guides/using-notify#4-gas-price">Gas Price Notifications in Alchemy Notify </a>that can alert you specifically in those situations! Because it’s a webhook, it’s quite simple to integrate into your code to automatically send transactions when gas prices are low.</li></ul><h4>4. Your Nonce Might Be Incorrect</h4><p>Ah, the burning question in everyone’s head — what the heck is a nonce and why do I need it?? Totally valid question and we’re glad you asked.</p><p>Quite simply, the nonce is the number of transactions sent from a given address. If you’ve successfully confirmed five transactions (nonces 0–4), the nonce of your next pending transaction will be 5.</p><p>Nonces follow a few rules:</p><ul><li>Nonces must occur in order. A transaction with nonce 4 will occur strictly before a transaction with nonce 5.</li><li>Nonces can’t be duplicated or skipped — there’s exactly one nonce per successful transaction. If you don’t have a transaction with nonce 5, you can’t submit one with nonce 6. SImilarly, you can’t submit two transactions with nonce 5 — only one will go through.</li></ul><p>Why do we need them? Nonces are necessary from a cryptographic perspective to ensure that transactions from a given address happen in the order that you sent them, and that your transactions are protected from the <a href="https://en.wikipedia.org/wiki/Double-spending">double-spend issue</a>.</p><p>In practice, the nonce is simply a parameter that you must set when you create a transaction. This allows you to have fine-grained manual control over the order of your transactions.</p><p>For a real-life example, say you want to buy an NFT from a marketplace and then send a small “finder’s fee” to Bob for helping you discover it. In this case, you’d only want to pay Bob if you successfully bought the NFT. Without nonces, you’d have no way to submit both transactions AND ensure they occurred in a particular order. Using nonces, you can simply label one transaction with nonce N, and one with nonce N + 1!</p><p>However, this fine-grained control means you need to submit your transactions with the correct nonce every time! If your transaction is stuck, you’ll need to check your nonce to make sure it’s properly set according to the rules described above.</p><h4>5. Your Block Might Get Forked</h4><p>You’ll love this one: even if your transaction successfully is mined, you’re <em>still</em> not in the clear 😡 .</p><p>Because the blockchain is decentralized, different sets of nodes in the network might have different views of the network. In particular, occasionally two miners will mine a new block at roughly the same time, and peering nodes will hop onto the two new chains at the same rate. In that case, the two new chains will grow in parallel — but eventually one of them will gain just a little more consensus!</p><p>When the entire network swaps to one of the chains and abandons the second one, the transactions already “mined” on the old chain become forked and therefore invalid. The forked blocks are also referred to as an “uncle blocks”.</p><p>That means that even after you’ve mined your transaction, it could still be invalidated by a block fork! You can see a <a href="https://etherscan.io/blocks_forked">history of forked blocks on Etherscan here</a>. Luckily on Ethereum mainnet they’re not very common and typically are under 5 blocks deep, but that’s why your transaction is never “fully” confirmed by a DeFi trading protocol until after 5–7 block confirmations minimum.</p><h3>What Tools Can I Use To Manage My Mempool and Ethereum Pending Transactions?</h3><h4>The Alchemy Mempool Watcher</h4><p>Say you sent a transaction forty minutes ago to the mempool of a node, but you haven’t seen it confirmed on the blockchain. You’d like some information about its current status, the gas price you sent it with, and the nonce to double-check it. What do you do?</p><p>Accessing the state of your mempool transactions was (and still is) a mess. Because the only interface into the status of your mempool is via the Ethereum JSON-RPC API, developers were spending hours querying the various nodes they sent transactions to, merging and sifting through pages of logs, and trying to rebuild the entire state of their mempool by hand — all for a single query.</p><p>This is what the average call to a busy mempool looks like:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ptkuBMSLaoFQ9Z4n" /><figcaption>Have fun reading through this mess.</figcaption></figure><p>What’s worse, when developers start sending their requests to multiple nodes for scale, there are serious consistency issues — since transactions originate from a single node, requests for a particular transaction need to be sticky routed to the same node every time you interface with it.</p><p>In response to these challenges, we built the <a href="https://dashboard.alchemyapi.io/mempool">Mempool Watcher </a>— a tool that simplifies a lot of this complexity. First, we handle all the node routing so that even though you might be leveraging dozens of nodes of scale, your mempool always appears as a single entity — with mempool requests properly routed to the correct node within our infrastructure.</p><p>Second, we give you some very nice tools to provide a real-time view of the status of your transactions. Transactions are marked as mined, pending, or dropped. Each transaction record includes the duration that the transaction spent pending, the amount of gas required, and access to additional details.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*WC3ABzDn978mDyYG" /><figcaption>Here’s what your view into the mempool looks like with our tooling!</figcaption></figure><h4>The Alchemy Explorer</h4><p>What if you’ve sent out twenty different transactions to a node simultaneously via a script, but you see that some of them are failing to even reach the node? How might you track the failing responses and find patterns to determine the cause?</p><p>Similar to above, typically as a developer you’d need to trawl through pages of logs to determine a pattern. In response, we’ve built a request / response explorer tool that lets you track the status of JSON-RPC requests sent through our API!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*0KQ7eDgaGcLriBgp" /></figure><p>Our <a href="https://dashboard.alchemyapi.io/explorer">Explorer</a> allows you to search through historical requests and responses sent through our infrastructure anywhere from 1 second to 7 days ago! No more log-hunting — you’ve got modern technology at your fingertips.</p><p>On these requests, you can filter the queries by all sorts of parameters, such as the type of method, HTTP responses, or node-specific errors! You can see requests based on their timestamps, the duration of the request, and many more options.</p><h3>Why Should I Use Alchemy to Manage My Transactions?</h3><p>Alchemy is a node provider, which means we manage all the infrastructure associated with sending and receiving requests to the Ethereum blockchain (among a few others!). Here’s some information on <a href="https://blog.alchemy.com/blog/what-is-a-node-provider-and-why-do-i-need-alchemy">why you need a node provider.</a></p><p>Once you’re sending your requests through our system, you get all the benefits we’ve discussed above for pending transactions: a scalable mempool, dashboard tooling, gas price webhooks.</p><p>On top of that, we’ll give you:</p><ul><li>Access to <strong>Supernode</strong>, our proprietary node infrastructure that solves scalability and consistency issues that plague the blockchain.</li><li>Access to our <strong>Dashboard</strong>, which helps you build and monitor your applications by providing tools to explore your requests like those discussed above.</li><li>Access to <strong>Alchemy Notify</strong>, a tool providing push notifications (webhooks) for events such as transactions happening on the blockchain.</li><li>Access to our<strong> Enhanced APIs</strong>, which allow you to make requests from the blockchain that are otherwise computationally expensive or impossible.</li><li>And plenty more, including access to these features across a variety of chains such as <a href="https://www.alchemy.com/flow">Flow</a>, <a href="https://www.alchemy.com/crypto-dot-org">Crypto.org</a>, and L2s such as <a href="https://www.alchemy.com/layer2/polygon">Polygon</a>, <a href="https://www.alchemy.com/layer2/optimism">Optimism</a>, and <a href="https://www.alchemy.com/layer2/arbitrum">Arbitrum</a>!</li></ul><h3>Getting Started With Alchemy</h3><p>Unlocking Alchemy’s Supernode and developer tools is insanely simple — in fact, it should only be a single line of code! If you’ve been using web3.js or ethers.js, it’s as simple as<a href="https://alchemy.com/?a=a437fb8d33"> creating an Alchemy account for free</a>, generating an API key, and replacing the instantiation with something like this:</p><pre>const web3 = createAlchemyWeb3(“<a href="https://eth-mainnet.alchemyapi.io/">https://eth-mainnet.alchemyapi.io/</a>&lt;api-key&gt;&quot;);</pre><p>If you’d like a full tutorial, check out our<a href="https://docs.alchemy.com/alchemy/introduction/getting-started"> Getting Started With Alchemy documentation here!</a> And finally, we’re always available to help 24/7 on our<a href="https://discord.gg/AwtatAHG"> Alchemy Discord</a>. Stop by and say hi — we’d love to help you on your journey in blockchain development!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4faa7cec9459" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/how-to-debug-pending-ethereum-transactions-4faa7cec9459">How to Debug Pending Ethereum Transactions</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Why You Should Configure Your MetaMask Node Provider]]></title>
            <link>https://medium.com/alchemy-api/why-you-should-configure-your-metamask-node-provider-ad78b24fbbf3?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/ad78b24fbbf3</guid>
            <category><![CDATA[alchemy]]></category>
            <category><![CDATA[polygon]]></category>
            <category><![CDATA[metamask]]></category>
            <category><![CDATA[solidity]]></category>
            <category><![CDATA[blockchain]]></category>
            <dc:creator><![CDATA[Albert Hu]]></dc:creator>
            <pubDate>Wed, 20 Oct 2021 21:54:16 GMT</pubDate>
            <atom:updated>2021-10-20T21:54:15.905Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*LLDhQagI0JX8r1Is7PP6tw.jpeg" /></figure><h3>What is MetaMask? How does it work?</h3><p><a href="https://blog.alchemy.com/blog/why-you-should-configure-your-metamask-node-provider#"><strong>MetaMask</strong></a><strong> </strong>is one of the most popular Ethereum tools out there. As a cryptocurrency wallet, it allows users to access multiple accounts through a browser extension or mobile app. Developers use MetaMask to test dapps, traders use it to lend and borrow on DeFi protocols, and collectors use it to purchase NFTs. It’s a staple in today’s Web3 world!</p><p>But… do you know how MetaMask processes all of these transactions? As a wallet, it needs to show users key information such as the account balance, a history of transactions, estimated gas fees, and more. It’s also responsible for sending transactions to the blockchain on behalf of users. So how does MetaMask process all this important information?</p><h3>nick.eth on Twitter: &quot;Just got victimised by legacy @MetaMask&#39;s poor gas estimation post-1559 because I wasn&#39;t checking closely enough. Paid 500 gwei for a token approval (~$70) when base fee was 74 gwei. 🤦‍♂️ / Twitter&quot;</h3><p>Just got victimised by legacy @MetaMask&#39;s poor gas estimation post-1559 because I wasn&#39;t checking closely enough. Paid 500 gwei for a token approval (~$70) when base fee was 74 gwei. 🤦‍♂️</p><p>MetaMask reads and writes information to the blockchain by connecting to a node! It makes a connection by using a default <a href="https://blog.alchemy.com/blog/what-is-a-node-provider"><strong>node provider</strong></a> that shares resources across all MetaMask users. While having a default shared provider means that it’s easy for users to get set up, there are lots of downsides:</p><ul><li>your transaction processing time might <a href="https://twitter.com/Maahesrah/status/1429887080084254720?s=20">feel slow‍</a></li><li>you might see <a href="https://ethereum.stackexchange.com/questions/109768/how-does-ethereum-network-keep-consistent">inconsistent block data‍</a>‍</li><li>you might pay more gas than necessary due to <a href="https://twitter.com/nicksdjohnson/status/1425223355502718979?s=20">out-dated gas fee estimations</a>‍</li><li>and worst of all, <a href="https://www.theblockcrypto.com/post/84232/ethereum-infrastructure-provider-infura-is-down">the default node provider may stop working completely</a>‍</li></ul><p>When there’s an outage, you do not want to be stuck, unable to send important transactions right when you need it the most.</p><h3>What are the benefits of using Alchemy as the node provider?</h3><h3>foobar on Twitter: &quot;Switching MetaMask RPC from the default Infura to a custom Alchemy makes transactions propagate so much faster 🧠 / Twitter&quot;</h3><p>Switching MetaMask RPC from the default Infura to a custom Alchemy makes transactions propagate so much faster 🧠</p><p><a href="https://alchemy.com/?a=991c4e82df"><strong>Alchemy</strong></a> has created an entirely new Web3 infrastructure technology known as <a href="https://www.alchemy.com/supernode"><strong>Supernode</strong></a> that solves for data consistency, scalability, and outage issues — problems that are common in other node providers. By hooking Alchemy up with your MetaMask wallet, you also unlock game-changing tools for monitoring and debugging such as the <strong>Mempool Visualizer</strong> and <a href="https://www.alchemy.com/notify"><strong>Alchemy</strong> <strong>Notify</strong></a>.</p><p>Let me illustrate with two quick scenarios:</p><h4>Scenario 1: Minting NFTs</h4><p>Let’s say you’re using MetaMask to send transactions to a dapp to mint the latest NFT drop. What do you do if time has passed, your transaction has not completed, and you don’t know why?</p><p>With Alchemy’s mempool watcher, you get to see your pending transactions before they’re even broadcast to the rest of the network! You can click into each transaction in the mempool and see detailed information, including whether your transaction failed to include enough gas fees, or whether you have transactions with conflicting nonce values. <strong>Having this visibility is crucial if you want maximum control over your trades </strong>because you can see when your transactions are getting stuck and why.</p><h3>Ξ nfty69 Ξ on Twitter: &quot;Metamask uses a Infura node by default. The issue is that it&#39;s not primary Infura network. You should modify mainnet to use Alchemy, Looping etc instead of default Infura. It makes a world of difference to those getting to the main Infura network and it does so much faster. FYI / Twitter&quot;</h3><p>Metamask uses a Infura node by default. The issue is that it&#39;s not primary Infura network. You should modify mainnet to use Alchemy, Looping etc instead of default Infura. It makes a world of difference to those getting to the main Infura network and it does so much faster. FYI</p><h4>Scenario 2: Alerting on Transactions</h4><p>Now let’s say you want to send yourself an alert when key transactions occur (e.g. transfers from your wallet of greater than 1 ETH), or you might want to know when your transactions are mined but then dropped. Normally, you might make your MetaMask transactions, and then use a blockchain explorer to manually sift through your history… but this would be time-consuming and error-prone.</p><p>With Alchemy Notify, you get webhook functionality that automatically pushes any on-chain transaction data over to your own apps as your transactions are happening! <strong>With this power you can bring blockchain data over to where you need it most</strong> — Slack, Discord, a tax accounting application — the possibilities are endless :)</p><h3>Lisbon Enthusiast 🔥🌱 on Twitter: &quot;I pointed Metamask to Alchemy last night and was incredibly pleased with the results.Excited to have this additional tool in my arsenal. https://t.co/83vmZRJRPE / Twitter&quot;</h3><p>I pointed Metamask to Alchemy last night and was incredibly pleased with the results.Excited to have this additional tool in my arsenal. https://t.co/83vmZRJRPE</p><h3>So How Do I Change My MetaMask Node Provider?</h3><p>Alright so now you’re wondering how to get all these cool benefits from your MetaMask wallet.</p><p>You’re in luck :) The process is super easy. Let’s go through it together.</p><h4>Set up a free Alchemy account</h4><p>This is a very important step.</p><p><a href="https://alchemy.com/?a=991c4e82df">Just do it. <strong>Here</strong></a><strong>.</strong></p><h4>Now create a custom RPC configuration in MetaMask</h4><p>Ready for the fun part?</p><ol><li>Navigate to your MetaMask wallet and click the network dropdown at the top, selecting <strong>Custom RPC</strong> at the bottom.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/712/0*keskmKqbUOOv-WIU.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/742/0*-PaPxEwhI13MryIl.png" /></figure><p>Let’s fill in these custom RPC information fields.</p><p>2. You can name your <strong>Network Name</strong> anything to remind you which chain you’re connecting to. For example, if you’re connecting to Polygon Mainnet, you can call this configuration “Alchemy — Polygon Mainnet”.</p><p>3. For the <strong>New RPC URL field</strong>, grab the HTTP API key URL from your <a href="https://dashboard.alchemyapi.io/">Alchemy Dashboard</a>. If you don’t have a dashboard account, go back up to the “Set up a free Alchemy account” step and set up your account.</p><p>Make sure your Alchemy app’s chain matches the chain you want to connect to.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*NciO07xuQq-SlhsD.png" /></figure><p>4. Look up the <strong>Chain ID</strong> for the network you want to connect to.</p><ul><li>Ethereum Mainnet — 1</li><li>Ropsten Testnet — 3</li><li>Rinkeby Testnet — 4</li><li>Goerli Testnet — 5</li><li>Kovan Testnet — 42</li><li>Polygon (Matic) Mainnet — 137</li><li>Mumbai Testnet — 80001</li><li>Arbitrum One — 42161</li><li>Optimism (Optimistic Ethereum) — 10</li><li>Optimistic Kovan — 69</li></ul><p>5. <strong>Currency Symbol</strong> and <strong>Block Explorer URL </strong>are optional. For most chains, no input is needed here. For the L2s and side-chains, setting these can be useful.</p><p>Polygon:</p><ul><li>Currency Symbol — MATIC</li><li>Block Explorer URL — <a href="https://polygonscan.com/">https://polygonscan.com/</a></li></ul><p>Arbitrum:</p><ul><li>Currency Symbol — AETH</li><li>Block Explorer URL — <a href="https://arbiscan.io/">https://arbiscan.io</a></li></ul><p>Optimism:</p><ul><li>Currency Symbol — ETH</li><li>Block Explorer URL — <a href="https://optimistic.etherscan.io/">https://optimistic.etherscan.io</a></li></ul><p>When you’re done, your configuration should look something like this:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/744/0*w0jGg1zje7O9s1a4.png" /></figure><p>And don’t worry if you get a warning like:</p><p>‍<em>This Chain ID is currently used by the Polygon network</em>.</p><p>This is just MetaMask reminding you that you have another configuration for the same chain, which is totally allowed. Once you have these info boxes filled out, just hit <strong>Save</strong>!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/736/0*uPGA96IxphJygf5C.png" /></figure><p>And that’s it! You’re done!</p><h4>Now sit back, relax, and send your transactions!</h4><p>Just use MetaMask as you usually would :)</p><h4>And Then… Leverage the Alchemy Developer Platform</h4><p>With <a href="https://alchemy.com/?a=991c4e82df">Alchemy</a> connected, you can visit your app in the <a href="https://dashboard.alchemyapi.io/"><strong>Alchemy Dashboard</strong></a> and see the API calls MetaMask is making:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*layqRTzM7Lyr7ct-.png" /></figure><p>Or track your pending and mined transactions in the <strong>Mempool Watcher</strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*SnxN7XiKxSG698yJ.png" /></figure><p>Or even set up webhooks with <strong>Alchemy Notify</strong> to automatically get alerts on your wallet activity:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*gAoM7ed9jO-ct6eh.png" /></figure><p>So as you can see, whatever you want to do with your MetaMask transactions, Alchemy has you covered!</p><p>If this guide was useful to you, say hi to me on <a href="https://twitter.com/thatguyintech">@thatguyintech</a> :)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ad78b24fbbf3" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/why-you-should-configure-your-metamask-node-provider-ad78b24fbbf3">Why You Should Configure Your MetaMask Node Provider</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[What is a Blockchain Node Provider? Why Do I Need One?]]></title>
            <link>https://medium.com/alchemy-api/what-is-a-node-provider-and-why-do-i-need-alchemy-16e89b43bfda?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/16e89b43bfda</guid>
            <category><![CDATA[blockchain-development]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[blockchain-technology]]></category>
            <category><![CDATA[ethereum-blockchain]]></category>
            <category><![CDATA[alchemy]]></category>
            <dc:creator><![CDATA[Deric Cheng]]></dc:creator>
            <pubDate>Thu, 14 Oct 2021 17:32:16 GMT</pubDate>
            <atom:updated>2022-11-11T01:18:18.637Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*04a3levw078PZjpWsibKyA.jpeg" /></figure><p>If you’re new to blockchain development, there’s plenty of unfamiliar concepts around nodes and how they play a role in your blockchain stack. What is a blockchain node? Why is running your own Ethereum node difficult? What is a node provider and why do I need one? What are the differences between providers such as Infura, Alchemy, and Quicknode?</p><p>Believe me, we’ve been there. It’s super confusing. Here’s a quick rundown of what you need to know.</p><h3>What is a node in blockchain?</h3><p>Let’s start from the basics! A node is essentially a program running on a single computer that allows you to connect with the rest of the blockchain network. It connects with other nodes to send information back and forth, checks that transactions sent between people are valid, and stores important information about the state of the blockchain.</p><p>In particular, one of the peculiarities of a blockchain network is that the network is essentially composed of <em>only </em>nodes: that is, the physical hardware running a blockchain such as Ethereum or Bitcoin is just the collection of all the nodes around the world being run by individual people. There’s no master server or single source of truth — that’s why it’s decentralized!</p><p>Finally, it’s important to note<strong> </strong>that <em>there’s no way to access the information on a blockchain without using a node</em>. Can’t be done. Think of it like the browser for the blockchain.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ILVKmWcpxXkM3vXX" /><figcaption>The “blockchain” is just a collection of computers (nodes) run by individuals, collectively taking part in verifying the state of this blockchain following a certain set of rules.</figcaption></figure><p>You interact with a node by sending <em>requests </em>to and receiving <em>responses</em> from it via an API. For instance, you can send a request like the following, assuming you’re running a node on your computer on port 8545:</p><pre>curl localhost:8545 \<br>-X POST \<br>-H “Content-Type: application/json” \<br>-d ‘{“jsonrpc”:”2.0&quot;,”method”:”eth_blockNumber”,”params”:[],”id”:0}’</pre><p><a href="https://composer.alchemyapi.io/?composer_state=%7B%22chain%22%3A0%2C%22network%22%3A0%2C%22methodName%22%3A%22eth_blockNumber%22%2C%22paramValues%22%3A%5B%5D%7D">Try it out online using the Alchemy Composer!</a> This request will ask your node to return the latest block number, or the most recently produced block on the network, by calling the<a href="https://docs.alchemy.com/alchemy/apis/ethereum/eth_blocknumber"> blockNumber</a> method. Here’s an example response:</p><pre>{<br> “jsonrpc”: “2.0”,<br> “id”: 0,<br> “result”: “0xa1c054”<br>}</pre><p>As you can see, the most recent block in this case is 0xa1c054, which translates to block 10600532 in decimal form.</p><h3>Why is running a node difficult?</h3><p>There’s a few things that make developing on your own node connected to the network particularly annoying. Let’s cover some reasons:</p><h4><strong>Nodes take a long time to set up — up to weeks!</strong></h4><p>The bane of any developer is spending a lot of time setting up for a tool that doesn’t directly contribute to what they’re trying to build, and nodes are among the worst offenders.</p><p>There’s typically two main categories of nodes — light nodes and full nodes. Light nodes sync just the block headers and request from full nodes for many queries, while full nodes keep the entire state of a blockchain — every transaction that’s ever been created. Most queries work with light nodes, but full nodes are the backbone of the blockchain — they’re necessary to serve most information.</p><p>Light nodes have gotten relatively more simple in the past, but still require installing the node program, setting configuration variables, downloading block headers, and checking ports and health to ensure they’re running properly. If you can get your first light node running in under 30 minutes, ping us on<a href="https://discord.gg/AwtatAHG"> Discord</a> and we’ll get you a custom badge for your efforts 👏👏.</p><p>Full nodes are even worse: the biggest issue is that full nodes need to download every block from 0 to latest from scratch, and manually replay every block and transaction ever submitted by anybody ever. For Ethereum mainnet, that’s over 10 million blocks and on the order of billions of transactions. That can literally take weeks of syncing.</p><p>Note: In Ethereum, there’s one more type of node called archive nodes that are useful for historical lookups. We won’t cover them in depth here.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*POmeGnth91pJd0yy" /></figure><h4>Nodes have to be managed — by you!</h4><p>Get ready for the dev-ops project from hell. Just a quick overview:</p><ul><li>Nodes regularly need to be upgraded every few weeks, and occasionally re-built from scratch in the case of hard forks and node client upgrades.</li><li>Because most nodes weren’t designed with reliability in mind, certain queries (such as <a href="https://docs.alchemy.com/alchemy/guides/eth_getlogs">eth_getLogs</a>) can involve running through millions of blocks and transactions, and often time out or crash a node — we call them “queries of death”. So you’ll have to keep a close eye on the health of your node and wake up to debug them at 3 AM quite often.</li><li>Individual nodes can fall behind the network for various reasons — peering and connection issues, getting stranded on outdated branches, issues with internal state. If they’re behind, your users will get served stale data but not realize it — which can be a dangerously bad experience.</li></ul><h4>Scaling past a single node is tricky!</h4><p>A single node is fine and dandy when you’re building a personal project (even if it does keep on crashing on you intermittently). But what happens when you can’t make your node server large enough to keep up with the requests you’re sending it?</p><p>“I’ll just run two nodes — and set up a load balancer between them!”, you might suggest. That’s what we thought too! Unfortunately, this setup is actually super difficult to keep consistent, because different nodes “see” the latest state of the blockchain in slightly different ways, leading to inconsistent data and other user-facing problems.</p><p>Picture this: we have two nodes syncing separately behind a load balancer. Node A thinks that the latest block is block 5, and Node B thinks it’s block 4. This is a totally normal situation — because the most recent information propagates through the network slowly, some nodes will always be ahead of others.</p><blockquote>You: Hey Mr. Load Balancer, what’s the latest block you see?</blockquote><blockquote>Mr. LB: (Sends request to Node A and returns the response): The latest block on the network is block 5.</blockquote><blockquote>You: Thanks! Can you share with me the information in block 5?</blockquote><blockquote>Mr. LB: (Sends request to Node B this time): Sorry, I don’t know about block 5. Please try again.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/583/0*mXns4r0_tN8yAjmz" /></figure><p>In a real world situation, imagine a user buying an NFT on your app. They might purchase an NFT while sending requests to Node A — but when their queries start going to Node B, it might appear as if their transactions never happened! Consistency issues like this are pervasive and very tricky to solve — especially when you scale to dozens of nodes.</p><h3><strong>What is a node provider?</strong></h3><p>Node providers are essentially teams (like us!) that offer a way to access the information on a blockchain without having to run your own node! In essence, instead of sending your requests to a local node, you can send them over the internet to a provider offering an identical API that is running fully-synced, up-to-date nodes available 24/7.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*-SEHtpLGhc-IiIEM" /></figure><p>If you remember the blockNumber request above, this is what a node request looks like when sent to a provider:</p><pre>curl <a href="https://eth-mainnet.alchemyapi.io/v2/your-api-key"><strong>https://eth-mainnet.alchemyapi.io/v2/d</strong></a><strong>emo </strong>\<br>-X POST \<br>-H “Content-Type: application/json” \<br>-d ‘{“jsonrpc”:”2.0&quot;,”method”:”eth_blockNumber”,”params”:[],”id”:0}’</pre><p>We just swapped the endpoint! No other changes are necessary.</p><p>A solid node provider will offer, at the very minimum:</p><ul><li>Access to light and full nodes with regularly-updated nodes and alerts, so you don’t have to worry about forks or network changes.</li><li>Access to archive nodes for historical transaction data (only Alchemy does this for free!)</li><li>Scalability and reliability: nodes should be available whenever you want, as much as you want them.</li><li>Consistency: providers should handle tricky edge-cases similar to the latest-block problem above. This is oftentimes an issue when using Infura or other providers.</li></ul><h3>I’m running my dApp locally and it works great! Why do I need a node provider?</h3><p>Until you’re ready to send traffic to a public testnet or mainnet, you don’t need a node provider! A local version of the blockchain for testing (as provided by Hardhat or Truffle / Ganache) is all you need to build and test your project.</p><p>Once you want to deploy your application to a live chain, node providers become a critical piece of your development workflow.</p><p>First, you’ll need a way to deploy your smart contract via a transaction to the blockchain — <em>you can only do that via a node on the blockchain</em>. That means running your own node, or sending your transaction to a provider.</p><p>Second, your application will likely need to continue pulling information about the blockchain to update its internal state. That information also goes through a node or node provider — and you’ll want that channel to be reliable and synced properly so that you’re not serving stale or broken data to users.</p><h3>What is Alchemy and how does it differ from other node providers?</h3><p>If you’ve gotten to this point, you’ve picked up the gist of why we exist! We’re essentially a blockchain node provider with extremely high reliability, fantastic customer support, and lots of developer tools, three features that are critical to our enterprise customers and the reason we have 70% of the top apps in blockchain sending their traffic through us.</p><p>If you’re interested to learn how Alchemy’s Supernode infrastructure solves consistency issues like the ones described above, <a href="https://www.alchemy.com/supernode">you can learn more here</a>.</p><p>There’s several additional things that set us apart from other node providers in the space:</p><ul><li><a href="https://www.alchemy.com/build"><strong>Developer Tools</strong></a><strong>: </strong>How do you know what requests your users are sending? If their requests fail, how can you view / debug them? What’s going on with transactions you’ve sent that are waiting to be mined? We provide a number of tools in our Alchemy Dashboard that allow you to analyze traffic on your dApp that otherwise would involve trawling pages of logs.</li><li><a href="https://www.alchemy.com/notify"><strong>Push Notifications</strong></a><strong>: </strong>What do you do if you want to be alerted whenever an Ethereum user you’re following (for example,<a href="https://en.wikipedia.org/wiki/Vitalik_Buterin"> Vitalik Buterin</a>) makes a transaction? You could write a script to read every block and search for a specific address and run it 24/7 — or you could use a tool like Alchemy Notify, a proprietary tool that sends push notifications (webhooks) for events on the blockchain.</li><li><a href="https://www.alchemy.com/enhanced-apis"><strong>Enhanced APIs</strong></a><strong>: </strong>What if you want to search for all transactions made by a single ETH user? Though this might be simple in a SQL database, it’s prohibitively difficult in blockchain — you basically need to scan every transaction in the blockchain (again, in the billions on ETH mainnet!) to see if it includes one address. We’ve built several Enhanced APIs that allow you to make this query and other similar queries instantaneously.</li></ul><h3>How do I get started?</h3><p>Using Alchemy as a node provider is insanely simple — in fact, it should only be a single line of code to get started! If you’ve been using web3.js or ethers.js, it’s as simple as <a href="https://alchemy.com/?a=76b39e42b1">creating a free Alchemy account</a>, generating an API key, and replacing the instantiation with something like this:</p><pre>// npm install alchemy-sdk </pre><pre>import { Alchemy } from &quot;alchemy-sdk&quot;;<br>const alchemy = new Alchemy();</pre><pre>const blockNumber = await alchemy.core.getBlockNumber();</pre><p>If you’d like a full tutorial, check out our<a href="https://docs.alchemy.com/alchemy/introduction/getting-started"> Getting Started With Alchemy documentation here!</a> And finally, we’re always available to help 24/7 on our<a href="https://discord.gg/AwtatAHG"> Alchemy Discord</a>. Stop by and say hi — we’d love to help you on your journey to becoming a full-fledged blockchain developer!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=16e89b43bfda" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/what-is-a-node-provider-and-why-do-i-need-alchemy-16e89b43bfda">What is a Blockchain Node Provider? Why Do I Need One?</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Alchemy Teams Up with Project Galaxy, Polygon, Gitcoin, and Others to Give $300 Million Worth of…]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://medium.com/alchemy-api/alchemy-teams-up-with-project-galaxy-polygon-gitcoin-and-others-to-give-300-million-worth-of-3b8d52e6345c?source=rss----132bfc7f817b---4"><img src="https://cdn-images-1.medium.com/max/1920/1*c98bYCaLybSr2BX-x3S3Qw.jpeg" width="1920"></a></p><p class="medium-feed-snippet">Alchemy Partners With Other Industry Leaders To Announce Community-Wide Rewards For Ethereum Contributors As Part Of A Limited Edition&#x2026;</p><p class="medium-feed-link"><a href="https://medium.com/alchemy-api/alchemy-teams-up-with-project-galaxy-polygon-gitcoin-and-others-to-give-300-million-worth-of-3b8d52e6345c?source=rss----132bfc7f817b---4">Continue reading on Alchemy »</a></p></div>]]></description>
            <link>https://medium.com/alchemy-api/alchemy-teams-up-with-project-galaxy-polygon-gitcoin-and-others-to-give-300-million-worth-of-3b8d52e6345c?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/3b8d52e6345c</guid>
            <category><![CDATA[yearn-finance]]></category>
            <category><![CDATA[cryptocurrency]]></category>
            <category><![CDATA[crypto]]></category>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[ethereum]]></category>
            <dc:creator><![CDATA[Paul Payam Almasi]]></dc:creator>
            <pubDate>Tue, 24 Aug 2021 16:36:38 GMT</pubDate>
            <atom:updated>2021-08-24T17:25:39.077Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Open-Sourcing Documentation and Rewarding Community Contributors]]></title>
            <link>https://medium.com/alchemy-api/open-sourcing-documentation-and-rewarding-community-contributors-408e8c709d4f?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/408e8c709d4f</guid>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[documentation]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[alchemyapi]]></category>
            <category><![CDATA[crypto]]></category>
            <dc:creator><![CDATA[Elan Halpern]]></dc:creator>
            <pubDate>Tue, 17 Aug 2021 14:49:10 GMT</pubDate>
            <atom:updated>2021-08-17T14:49:10.374Z</atom:updated>
            <content:encoded><![CDATA[<p>We’re thrilled to officially launch <a href="https://github.com/alchemyplatform/alchemy-docs">open source developer documentation</a> for the community! Our goal is to enable developers around the world to have the best resources to freely learn blockchain development and bring this technology to the world.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xtmNE2dXj1P86-xA5xQPSQ.jpeg" /></figure><h3>Documentation enables faster, better development</h3><p>From the very beginning we’ve invested a lot of effort towards creating high quality, beginner-friendly, informative documentation. We’ve been thrilled and humbled by the response from the community.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*pEfc8C-rZcn0gq07.png" /><figcaption><a href="https://twitter.com/iH0DL/status/1393796725979193344">https://twitter.com/iH0DL/status/1393796725979193344</a></figcaption></figure><p>‍We wrote all of our tutorials from scratch, listened to users and built guides for complex concepts like <a href="https://docs.alchemy.com/alchemy/guides/eth_getlogs">eth_getLogs</a> and <a href="https://docs.alchemy.com/alchemy/guides/eip-1559">EIP-1559</a>, and made sure the docs contained the most up to date information amidst the ever-changing web3 ecosystem.</p><p>Now, we’ve decided to allow contributions from the people we built it for in the first place, you.</p><h3>Why contribute?</h3><p>Web3 was built to make traditionally inaccessible industries, knowledge, and power, widely available to everyone — no matter what. However, this bold mission comes at a cost of complexity. It can be extremely challenging to break into the web3 space as a developer due to the intricate nature of blockchain technology.</p><p>This is where documentation comes in. We need resources, guides, and tutorials from the beginner to the expert level, that teaches people how to build things. No one is more qualified to do this than the builders themselves.</p><p>Almost everyone who has built in web3 has, at one point or another, felt frustrated with the lack of resources or explanations when developing, ranging from deploying your first smart contract to creating complex defi tools. However, those same developers oftentimes persevere and figure out how to build it anyways. If this is you, come write a tutorial about it! Odds are, hundreds of other developers felt the same way and gave up — you have an extremely unique opportunity to massively impact their experience, and get rewarded for doing so.</p><p>Yes, we are giving out rewards for people who contribute! These include but are not limited to:</p><ul><li>Free Alchemy credits to help fuel your dApps</li><li>Exclusive Beta access to new Alchemy features</li><li>VIP support for your Alchemy account</li><li>Free Alchemy Swag</li><li>Twitter shout out from the Alchemy account</li></ul><p><em>*Note: The type of award given will be determined on a case-by-case basis</em></p><h3>Our first contributor…</h3><p>We were thinking about open sourcing our docs for quite a bit, but had not actually moved forward until a recent conversation with a newer Alchemy user, <a href="https://github.com/ClayShentrup">Clay Shentrup</a>, co-founder of <a href="https://www.ipiq.io/">IPIQ</a>.</p><p>Clay was continuously becoming frustrated with the confusion of how to integrate Ethers.js, an increasingly popular alternative to web3.js, into his NFT project, but there were no instructions or guides for doing this</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/878/0*yPbpvu3dG4455iRe.png" /></figure><p>Like most other concepts in web3, Clay found himself having to gather bits of information from across the web and stitch them together to figure out how to do this.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/888/0*DlOXCqi_bdIqkD_D.png" /></figure><p>So we reached out to Clay to try and help figure out what was going on, but after a few DM exchanges, Clay ended up figuring it out on his own! After tons of hours of debugging and piecing things together, he was ecstatic!</p><p>This whole experience had us thinking — there are probably many other developers who wanted to do the same exact thing, but gave up somewhere along the way. Clay, a beginner web3 developer, would be the perfect person to teach other beginner web3 developers! So we asked him:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*Aa0G3B3s3KVtP6wB.png" /></figure><p>And he was in! Next thing you know, the initiative for open source docs was kicked off, and Clay became our first contributor. You can find his tutorial on <a href="https://docs.alchemy.com/alchemy/tutorials/how-to-create-an-nft/how-to-mint-an-nft-with-ethers">How to Mint an NFT with Ethers.js</a> by visiting our <a href="https://docs.alchemy.com/alchemy/introduction/contributing-to-docs">documentation</a> or <a href="https://github.com/alchemyplatform/alchemy-docs/blob/master/tutorials/how-to-create-an-nft/how-to-mint-an-nft-with-ethers.md">GitHub repo</a>.</p><h3>How you can contribute</h3><p>If you’re excited about teaching others cool web3 hacks that you’ve learned or writing a tutorial on a specific topic — contribute to the docs! You can find thorough instructions for how to do so on our <a href="https://docs.alchemy.com/alchemy/introduction/contributing-to-docs">documentation</a> and in the <a href="https://docs.alchemy.com/alchemy/introduction/contributing-to-docs">Alchemy docs Github</a>.</p><p>Reach out to us on <a href="https://twitter.com/AlchemyPlatform">Twitter</a> or <a href="http://alchemy.com/discord">Discord</a> if you have any feedback, questions, or ideas!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=408e8c709d4f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/open-sourcing-documentation-and-rewarding-community-contributors-408e8c709d4f">Open-Sourcing Documentation and Rewarding Community Contributors</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Alchemy Partners With Mad Banana Union In Industry’s First Payments of NFTs to Node Provider]]></title>
            <link>https://medium.com/alchemy-api/alchemy-partners-with-mad-banana-union-in-industrys-first-payments-of-nfts-to-node-provider-a436e2e68b22?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/a436e2e68b22</guid>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[alchemy]]></category>
            <category><![CDATA[nft]]></category>
            <category><![CDATA[blockchain]]></category>
            <dc:creator><![CDATA[Enzo Coglitore]]></dc:creator>
            <pubDate>Mon, 16 Aug 2021 19:45:09 GMT</pubDate>
            <atom:updated>2021-08-16T21:21:49.727Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*evWHHEWIwWvq1WpC" /></figure><p><a href="https://madbananaunion.com/"><em>Mad Banana Union</em></a><em> becomes </em><a href="https://alchemy.com"><em>Alchemy’s</em></a><em> first partner to provide payment in NFTs, revealing a growing commitment to the NFT space across the infrastructure industry.</em></p><p>On January 25th, 2021, <a href="https://alchemy.com">Alchemy</a> became the first Web3 infrastructure provider to accept crypto payments — a move that served to legitimize the cryptocurrency industry even further.</p><p>Today, on August 16th, 2021, Alchemy is again redefining what’s possible in the industry by becoming the first provider to accept NFTs from <a href="https://madbananaunion.com/">Mad Banana Union</a> &amp; other customers as sufficient payments for infrastructure.</p><p>By doing so, Alchemy is committing to NFTs as legitimate transfers of value, a belief that the company has held since its very inception. Alchemy is proud to power a majority of the largest NFT innovators from their very inception, with the company powering OpenSea, CryptoKitties, CryptoPunks, NBA Topshot, Dapper Lab’s, Axie Infinity, and now, Mad Banana Union.</p><blockquote>“It was an easy decision to accept NFTs as payments on Alchemy’s side. We have a strong belief that NFTs are a true store of value and that the market will continue to grow at a rapid pace. Together with Mad Banana Union, we are innovating — and look to set a new standard of what’s possible for infrastructure providers in Web3” — Paul Payam Amasi, Co-Creator of Alchemy Amplify</blockquote><p>Traditionally, NFT customers for Alchemy have struggled with their unit economics as the NFT model of a “drop” is where the majority of compute unit traffic comes from. With accepting NFTs as payments, Alchemy is here to provide a sustainable business model for its NFT customers.</p><p>Alchemy looks to continue to help grow the NFT space by accepting NFTs as payment from promising projects and is excited to open up this payment option to many of its existing &amp; new customers in the future.</p><h4><strong>More On</strong> <strong>Mad Banana Union &amp; Their Commitment To Alchemy</strong></h4><p>Mad Banana Union NFTs are a unique digital collection of diverse and “mad” NFTs that have been individually designed, each with their own unique features. Holders of a Mad Banana NFT also get access to unique merch, private competitions, and inclusion in a token-holder exclusive club. The Mad Bananas are planned to drop on August 17th, 2021.</p><p>Mad Banana Union chose Alchemy as their Ethereum node provider due to Alchemy’s Ethereum Supernode API, which grants the Mad Banana Union team access to industry-leading reliability and scalability, a must for a project that expects rapid adoption of their product.</p><blockquote>“Alchemy is essentially the key piece that holds the entire project together, allowing us to provide for our community a convenient way to mint their Mad Bananas” — Ahmed Ben Neji, Co-Founder of Mad Banana Union</blockquote><p>As the leader in node infrastructure for Ethereum, Alchemy is excited to add Mad Banana Union as a partner, with hopes to develop the partnership even further after the initial release of the Mad Bananas. By working closely with the Mad Banana team, Alchemy is able to help them build a pleasant user experience on launch, with certified up-time and reliability, ensuring their launch goes smoothly. On top of that, the Mad Banana team gets access to Alchemy’s world-class support, who helped orchestrate the payments of NFTs between the two companies.</p><p>Alchemy is glad to support Mad Banana Union as they aim to create a new community that will help legitimize NFTs even further.</p><h4><strong>About Mad Bananas Union:</strong></h4><p>Mad Banana Union is a community-driven NFT project with a collection of 6969 uniquely generated NFTs. Each one is thoughtfully designed, specifically picked, and impeccably shaped. The project is set to launch on August 17th, 2021. You can find more information on the Mad Bananas &amp; mint your own on launch date at: <a href="https://madbananaunion.com">https://madbananaunion.com</a>.</p><h4><strong>About Alchemy:</strong></h4><p><a href="https://alchemy.com/?r=affiliate:13611c66-66d2-4fc0-84c2-fc7e0aed7244">Alchemy</a> provides the leading blockchain development platform powering millions of users for 99% of countries worldwide. Our mission is to provide developers with the fundamental building blocks they need to create the future of technology and lower the barrier to entry for developers to build blockchain applications. Alchemy currently powers 70% of the top Ethereum applications and over $30 billion in on-chain transactions and has been featured on<a href="https://techcrunch.com/2019/12/17/alchemy-blockchain/"> TechCrunch</a>, <a href="https://www.wired.com/story/startup-aims-decrypt-blockchain-business/">Wired</a>, <a href="https://www.bloomberg.com/news/articles/2019-12-17/stanford-grads-get-school-s-backing-for-their-blockchain-startup">Bloomberg</a>, and numerous other media outlets. The Alchemy team draws from decades of deep expertise in massively scalable infrastructure, AI, and blockchain from leadership roles at technology pioneers like Google, Microsoft, Facebook, Stanford, and MIT.</p><p><strong><em>Sign up for a </em></strong><a href="https://alchemy.com/?r=affiliate:13611c66-66d2-4fc0-84c2-fc7e0aed7244"><strong><em>free account</em></strong></a><strong><em>. Check out our </em></strong><a href="https://docs.alchemyapi.io/"><strong><em>documentation</em></strong></a><strong><em>. For the latest news, follow us on </em></strong><a href="https://twitter.com/AlchemyPlatform"><strong><em>Twitter</em></strong></a><strong><em>.</em></strong></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a436e2e68b22" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/alchemy-partners-with-mad-banana-union-in-industrys-first-payments-of-nfts-to-node-provider-a436e2e68b22">Alchemy Partners With Mad Banana Union In Industry’s First Payments of NFTs to Node Provider</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Stake DAO and Alchemy: Merging the Complex World of DeFi Into One User-Friendly Space]]></title>
            <link>https://medium.com/alchemy-api/stake-dao-and-alchemy-merging-the-complex-world-of-defi-into-one-user-friendly-space-ddf58948c499?source=rss----132bfc7f817b---4</link>
            <guid isPermaLink="false">https://medium.com/p/ddf58948c499</guid>
            <category><![CDATA[crypto]]></category>
            <category><![CDATA[cryptocurrency]]></category>
            <category><![CDATA[decentralized-finance]]></category>
            <category><![CDATA[crypto-exchange]]></category>
            <category><![CDATA[defi]]></category>
            <dc:creator><![CDATA[Elan Halpern]]></dc:creator>
            <pubDate>Wed, 28 Jul 2021 17:24:09 GMT</pubDate>
            <atom:updated>2021-07-28T17:24:09.844Z</atom:updated>
            <content:encoded><![CDATA[<h3>Stake DAO partners with Alchemy to power user-friendly DeFi applications.</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*KZapzCcpwzu3me9OxqRNeg.png" /></figure><p>Even for seasoned crypto enthusiasts, DeFi can seem overwhelming. The sheer number of options seem to be growing by the hour. Some platforms have worked hard to make their user experience (UX) simple, but other more experimental platforms are only accessible to the most daring of savers and investors. To make things even more daunting, maximizing DeFi income can be a full-time job in and of itself due to the constantly shifting landscape of offers, opportunities, and risks.</p><p>This is why the creators of <a href="https://stakedao.org/">Stake DAO</a>, a non-custodial DeFi platform built on Ethereum, decided to launch their service in early 2021. Stake DAO aims to make DeFi services accessible to everyone bringing the best of decentralized finance under one roof. To ensure the service is stable, secure, and fast, the Stake DAO team embarked on a partnership with<a href="https://alchemy.com/?r=affiliate:51487306-288b-4375-9246-8c2b8044b845"> Alchemy</a>, unlocking an array of developer tools, scalable infrastructure, and industry leading reliability.</p><p>Arguably one of the hottest and most in-demand features of DeFi is earning interest or staking rewards on idle assets. But to get the best offers (which are often fairly short term and require active management), an investor has to constantly scour dozens of sites and dig through countless offers, wasting time and effort. Stake DAO allows users to quickly filter through interest-earning and staking opportunities from multiple sources at once and with only one account. When users find an opportunity that meets their needs, they can take advantage of it without needing to leave the Stake DAO environment.</p><blockquote><em>“We’re really excited to work with Stake DAO as they aim to make DeFi accessible to everyone. The team is extremely talented and their innovation of putting together an easy-to-use platform that allows users to access multiple staking opportunities in one place is brilliant!” — Elan Halpern, Co-Founder of Alchemy Amplify.</em></blockquote><p>Users can even buy, sell, and trade or exchange digital assets within Stake DAO. This type of service unification is something quite new to the world of DeFi. It’s a design methodology that can expose users to earning and borrowing opportunities they may have never considered due to the difficulty of finding them and learning how they work. This powerhouse platform was made possible thanks to the Stake DAO-Alchemy partnership.</p><h3>Stake DAO, DeFi, and Alchemy</h3><p>Creating robust applications for Ethereum is a lot more than just writing good code. What’s equally important is having the right tools, support, and resources to power that code. Stake DAO chose Alchemy to offer their users a world-class experience and to power the systems that make Stake DAO possible. When asked why they decided to team up with Alchemy and what benefits they get from the partnership, Stake DAO said:</p><blockquote><em>“We are utilizing Alchemy as our node provider for incredible speed and reliability on Ethereum. This makes the core of our stack nothing short of bulletproof, even during high traffic. It’s a massive difference. Our developers have been especially impressed by longer live connections to local ganache mainnet-fork in comparison to other providers.” — Jonnie, Stake DAO Contributor</em></blockquote><p>As Stake DAO continues to bring their product to thousands of users, Alchemy is proud to support their product and team by bringing them the best-in-class Ethereum &amp; Blockchain development platform that meets their every needs, from developer tools to scalable infrastructure.</p><h3>About Stake DAO</h3><p><a href="https://stakedao.org/">Stake DAO</a> aims to be a one-stop shop for supercharging your crypto. Instead of finding and learning how countless DeFi providers and their often not-so-user-friendly sites work, users can get access to interest earning, borrowing, trading, and even buying and selling with credit cards and bank accounts, all in one place. Stake DAO’s developers have even managed to include non-fungible token (NFT) trading into the platform.</p><p>To further reach out to those new to cryptocurrency, the Stake DAO website offers a completely free and open tutorial series on a wide and growing array of topics. The series called<a href="https://academy.stakedao.org/"> Stake DAO Academy</a> covers topics as basic as “What Are Cryptocurrencies?” all the way through advanced topics covering slippage, yield farming, layer 2 solutions, and even synthetic assets. Articles are quick and to the point and should be accessible for even the most time-strapped reader. In addition, all Academy articles are available in both English and French.</p><h3>About Alchemy</h3><p><a href="https://alchemy.com/?r=affiliate:51487306-288b-4375-9246-8c2b8044b845">Alchemy</a> provides the leading blockchain development platform powering millions of users for 99% of countries worldwide. Our mission is to provide developers with the fundamental building blocks they need to create the future of technology and lower the barrier to entry for developers to build blockchain applications. Alchemy currently powers 70% of the top Ethereum applications and over $30 billion in on-chain transactions and has been featured on TechCrunch, Wired, Bloomberg, and numerous other media outlets. The Alchemy team draws from decades of deep expertise in massively scalable infrastructure, AI, and blockchain from leadership roles at technology pioneers like Google, Microsoft, Facebook, Stanford, and MIT.</p><p>Ready to start building your own decentralized apps? <a href="https://alchemy.com/?r=affiliate:51487306-288b-4375-9246-8c2b8044b845">Sign up for a free Alchemy account and get started building.</a> For the latest news, follow us on <a href="https://twitter.com/AlchemyPlatform">Twitter</a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ddf58948c499" width="1" height="1" alt=""><hr><p><a href="https://medium.com/alchemy-api/stake-dao-and-alchemy-merging-the-complex-world-of-defi-into-one-user-friendly-space-ddf58948c499">Stake DAO and Alchemy: Merging the Complex World of DeFi Into One User-Friendly Space</a> was originally published in <a href="https://medium.com/alchemy-api">Alchemy</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>