-
Notifications
You must be signed in to change notification settings - Fork 4
Add more devtools #45
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
Conversation
|
fix #52 |
|
🚀 Preview: https://pr-45--openscan.netlify.app |
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.
Pull request overview
This PR modernizes the Ethereum developer tooling infrastructure by introducing comprehensive utility functions for ETH operations, migrating to Vitest for testing, and restructuring the DevTools UI into modular components. The changes significantly expand the functionality available to developers working with Ethereum transactions, signatures, and contracts.
Key Changes:
- Added comprehensive Ethereum utilities module with unit conversion, keccak256 hashing, ABI encoding, and signature validation functions
- Migrated test infrastructure from react-scripts to Vitest with extensive test coverage (496 test cases)
- Refactored monolithic DevTools component into five focused section components (Transactions, Signatures, Utils, Contracts, Development)
Reviewed changes
Copilot reviewed 14 out of 15 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
src/utils/devtools.ts |
New module providing Ethereum utility functions for unit conversion, cryptographic operations, and address validation |
vitest.config.ts |
New Vitest configuration for Node environment test execution |
src/components/pages/DevTools.test.ts |
Comprehensive test suite with 496 test cases covering all utility functions |
src/components/pages/DevTools.tsx |
Refactored to route-based navigation with URL query parameters for section selection |
src/components/devtools/*.tsx |
Five new section components breaking down DevTools functionality into manageable modules |
src/styles/devtools.css |
New dedicated stylesheet with 1063 lines of DevTools-specific styles |
src/styles/layouts.css |
Added unit converter layout classes |
src/styles/components.css |
Removed 137 lines of deprecated DevTools styles |
package.json |
Updated test scripts and added Vitest dependency |
src/components/common/HH3IgnitionTool.tsx |
Removed and moved to DevelopmentSection component |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Remove duplicate computeKeccak/convertToHex/convertFromHex from UtilsSection - Import utility functions from utils/devtools.ts instead - Add validation for URL section parameter in DevTools.tsx - Remove unused setSigExpectedAddress in SignaturesSection.tsx - Remove unused detectedMessageFormat initial value - Remove unused test variables (TEST_PRIVATE_KEY, WRONG_SIGNER_MESSAGE, WRONG_SIGNER_HASH) - Remove duplicate .unit-converter-label CSS class from devtools.css - Remove duplicate .unit-converter-grid CSS class from devtools.css - Add txGasLimit validation before BigInt conversion - Replace incomplete Infura RPC URL with public eth.llamarpc.com - Remove unused eject script from package.json
ebc8739 to
810a721
Compare
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.
Pull request overview
Copilot reviewed 14 out of 15 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

This pull request introduces a set of changes focused on improving Ethereum developer tooling and testing infrastructure. The most significant updates are the addition of comprehensive Ethereum utility functions for unit conversion and cryptographic operations, the introduction of new layout styles for a unit converter, removal of outdated DevTools CSS, and migration of the test runner to Vitest.
Key changes:
Ethereum Utility Functions
src/utils/devtools.tsproviding Ethereum-related utilities, including ETH unit conversion, keccak256 hashing, ABI encoding, signature parsing and validation, and address/hex helpers. This module centralizes and standardizes core developer tools for Ethereum workflows.Testing Infrastructure
react-scripts testtovitest, updated test scripts inpackage.json, and added Vitest as a dev dependency. This modernizes the testing stack for better speed and flexibility. [1] [2]vitest.config.tsto support the new testing setup.Styles and Layout
src/styles/layouts.cssfor a unit converter grid and related components, supporting improved UI for ETH unit conversions.src/styles/components.css, cleaning up unused or deprecated CSS related to DevTools UI elements. [1] [2]