2. useMemo — runs calculateTotal live as user types amounts. Only re-runs when input changes.
3. 9 unit tests with Vitest — commas ✓ newlines ✓ decimals ✓ empty strings ✓ non-numbers ✓ Why test so thoroughly? Because calculateTotal determines how many tokens go on-chain.
Big session today. Three things shipped 🧵👇
1. readContract — fetched ERC20 allowance inside handleSubmit using wagmi core (not the hook). Know when to use each. Hook = reactive UI. Core = you control when it fires.
🔥#Web3#wagmi#BuildInPublic#LearningInPublic@CyfrinUpdraft
Built the airdrop form today with AI
✅ Simple UI? Let AI draft it. Review it. Ship it.
⚠️ Complex logic + blockchain?
What I built:
→ Reusable InputField component (AI)
→ AirdropForm with 3 useState hooks (me)
→ tokenAddress + recipients + amounts — all controlled inputs
Added RainbowKit to my Web3 dApp today 🌈
Key lesson: it's not just about the connect button
→ Wrap app in WagmiProvider
→ QueryClientProvider
→ RainbowKitProvider
→ Configure your chains
→ Store your projectId in .env
@CyfrinUpdraft#BuildInPublic#RainbowKit#Web3
4/ This is the part they don't tell beginners about Web3 frontend dev — you're not just building UI. You're building a bridge between users and a blockchain.
In building full-stack web3 projects, most people want to start coding immediately.
Follow along if you're learning Web3. We're just getting started. ⚡
I've learned to read the contract first. Here's why 🧵👇
#Web3#BuildInPublic#ERC20@CyfrinUpdraft
Yeppp, this is what I do.
I build websites & mobile applications for businesses — turning ideas into fast, functional, and beautiful digital products.
Got a design? I collaborate with UI/UX designers to bring your vision to life, pixel-perfect, using clean code.
→ Built get balance + withdraw functions using viem's PublicClient
→ Fund, getBalance & withdraw all follow the same pattern once it clicks → Migrated the whole project from JS to TypeScript with Vite
Debugging is part of the process.
Section 3 next⚡
#LearningInPublic#Web3
Web3 dev log — Section 2 done ✅
Highlights from today:
→ Hit a real bug: MetaMask kept connecting to Ethereum instead of my local Anvil chain — no funds, no transactions. Fixed it by switching networks manually and using Anvil's test accounts
#Web3@CyfrinUpdraft
Web3 dev log 🧵
Today I learned:
→ Always detect the user's chain before sending any transaction
→ Simulate transactions with viem before executing —catch errors before they cost gas
→ Use Anvil as a local blockchain to test your frontend
#Web3#LearningInPublic#Blockchain
I called requestAddresses() to trigger the MetaMask popup.
It worked. I clicked "Connect."
But I never saved what it returned.
So my app knew MetaMask existed... but had zero idea WHICH wallet just connected 🫠
I built a Web3 app today. The button said "Connected" ✅ MetaMask had no idea I existed 💀
One missing line of JavaScript.
This is what learning blockchain actually looks like 🧵
48 Followers 184 FollowingCreative graphic designer with a passion for crafting visual identities that stand out. I help brands communicate clearly through clean, strategic, and scroll-s
4 Followers 22 FollowingWeb Developer specializing in modern, responsive websites.
I help businesses and individuals build fast, user-friendly web experiences.
3K Followers 332 FollowingWeb3 Research & Investment Analysis
BD @VictusGlobal_+ partners.
Helping founders grow & investors find the next big gem
Building @DeFiFoundry | Dm for collab
3K Followers 332 FollowingWeb3 Research & Investment Analysis
BD @VictusGlobal_+ partners.
Helping founders grow & investors find the next big gem
Building @DeFiFoundry | Dm for collab
192 Followers 586 FollowingBarcelona pase Valencia how many emotions have we stopped feeling for fear of being hurt how many truths have we kept silent like cowards
25K Followers 5 FollowingTeaching the next generation of web3 developers.
150+ hours of Smart Contract Development and Security Courses, completely for Free.
Powered by @cyfrin
590 Followers 776 FollowingTrading the blockchain waves 🌊 | Head of Growth & Community $HashPlayApp | Turning communities into ecosystems | CLIPSTERGG 067217
162K Followers 2K FollowingA platform for everyone, everywhere. on everything. Delivering real-time market intelligence across all assets. Investment offering: https://t.co/phP4BMU406