You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Last year, I used the "truffle-ganache-web3.js" stack due to personal familiarity. (last time I wrote Solidity was early 2019... 🙃, so quite outdated myself)
However, the current norm among most prominent projects are switching to "waffle-hardhat-ethers.js" stack.
Even though there's nothing wrong with the original stack and it's ultimately a developer preference, I do believe it's important that we use the most modern tools to prepare our students.
So my brief justifications here: Why hardhat?: hardhat focus on debug experience with support like console logging within contract, stack tracing and a rich modular plugin for contract sizing, gas reporting etc. Why waffle?: light weight, less dependency, TypeScript support, faster, good integration with ethers.js Why ether.js: more modular than web3.js, better maintained
Read this doc for how to use these three in our stack
Last year, I used the "truffle-ganache-web3.js" stack due to personal familiarity. (last time I wrote Solidity was early 2019... 🙃, so quite outdated myself)
However, the current norm among most prominent projects are switching to "waffle-hardhat-ethers.js" stack.
Even though there's nothing wrong with the original stack and it's ultimately a developer preference, I do believe it's important that we use the most modern tools to prepare our students.
So my brief justifications here:
Why hardhat?: hardhat focus on debug experience with support like console logging within contract, stack tracing and a rich modular plugin for contract sizing, gas reporting etc.
Why waffle?: light weight, less dependency, TypeScript support, faster, good integration with ethers.js
Why ether.js: more modular than web3.js, better maintained
Read this doc for how to use these three in our stack
Links
(cc @sgsourav @GwynethAXY)
The text was updated successfully, but these errors were encountered: