Product family · Long-term ownership
02 / 12
BiFi
A lending product family that grew from a single-chain app into cross-chain lending, leveraged positions, analytics, and years of production operation.
- Role
- Frontend Lead · Primary Frontend Owner
- Problem
- The hardest problem was evolving the product across frontend generations without losing consistent transaction meaning or allowing stale visible state to produce an incorrect action.
- Strategy
- Each generation keeps product journeys separate from account, position, transaction, and integration state. Cross-network actions bind the active wallet, networks, assets, amount, and position into an execution context, then reconcile bridge, contract, and portfolio stages instead of treating one receipt as the entire result.
- Outcome
- Expanded BiFi from the original lending application into cross-chain lending, leveraged positions, analytics, and governance experiences.
01
Problem definition
Why this problem had to be solved
BiFi lets people supply assets, borrow, repay, and manage positions. Over time it expanded into cross-chain lending, leveraged positions, analytics, governance, and shared bridge foundations.
What users and the system were facing
Wallets, network selection, approval, supply, borrow, repay, and withdrawal were unfamiliar to many early DeFi users.
Positions, leveraged strategies, analytics, governance assets, markets, and execution rules expanded across multiple networks and frontend generations.
The visible wallet and position context had to remain consistent with the transaction a user was about to sign.
Frontend ownership
I led and owned most of the frontend across core and Cross-chain BiFi, BiFi-X, Owly, governance, bridge, and shared currency systems.
Vue and Next.js application architecture across product generations
Lending, leveraged position, analytics, governance, staking, rewards, market, and cross-chain experiences
Wallet, asset, network, bridge, SDK, API, and contract boundaries
Transaction state, history, localization, observability, E2E, and maintenance
02
Solution strategy
A system strategy carried into production
Each generation keeps product journeys separate from account, position, transaction, and integration state. Cross-network actions bind the active wallet, networks, assets, amount, and position into an execution context, then reconcile bridge, contract, and portfolio stages instead of treating one receipt as the entire result.
System model
Core lending and Cross-chain BiFi connect account and position state to asset-pair, bridge, API, contract, and portfolio adapters while shared foundations keep wallet and asset behavior consistent.
Product evidence
Selected product surfaces
Historical product interfaces. Values shown are captured UI states, not current TVL, APY, or performance claims.



Product and delivery map
Seven directly owned product surfaces
BiFi evolved through lending, cross-chain execution, leveraged positions, analytics, governance, and shared infrastructure. Cross-chain BiFi leads this map as the latest public generation.
Latest product generation
Cross-chain BiFi
The Next.js frontend lets users supply native assets on one network and borrow on another while keeping wallet, bridge, contract, and portfolio state aligned.
Implementation details · 2
- Built supply, withdrawal, borrow, repay, claim, market, and reward experiences around cross-network asset pairs.
- Invalidated stale execution context when wallet, network, asset, amount, or position inputs changed.
Original product foundation
Core BiFi application
The original Vue application introduced supply, borrow, repay, withdrawal, pools, staking, rewards, markets, wallets, and multi-network positions.
Implementation details · 2
- Built and maintained most of the application architecture and core financial flows.
- Centralized account, network, position, transaction, localization, and history state.
Active contracts · Private frontend
BiFi-X
BiFi-X uses BiFi lending and flash loans to create leveraged yield, long, and short positions in one transaction. Its contracts remain active while the frontend is operated privately.
Implementation details · 2
- Built and maintained the Vue frontend for strategy discovery, risk disclosure, position creation, monitoring, withdrawal, and rewards.
- Keep the frontend private rather than presenting an unavailable public UI; link only the public contract repository.
Position analytics
Owly
Owly exposed strategy discovery, address-based position tracking, rankings, and P&L analysis for leveraged BiFi positions.
Implementation details · 2
- Built product and analysis views around active and inactive positions, strategy cards, and time-series performance.
- Made complex reward, interest, asset, and position data comparable and exportable.
Token and governance operations
Governance frontend
A dedicated frontend supported gBiFi governance and token-management actions with wallet and contract execution.
Implementation details · 2
- Implemented the product surface and transaction flows around governance-related assets.
- Maintained wallet, chain, contract-signature, and policy compatibility over time.
Supporting frontend systems
Bridge and shared foundations
Dedicated bridge flows and a shared currency layer helped keep wallet, token, network, signature, and amount behavior consistent across the family.
Implementation details · 2
- Separated chain and token configuration from reusable interaction and transaction stages.
- Handled bridge requests, wallet state, signatures, and asset semantics through explicit integration layers.
Production stewardship
Long-term operation
The product family has required sustained framework, dependency, wallet, API, RPC, observability, privacy, and security maintenance.
Implementation details · 2
- Hardened fallbacks, error classification, privacy scrubbing, and wallet-extension noise filtering.
- Maintained critical flows across evolving networks, browser wallets, and frontend generations.
Implementation decisions
Built core supply, withdrawal, borrow, repay, pool, staking, reward, market, and claim flows.
Connected source-network supply with target-network borrowing and portfolio reconciliation.
Built BiFi-X position and Owly analysis experiences around leveraged strategies, risk, rewards, and P&L.
Derived executable context from current wallet, network, asset, amount, and position inputs, invalidating stale state before submission.
Separated wallet, bridge, API, RPC, contract, transaction, and portfolio stages while hardening Sentry observability and fallbacks.
03
Outcome
What changed—and what I learned
Expanded BiFi from the original lending application into cross-chain lending, leveraged positions, analytics, and governance experiences.
Maintained core lending and reward experiences through multiple frontend generations and years of production operation.
Established patterns later reused across cross-chain, BTCFi, DEX, and SDK work.
Learning
Long-term product ownership makes stale state, migration, and integration boundaries as important as the first implementation. A visible selection becomes a transaction-integrity concern when it can produce executable data.
Today
I would standardize the family on typed feature modules, immutable schema-validated execution snapshots, explicit cross-network state machines, query caching for remote state, and deterministic wallet, API, RPC, contract, and observer tests.
Built with
Work together