About
Mostly building things on-chain
Five years of writing Web2/Web3 software — smart contracts, the frontends that talk to them, and the small dev tools that make the whole stack less painful to ship.
Background
How I got here
I'm Emmanuel — Signor on the internet. Lagos-based, writing software programs since 2020. Most of my time has been on EVM (Solidity), Starknet (Cairo), and Sui (Move), with recent Rust stints on Soroban (Stellar) and Stylus (Arbitrum). On a typical week I'm switching between a contract editor, a Next.js app, and a PR review.
A lot of my open source comes out of friction I hit while building. suiclient-error-decoder started as a frustrated afternoon during the Sui Overflow hackathon — Move errors were unreadable, so I shipped a small library that turns them into something a human can actually debug. It's on npm now. Most of the upstream PRs you'll see on the home page came out of the same impulse: hit something annoying, fix it, open a PR.
Teaching is a long thread. Before I went all-in on Web3, I spent over two years at Kodex Africa in Lagos as Product Development Lead — leading a small dev team and running the frontend curriculum at the same time. 70+ students through HTML, CSS, JavaScript, and React. A handful are at tech firms now, a few started their own companies, and others are teaching at hubs of their own.
That experience carried over once I moved into Web3. I've designed and run smart-contract curricula at DLT Africa and Web3Bridge, mostly for engineers crossing into the space from Web2 themselves. Teaching keeps me honest — you can't hand-wave through a topic when twenty people are about to write code based on what you just said.
What I do
Day-to-day stack
Smart Contracts
Solidity on EVM, Cairo on Starknet, Move on Sui. Foundry and Hardhat day-to-day. I write tests that hit the protocol, not just the happy path.
DeFi Patterns
Built and broken AMMs, bonding curves, and bridges. UHI4 graduate; comfortable with Uniswap v4 hooks and Chainlink CCIP for cross-chain work.
Writing
Articles on Medium, READMEs I'd actually want to read, and inline comments that explain why instead of what.
Open Source
Merged PRs into ethereum-org-website, foundry-rs, cairo-book, alephium, and lambdaclass. Maintain suiclient-error-decoder on npm.
Frontend
Next.js, React 19, TypeScript, Tailwind. ethers, viem, and starknet.js on the chain side. The site you're reading is the latest iteration.
Dev Tooling
Small libraries born from problems I actually hit — onboarding wizards, error decoders, transaction explainers, the boring infra.
Programs
Where I've studied
Rust Masterclass
Aug 2025 - Dec 2025Four months on Rust, applied across Polkadot, Solana, Soroban, Stylus, and EVM (via Rust). Heaviest deep-dive I've done on a single language.
Uniswap Hook Incubator (UHI4)
Feb 2025 - Apr 2025Built PoolPlay as the capstone — a Uniswap v4 hook that drops a no-loss lottery into swaps. Mostly learned how nasty hook ordering and tick math get at scale. Certificate minted as an NFT on OpenSea.
CCIP Bootcamp Graduate
Aug 2024Built cross-chain message passing with CCIP. Spent most of the time on gas estimation and the failure modes nobody warns you about.
Starknet Basecamp Graduate
May 2024 - Jun 2024Cairo, Starknet.js, Dojo, and Starknet's account-abstraction model. The bootcamp that pulled me into the L2 world properly.