Building production infrastructure across 8+ chains β solo, grant-funded, shipped.
Full stack and blockchain developer with a focus on developer tooling, DeFi protocol engineering, and smart contract security. I build end-to-end β TypeScript CLI tools, Python SDKs, React frontends, Solidity/Clarity/Rust smart contracts, and backend indexers β and I ship independently without a team.
Grant recipient from Arbitrum and the Stacks Foundation. Active security researcher with 15+ confirmed findings across Sherlock, Code4rena, and Immunefi. I audit the same protocols I know how to build, which means I find what others miss.
Languages: TypeScript Β· Python Β· Solidity Β· Rust Β· Clarity Β· Cairo Β· Move Β· JavaScript
Frameworks: Node.js Β· React Β· Next.js Β· Hardhat Β· Foundry Β· Anchor Β· web3.py Β· viem
Chains: Ethereum Β· Arbitrum Β· Solana Β· Stacks Β· Rootstock Β· Polkadot Β· Starknet Β· BNB Β· Aptos
Stylus-Toolkit β npm install -g stylus-toolkit
CLI development environment for Arbitrum Stylus (Rust) smart contracts. Think Hardhat, but for Stylus.
Arbitrum grant-approved. Shipped both milestones. 224 NPM downloads.
stylus-toolkit init --name my-token --template erc20
stylus-toolkit build
stylus-toolkit profileββββββββββββββββββββββββ¬βββββββββββββββ¬βββββββββββββββ¬βββββββββββββ¬βββββββββ
β Function β Rust (Stylus)β Solidity β Savings β % β
ββββββββββββββββββββββββΌβββββββββββββββΌβββββββββββββββΌβββββββββββββΌβββββββββ€
β read β 5,000 β 6,000 β 1,000 β 16.67% β
β write β 12,000 β 20,000 β 8,000 β 40.00% β
β compute β 8,000 β 15,000 β 7,000 β 46.67% β
β oracle β 75,000 β 103,000 β 28,000 β 27.18% β
β Avg per-call β - β - β - β 32.6% β
ββββββββββββββββββββββββ΄βββββββββββββββ΄βββββββββββββββ΄βββββββββββββ΄βββββββββ
β
32.6% average gas savings proven Β· 26%+ full TCO savings
What it does: init with 4 templates (basic, ERC20, ERC721, DeFi) Β· build to WASM Β· profile for side-by-side Rust vs Solidity gas benchmarks Β· dashboard analytics web UI Β· dev one-command Docker testnet Β· deploy to local / Arbitrum Sepolia / Arbitrum One
Stack: TypeScript Β· Node.js Β· Rust Β· Docker Β· GitHub Actions CI
MCP framework that lets AI agents autonomously manage DeFi positions on Rootstock/Bitcoin β with policy enforcement and session-scoped spend limits.
MCP Client (Claude / any AI)
β
βΌ
MCP Server (5 tools)
βββ get_protocol_data β Money on Chain + Tropykus RPC
βββ simulate_swap β viem call/estimateGas (no broadcast)
βββ execute_intent β Session validation β Policy engine β sendRawTransaction
βββ get_position_health β Tropykus health factor
βββ get_wallet_balances β RBTC + ERC-20 balances
5 hard-coded policy rules block every unsafe action before broadcast β zero-address transfers, selfdestruct calls, single-tx values over 10 RBTC, spend cap overflows, and non-whitelisted contracts. Every decision (allow or deny) is written to an audit log.
Protocol integrations: Money on Chain (MoCState β BTC price, coverage ratio, BPRO/DOC rates) Β· Tropykus (Compound fork β supply/borrow APY, per-account health factor)
Stack: TypeScript Β· @modelcontextprotocol/sdk Β· viem Β· zod Β· tsup Β· Node.js β₯ 20
Rootstock-Python-SDK β pip install rootstock-sdk
Python SDK for the Rootstock (RSK) blockchain β wallet management, ERC-20 tokens, smart contracts, RNS domain resolution.
from rootstock import RootstockProvider, Wallet, ERC20Token
provider = RootstockProvider.from_mainnet()
wallet = Wallet.from_private_key("0x...", chain_id=30)
# ERC-20 in 3 lines
rif = ERC20Token.from_symbol(provider, "RIF")
print(rif.balance_of_human(wallet.address)) # "150.5"
receipt = rif.transfer(wallet, to="0x...", amount=100 * 10**18)
# EIP-1191 Rootstock-specific checksum
addr = to_checksum_address("0x5aaeb6...", chain_id=30)Covers: Wallet create/import/encrypt Β· RBTC transfers Β· ERC-20 (balance, transfer, approve) Β· arbitrary contract call/transact Β· RNS forward + reverse resolution Β· gas estimation Β· mainnet and testnet
Stack: Python β₯ 3.10 Β· web3.py Β· eth-account Β· pytest Β· ruff Β· PyPI published
Non-custodial sBTC yield optimizer on Stacks β compare live APY across Bitflow, ALEX, Zest, Velar, and Hermetica; rebalance in one atomic Clarity call.
;; vault.clar β core deposit/withdraw, 5% performance fee on yield only
(define-public (deposit (amount uint)))
(define-public (withdraw (amount uint)))
(define-read-only (get-position (user principal)))
(define-read-only (get-accrued-yield (user principal)));; yield-source trait β every protocol adapter implements this
(define-trait yield-source-trait
((get-current-apy () (response uint uint))
(deposit-sbtc (uint) (response bool uint))
(withdraw-sbtc (uint) (response bool uint))))Adding a new protocol = one new adapter contract. Core vault never changes.
Architecture: contracts/ (Clarity 4: vault, yield-tracker, rebalancer, trait) Β· indexer/ (Node.js + TypeScript APY fetchers for each protocol, Express API) Β· frontend/ (React + Stacks.js, Leather + Xverse wallet connection, YieldTable, PositionCard, RebalanceModal)
Stack: Clarity 4 Β· Clarinet Β· TypeScript Β· React Β· Stacks.js Β· Vercel + Railway Β· Stacks Foundation grant
| Project | What | Status |
|---|---|---|
| Stylus-Toolkit β 20 | CLI toolchain for Arbitrum Stylus β build, profile, deploy | β Live on NPM Β· Arbitrum grant Β· Both milestones shipped |
| Rootstock-Agentic-DeFi-Framework | AI agent DeFi execution layer on Rootstock/Bitcoin | β Active |
| Rootstock-Python-SDK | Python SDK for RSK β wallets, ERC-20, contracts, RNS | β Published on PyPI |
| satoshi-yield | sBTC yield optimizer on Stacks | π In development Β· Stacks Foundation grant |
15+ confirmed findings across Sherlock, Code4rena, Cantina, and Immunefi. The same protocol knowledge that lets me build DeFi tooling also lets me find what breaks it.
| Severity | Protocol | Finding | Platform |
|---|---|---|---|
| π΄ High | SuperDCA | Missing reward claiming mechanism β users permanently lose yield | Sherlock |
| π΄ High | SukukFi | Cross-vault share fungibility breaks fund isolation | Sherlock |
| π΄ High | Threshold Network | Force-decrease authorization logic inversion β unauthorized stake slashing | Immunefi |
| π‘ Medium | Merkl | Pre-deposit double-spend β campaign rewards claimable before funding | Sherlock |
| π‘ Medium | SukukFi | KYC fund lock β compliant users permanently locked out | Sherlock |
| π‘ Medium | Inverse Finance | DOS at MIN_ASSETS in jDOLA vault β deposits permanently frozen |
Sherlock |
| π‘ Medium | Brix Money | Cooldown stacking bypass β withdrawal delay circumventable | Sherlock |
| π‘ Medium | LicenseToken | IP derivative registration DOS via gas exhaustion | Cantina |
Rankings: #45 Ammplify Β· #48 Super DCA on Sherlock
Languages
Frameworks & Tooling
Chains
Security reviews Β· Protocol audits Β· Full stack / backend / blockchain engineering roles Β· Ecosystem grants Β· Dev tooling collaborations



