Intro to Foundry | The FASTEST Smart Contract Framework
Why Ethereum Stack Exchange recommends it
Ethereum Stack Exchange users point people to it as a beginner-friendly Foundry walkthrough, and several askers follow it step by step while building their first projects.
Recommended by 1 people across 1 different months, 2022 to 2024.
What it is
Patrick Collins builds a minimal Foundry project around a simple staking contract, walking through project setup, remappings and the basics of Foundry's Solidity-based workflow. It is a hands-on coding tutorial from March 2022 with a linked GitHub repo and the Foundry Book for further reading.
What people said
Recommends SYED ASAD KAZMI · 2024-03 · Ethereum Stack Exchange · on “Visual Studio Code”
Yes, you can certainly use Visual Studio Code Editor [LINK] for testing and debugging your smart contacts using tools like Foundry [LINK] (based purely on Solidity), Hardhat [LINK] (based on Javascript) etc., according to your preferences. I would recommend following Patrick Collins [LINK] ' amazing tutorials on his [LINK] , such as: Intro to Foundry | The FASTEST Smart Contract Framework [this video] Build and Deploy Smart Contracts using Hardhat [LINK] And, his entire playlists on: Blockchain Developer, Solidity, Foundry Full Course 2023 [LINK] Smart Contract Developer, Solidity, and Hardhat [LINK] Moreover, you can also join Cyfrin Updraft [LINK] for all of his amazing courses, and that too fo
Cites wojak2 · 2022-04 · Ethereum Stack Exchange · on “Importing openzeppelin contracts in foundry”
I was trying to follow this video [this video] and at 5:23 when he goes on to edit remappings - I have no "remappings" in foundry.tml. When I try to just put there what he put and run forge build i get: The application panicked (crashed). and Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it. Run with RUST_BACKTRACE=full to include source snippets. Aborted (core dumped) how can I make it work?
Cites Joona Ritva · 2022-05 · Ethereum Stack Exchange · on “Indexed expression has to be a type, mapping or array (is uint256)”
pragma solidity ^0.8.13; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; error TransferFailed(); contract StakeContract{ mapping(address => uint256) public s_balances; function stake(uint256 amount, address token) external returns(bool){ s_balances[msg.sender][token] += amount; bool success = IERC20(token).transferFrom(msg.sender, address(this),amount); if(!success) revert TransferFailed(); return success; } } what am I doing wrong? Im following a [this video]