<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>BuidlGuidl</title>
        <link>https://paragraph.com/@news.buidlguidl</link>
        <description>A curated group of Ethereum builders creating products, prototypes, and tutorials to enrich the web3 ecosystem.</description>
        <lastBuildDate>Sun, 30 Aug 2026 04:35:54 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>BuidlGuidl</title>
            <url>https://storage.googleapis.com/papyrus_images/f81a8417f9cbdae058c0f68522815d9658be674313ec33eee4ab2435fc3d3e3d.jpg</url>
            <link>https://paragraph.com/@news.buidlguidl</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[Solidity Tinkering w/Scaffold-ETH]]></title>
            <link>https://paragraph.com/@news.buidlguidl/solidity-tinkering-w-scaffold-eth</link>
            <guid>YLFhCq30rvy6oBhPgN9g</guid>
            <pubDate>Mon, 09 Jan 2023 17:44:35 GMT</pubDate>
            <description><![CDATA[🏗 Scaffold-ETH is a Decentralized Application(dApp) toolkit to learn and build on Ethereum without the overhead of setting up every piece of the application yourself. You can use Scaffold-ETH to learn about Solidity by taking the initial YourContract.sol smart contract & start iterating on it by adding more complex concepts onto it. Below are some quests to follow along. You can also check out the BG Labs video on Solidity Deep Dive over here. 👇 1. Getting started with Scaffold-ETH: Add tot...]]></description>
            <content:encoded><![CDATA[<p>🏗 <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/scaffold-eth/scaffold-eth/tree/master"><strong>Scaffold-ETH</strong></a> is a Decentralized Application(dApp) toolkit to learn and build on Ethereum without the overhead of setting up every piece of the application yourself.</p><p>You can use Scaffold-ETH to learn about Solidity by taking the initial <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/scaffold-eth/scaffold-eth/blob/master/packages/hardhat/contracts/YourContract.sol"><em>YourContract.sol</em></a> smart contract &amp; start iterating on it by adding more complex concepts onto it. Below are some quests to follow along.</p><p>You can also check out the BG Labs video on Solidity Deep Dive over <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.youtube.com/watch?v=-qAtRhVDMfM&amp;ab_channel=AustinGriffith">here</a>. 👇</p><div data-type="youtube" videoId="-qAtRhVDMfM">
      <div class="youtube-player" data-id="-qAtRhVDMfM" style="background-image: url('https://i.ytimg.com/vi/-qAtRhVDMfM/hqdefault.jpg'); background-size: cover; background-position: center">
        <a href="https://www.youtube.com/watch?v=-qAtRhVDMfM">
          <img src="{{DOMAIN}}/editor/youtube/play.png" class="play"/>
        </a>
      </div></div><hr><h2 id="h-1-getting-started-with-scaffold-eth-add-totalcounter" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">1. Getting started with Scaffold-ETH: Add totalCounter</h2><ul><li><p>Spin up <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/scaffold-eth/scaffold-eth/tree/master">Scaffold-ETH</a>. Check out the Burner wallet, get funds for your wallet, and try out the example UI and contract component page.</p></li></ul><p><strong>Exercise:</strong> Add a counter called &apos;totalCounter&apos; to your smart Contract that keeps track of how many times the purpose changes.</p><pre data-type="codeBlock" text="uint256 public totalCounter;

function setPurpose(string memory newPurpose) public payable {
    totalCounter += 1;
    // ....
}
"><code><span class="hljs-keyword">uint256</span> <span class="hljs-keyword">public</span> totalCounter;

<span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">setPurpose</span>(<span class="hljs-params"><span class="hljs-keyword">string</span> <span class="hljs-keyword">memory</span> newPurpose</span>) <span class="hljs-title"><span class="hljs-keyword">public</span></span> <span class="hljs-title"><span class="hljs-keyword">payable</span></span> </span>{
    totalCounter <span class="hljs-operator">+</span><span class="hljs-operator">=</span> <span class="hljs-number">1</span>;
    <span class="hljs-comment">// ....</span>
}
</code></pre><h2 id="h-2-array-of-structs" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">2. Array of Structs</h2><p><em>Structs</em>: Structs are a data type that allows you to group related data together. <em>Mappings</em>: A mapping is a data type that associates values with keys and stores them. Mappings cannot be looped over. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://solidity-by-example.org/app/iterable-mapping/">Here&apos;s</a> how you can iterate through a mapping.</p><p><strong>Exercise:</strong> We want to store all the purposes sent by a given address and the block timestamp. We need a Struct &amp; a mapping with an array of those structs. Go to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://solidity-by-example.org/">Solidity by example</a>, copy/paste and modify.</p><pre data-type="codeBlock" text="struct PurposeSubmission {
    string text;
    uint256 timestamp;
}

mapping(address =&gt; PurposeSubmission[]) public userSubmissions;

function setPurpose(string memory newPurpose) public payable {
    userSubmissions[msg.sender].push(PurposeSubmission(newPurpose, block.timestamp));
    // ....
}
"><code><span class="hljs-keyword">struct</span> <span class="hljs-title">PurposeSubmission</span> {
    <span class="hljs-keyword">string</span> text;
    <span class="hljs-keyword">uint256</span> timestamp;
}

<span class="hljs-keyword">mapping</span>(<span class="hljs-keyword">address</span> <span class="hljs-operator">=</span><span class="hljs-operator">></span> PurposeSubmission[]) <span class="hljs-keyword">public</span> userSubmissions;

<span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">setPurpose</span>(<span class="hljs-params"><span class="hljs-keyword">string</span> <span class="hljs-keyword">memory</span> newPurpose</span>) <span class="hljs-title"><span class="hljs-keyword">public</span></span> <span class="hljs-title"><span class="hljs-keyword">payable</span></span> </span>{
    userSubmissions[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>].<span class="hljs-built_in">push</span>(PurposeSubmission(newPurpose, <span class="hljs-built_in">block</span>.<span class="hljs-built_in">timestamp</span>));
    <span class="hljs-comment">// ....</span>
}
</code></pre><h2 id="h-3-inheritance" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">3. Inheritance</h2><p>Inheritance allows us to override or extend the behavior of the original contract. The most common use case is inheriting from battle-tested 3rd party contracts (like OpenZeppelin); these are audited and commonly used contracts.</p><p><strong>Exercise:</strong> Inherit the OpenZeppelin Ownable Contract. Check all the new functions/variables that appear in the UI.</p><pre data-type="codeBlock" text="contract YourContract is Ownable {...}
"><code><span class="hljs-class"><span class="hljs-keyword">contract</span> <span class="hljs-title">YourContract</span> <span class="hljs-keyword">is</span> <span class="hljs-title">Ownable</span> </span>{...}
</code></pre><p><em>We&apos;ll come back to the </em><strong><em>owner</em></strong><em> that comes with the Ownable contract.</em></p><p><strong>Exercise:</strong> Solidity supports multiple inheritances. On the same Contract, inherit the OpenZeppelin Pausable contract as well.</p><pre data-type="codeBlock" text="import &quot;@openzeppelin/contracts/security/Pausable.sol&quot;;

contract YourContract is Ownable, Pausable {...}
"><code><span class="hljs-keyword">import</span> <span class="hljs-string">"@openzeppelin/contracts/security/Pausable.sol"</span>;

<span class="hljs-class"><span class="hljs-keyword">contract</span> <span class="hljs-title">YourContract</span> <span class="hljs-keyword">is</span> <span class="hljs-title">Ownable</span>, <span class="hljs-title">Pausable</span> </span>{...}
</code></pre><h2 id="h-4-deploy-script" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">4. Deploy script</h2><p>The deploy script is where we prepare our contract for deployment (arguments, one-time tx after deploy, etc). You can edit your deployment scripts in <code>packages/hardhat/deploy</code></p><p><strong>Exercise:</strong> Call transferOwnership from the deploy script.</p><pre data-type="codeBlock" text="await YourContract.transferOwnership(
  &quot;FRONTEND_ADDRESS_HERE&quot;
);
"><code>await YourContract.transferOwnership(
  <span class="hljs-string">"FRONTEND_ADDRESS_HERE"</span>
);
</code></pre><p><strong>Exercise:</strong> transferOwnership from the constructor.</p><pre data-type="codeBlock" text="// contract
constructor(address _initialOwner) payable {
    Ownable._transferOwnership(_initialOwner);
}
"><code><span class="hljs-comment">// contract</span>
<span class="hljs-function"><span class="hljs-keyword">constructor</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> _initialOwner</span>) <span class="hljs-title"><span class="hljs-keyword">payable</span></span> </span>{
    Ownable._transferOwnership(_initialOwner);
}
</code></pre><pre data-type="codeBlock" text="// deploy script
await deploy(&quot;YourContract&quot;, {
  //..
  args: [&quot;FRONTEND_ADDRESS_HERE&quot;],
  //..
});
"><code><span class="hljs-comment">// deploy script</span>
<span class="hljs-function">await <span class="hljs-title">deploy</span><span class="hljs-params">(<span class="hljs-string">"YourContract"</span>, {
  <span class="hljs-comment">//..</span>
  args: [<span class="hljs-string">"FRONTEND_ADDRESS_HERE"</span>],
  <span class="hljs-comment">//..</span>
})</span></span>;
</code></pre><h2 id="h-5-new-contract-contract-interaction" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">5. New Contract + Contract Interaction</h2><p>You can have multiple contracts on your project and look into contract to contract interaction.</p><p><strong>Exercise:</strong> Create a new contract called <strong>WithdrawerContract</strong> to get money from our PurposeContract.</p><ol><li><p>Create the Contract</p><pre data-type="codeBlock" text="pragma solidity &gt;=0.8.0 &lt;0.9.0;
//SPDX-License-Identifier: MIT

// Create a blueprint first
contract WithdrawerContract {
    function withdrawFrom(address _contractAddress) public {
        //
    }

    // to support receiving ETH by default
    receive() external payable {}
    fallback() external payable {}
}
"><code><span class="hljs-meta"><span class="hljs-keyword">pragma</span> <span class="hljs-keyword">solidity</span> >=0.8.0 &#x3C;0.9.0;</span>
<span class="hljs-comment">//SPDX-License-Identifier: MIT</span>

<span class="hljs-comment">// Create a blueprint first</span>
<span class="hljs-class"><span class="hljs-keyword">contract</span> <span class="hljs-title">WithdrawerContract</span> </span>{
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">withdrawFrom</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> _contractAddress</span>) <span class="hljs-title"><span class="hljs-keyword">public</span></span> </span>{
        <span class="hljs-comment">//</span>
    }

    <span class="hljs-comment">// to support receiving ETH by default</span>
    <span class="hljs-function"><span class="hljs-keyword">receive</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> <span class="hljs-title"><span class="hljs-keyword">payable</span></span> </span>{}
    <span class="hljs-function"><span class="hljs-keyword">fallback</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> <span class="hljs-title"><span class="hljs-keyword">payable</span></span> </span>{}
}
</code></pre></li><li><p>Create a new deploy script to deploy the Withdrawer Contract.</p><pre data-type="codeBlock" text="module.exports = async ({ getNamedAccounts, deployments }) =&gt; {
  const { deploy } = deployments;
  const { deployer } = await getNamedAccounts();

  await deploy(&quot;WithdrawerContract&quot;, {
    from: deployer,
    log: true,
    waitConfirmations: 5,
  });
};
module.exports.tags = [&quot;withdrawFrom&quot;];
"><code>module.exports <span class="hljs-operator">=</span> async ({ getNamedAccounts, deployments }) <span class="hljs-operator">=</span><span class="hljs-operator">></span> {
  const { deploy } <span class="hljs-operator">=</span> deployments;
  const { deployer } <span class="hljs-operator">=</span> await getNamedAccounts();

  await deploy(<span class="hljs-string">"WithdrawerContract"</span>, {
    <span class="hljs-keyword">from</span>: deployer,
    log: <span class="hljs-literal">true</span>,
    waitConfirmations: <span class="hljs-number">5</span>,
  });
};
module.exports.tags <span class="hljs-operator">=</span> [<span class="hljs-string">"withdrawFrom"</span>];
</code></pre></li><li><p>Add the Withdrawer Contract to the UI on `App.jsx`</p><pre data-type="codeBlock" text="  &lt; Contract
    name=&quot;WithdrawerContract&quot;
    price={price}
    signer={userSigner}
    provider={localProvider}
    address={address}
    blockExplorer={blockExplorer}
    contractConfig={contractConfig}
  /&gt;
"><code>  &#x3C; Contract
    <span class="hljs-attr">name</span>=<span class="hljs-string">"WithdrawerContract"</span>
    <span class="hljs-attr">price</span>={price}
    <span class="hljs-attr">signer</span>={userSigner}
    <span class="hljs-attr">provider</span>={localProvider}
    <span class="hljs-attr">address</span>={address}
    <span class="hljs-attr">blockExplorer</span>={blockExplorer}
    <span class="hljs-attr">contractConfig</span>={contractConfig}
  />
</code></pre></li><li><p>Implement a withdraw function on the Purpose contract &amp; try to call it from the UI.</p><pre data-type="codeBlock" text="function withdraw() public {
    require(msg.sender != tx.origin, &quot;Not a contract&quot;);

    (bool sent,) = msg.sender.call{value: address(this).balance}(&quot;&quot;);
    require(sent, &quot;Failed to send Ether&quot;);
}
"><code><span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">withdraw</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">public</span></span> </span>{
    <span class="hljs-built_in">require</span>(<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span> <span class="hljs-operator">!</span><span class="hljs-operator">=</span> <span class="hljs-built_in">tx</span>.<span class="hljs-built_in">origin</span>, <span class="hljs-string">"Not a contract"</span>);

    (<span class="hljs-keyword">bool</span> sent,) <span class="hljs-operator">=</span> <span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>.<span class="hljs-built_in">call</span>{<span class="hljs-built_in">value</span>: <span class="hljs-keyword">address</span>(<span class="hljs-built_in">this</span>).<span class="hljs-built_in">balance</span>}(<span class="hljs-string">""</span>);
    <span class="hljs-built_in">require</span>(sent, <span class="hljs-string">"Failed to send Ether"</span>);
}
</code></pre></li><li><p>Contract to Contract call on WithdrawerContract</p><pre data-type="codeBlock" text="interface IYourContract {
    function withdraw() external;
}

contract WithdrawerContract {
    function withdrawFrom(address _contractAddress) public {
        IYourContract(_contractAddress).withdraw();
    }

    // ...
}
"><code><span class="hljs-class"><span class="hljs-keyword">interface</span> <span class="hljs-title">IYourContract</span> </span>{
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">withdraw</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span></span>;
}

<span class="hljs-class"><span class="hljs-keyword">contract</span> <span class="hljs-title">WithdrawerContract</span> </span>{
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">withdrawFrom</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> _contractAddress</span>) <span class="hljs-title"><span class="hljs-keyword">public</span></span> </span>{
        IYourContract(_contractAddress).withdraw();
    }

    <span class="hljs-comment">// ...</span>
}
</code></pre></li></ol><hr><p>Hope this was helpful! These were some sample tasks &amp; you can continue to try out new concepts from <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://solidity-by-example.org/">Solidity by example</a> with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/scaffold-eth/scaffold-eth/tree/master">Scaffold-ETH</a>. Next up, why not take on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://speedrunethereum.com/">SpeedRunEthereum</a>! 😉</p>]]></content:encoded>
            <author>news.buidlguidl@newsletter.paragraph.com (BuidlGuidl)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/297c2aafbb09c297ddd2df9814fc692fd1c3c06b6dbf8f84ebb3e629dec12c54.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[BuidlGuidl FAQ]]></title>
            <link>https://paragraph.com/@news.buidlguidl/buidlguidl-faq</link>
            <guid>2UX4WmGNgIqZCiIytfI5</guid>
            <pubDate>Mon, 05 Dec 2022 16:01:22 GMT</pubDate>
            <description><![CDATA[BuidlGuidl is a group of builders that build tools with Scaffold-ETH, meet & learn together. The goal is to empower builders to create resources and prototypes for the Ethereum ecosystem 🌟What projects are built by the BuidlGuidl?It&apos;s all about building forkable components with Scaffold-ETH. You can make a new voting system component, work on the open issues, make a new challenge for SpeedRunEthereum, etc. Make sure to have a well-written README so anyone can easily set it up. In other ...]]></description>
            <content:encoded><![CDATA[<p><strong><em>BuidlGuidl is a group of builders that build tools with Scaffold-ETH, meet &amp; learn together. The goal is to empower builders to create resources and prototypes for the Ethereum ecosystem 🌟</em></strong></p><h3 id="h-what-projects-are-built-by-the-buidlguidl" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">What projects are built by the BuidlGuidl?</h3><p>It&apos;s all about building forkable components with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/scaffold-eth/scaffold-eth">Scaffold-ETH</a>. You can make a new voting system component, work on the open issues, make a new challenge for SpeedRunEthereum, etc. Make sure to have a well-written README so anyone can easily set it up.</p><p>In other words, builders have the flexibility to choose the projects they want to work on. There isn&apos;t a specific job description or app to complete; it&apos;s really up to your interest and creativity. For example, if you&apos;re interested in Ceramic, you can integrate Ceramic and Scaffold-ETH; if you want to work on a new SVG NFT game, you can do that.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/2d76ecd0d4d9ced82f614ea2f51c906452401531e8a870da261895695616b92f.png" alt="More on https://buidlguidl.com/builds" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">More on https://buidlguidl.com/builds</figcaption></figure><h3 id="h-how-to-join-the-buidlguidl" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">How to join the BuidlGuidl?</h3><p>You can join BuidlGuidl after completing the first 4 challenges on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://speedrunethereum.com/">SpeedRunEthereum</a>.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/8576299bd438ac98011dfcf1a16175f2bf3bc86d1c5985429aff52748ba15ca1.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>After building forkable Scaffold-ETH components, submitting them to your Builder profile, and being active in the BuidlGuidl Telegram groups, you can also get the opportunity of a BuidlGuidl Stream.</p><h3 id="h-what-is-a-buidlguidl-stream" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">What is a BuidlGuidl Stream?</h3><p>Active contributors can get a BuidlGuidl stream to earn money for building cool things.</p><p>This is a smart contract where the builder can withdraw ETH after submitting some work. The stream is set to a certain amount of ETH per 30 days. This is the total amount the builder can withdraw in a time period of 30 days. The amount is unlocked during the month, and the streams are re-filled periodically.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/9c14a6b75904f1551049d5436a41cde6432ef93c0e9c7ea04d5713c7092a62aa.png" alt="Builder Stream of 1.5ETH per 30 days" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Builder Stream of 1.5ETH per 30 days</figcaption></figure><p>You can see all the builder profiles on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://buidlguidl.com">buidlguidl.com</a>; you&apos;ll find there the projects builders have submitted and how much they withdrew from the steam.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/dd05f73564ba0967e55e707fcef4b37210034cb43300b593aa2c61cfb419368c.png" alt="Builder profiles on https://buidlguidl.com/" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Builder profiles on https://buidlguidl.com/</figcaption></figure><h3 id="h-how-to-get-a-buidlguidl-stream" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">How to get a BuidlGuidl Stream?</h3><p>Start by completing the first 4 challenges on speedrunethereum.com, which allows you to join the BuidlGuidl. From there, start building!</p><p>Create your own projects to help the ecosystem, start helping on the Github repositories, and/or help others in the BuidlGuidl Telegram channels. Help enough and you may get some small scholarships paid in ETH. Do enough good work and you&apos;ll get your own stream!</p><p>You can see all the builders with an active stream on the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://buidlguidl.com">BG website</a>.</p><h3 id="h-how-to-withdraw-from-your-stream" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">How to withdraw from your stream?</h3><p>First, once you&apos;ve done some work, you can submit the project details on your profile page on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://buidlguidl.com">buidlguidl.com</a>.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/7f2b86cdf47d5571f17fb694299f5381c8e5d676c0bebbc1d7f4a4d90a3bc356.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Then you can withdraw some ETH from your stream. When you click “<em>withdraw</em>,“ you are asked to state the reason &amp; provide relative links for the work.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/44688c3d64de1ed7e646ced73f9dbb49ae86e37c2d60c50738002857f9eca21e.png" alt="Add the links and details for the work you&apos;ve completed" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Add the links and details for the work you&apos;ve completed</figcaption></figure><h3 id="h-how-much-should-i-withdraw-from-my-stream-for-my-workbuild" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">How much should I withdraw from my stream for my work/build?</h3><p>It can feel weird to price your work as a builder, but looking at other builder profiles can be very helpful. For example, you can look at similar projects and how much the builders have withdrawn. Also, feel free to reach out to the core team for similar projects to understand how much to withdraw.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/22dd153e54115f6ab09042b38447acee9431172419b1663db1170304fec934f7.png" alt="Builders stream withdraws and details" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Builders stream withdraws and details</figcaption></figure><h3 id="h-how-can-i-choosedecide-what-to-work-on" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">How can I choose/decide what to work on?</h3><p>If you have a project in mind, for example, a protocol you&apos;re interested in, you can go ahead and build your idea. There are also lots of opportunities to learn about new ideas and join projects looking for builders.</p><h3 id="h-where-can-i-ask-for-help" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Where can I ask for help?</h3><p>Make sure to join the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://t.me/+PXu_P6pps5I5ZmUx">BG Townhall Telegram</a> group, each SpeedRunEthereum challenge also has its telegram group for specific questions about the challenge. When you join the BuidlGuidl, you also gain access to other developer groups.</p><h3 id="h-where-can-i-follow-buidlguidl" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Where can I follow BuidlGuidl?</h3><p>Here are the resources to keep up to date:</p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://buidlguidl.com/">Buidlguidl.com</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://speedrunethereum.com/">Speedrunethereum.com</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://t.me/+PXu_P6pps5I5ZmUx">BG Townhall Telegram</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://buildguidl.substack.com/">Newsletter</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://twitter.com/buidlguidl">BG Twitter</a></p></li></ul>]]></content:encoded>
            <author>news.buidlguidl@newsletter.paragraph.com (BuidlGuidl)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/038ae3c2d642c3a9a1510b14c1a417516afa6ff621e7cbb5a6c9c3f75ec393ea.jpg" length="0" type="image/jpg"/>
        </item>
    </channel>
</rss>