-
Notifications
You must be signed in to change notification settings - Fork 640
Migration guide #1076
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jadonamite
wants to merge
30
commits into
Uniswap:main
Choose a base branch
from
jadonamite:Migration-Guide
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Migration guide #1076
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Migrating from Uniswap V3 to V4: Complete Developer Guide
First chunk covering introduction, table of contents, and migration philosophy
Comprehensive decision framework to help developers evaluate if migration is right for their project
…- Chunk 1 (Introduction & ToC)
Add comprehensive overview of V3 to V4 architectural differences including singleton pattern, hooks system, and core contract changes
Add comprehensive examples for migrating swap functionality from V3 to V4, including single swaps, exact input/output patterns, and multi-hop swaps with code comparisons
Added a complete example of a Liquidity Manager contract and a migration checklist for liquidity management.
This section provides a comprehensive migration guide from V3 to V4, detailing changes in position management, querying, range orders, rebalancing, and batch operations. Key differences and advantages of V4 implementations are highlighted.
Add comprehensive TypeScript/JavaScript examples for migrating SDK usage, React components, and frontend integrations from V3 to V4 with code comparisons
Add comprehensive TypeScript/JavaScript examples for migrating SDK usage, React components, and frontend integrations from V3 to V4 with code comparisons
Added a section on Hooks System Integration, detailing their purpose, lifecycle, available hook points, and implementation guidance. Included scenarios for V3 to V4 migration and a minimal hook template.
Added detailed sections on hook address requirements and common hook patterns, including dynamic fee and limit order hooks.
Added a new access control hook to restrict liquidity provision and swaps based on a whitelist.
Add comprehensive guide for implementing and using hooks in V4, including hook patterns, examples, security considerations, and migration from V3 custom logic
Added Foundry testing setup details including project structure and configuration.
Added a basic Foundry test template for MySwapper contract, including setup and multiple test cases for swap functionality.
Added testing setup for mainnet fork and Hardhat configuration.
Added Hardhat test examples and gas optimization testing scripts for MySwapper contract.
Add comprehensive testing strategies, deployment plans, gas optimization techniques, and safe migration approaches for V3 to V4 transition with Foundry and Hardhat examples
This section provides complete, production-ready implementations demonstrating full V3 to V4 migrations.
Added troubleshooting section with common migration issues and solutions.
Added solutions for common issues encountered during migration from v3 to v4, including pool initialization and gas estimation failures.
|
@jadonamite is attempting to deploy a commit to the Uniswap Team on Vercel. A member of the Team first needs to authorize it. |
jadonamite
commented
Nov 30, 2025
Author
jadonamite
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This guide provides practical, code-level migration patterns for:
- Smart Contract Integration - Migrating Solidity code that interacts with Uniswap
- SDK Usage - Updating TypeScript/JavaScript applications
- Frontend Integration - React/Web3 dApp migrations
- Testing Strategies - Ensuring safe migrations
- Hooks Integration - Leveraging V4's new capabilities
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This guide provides practical, code-level migration patterns for: