Skip to content

Conversation

@AugustoL
Copy link
Collaborator

@AugustoL AugustoL commented Nov 26, 2025

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

  • Added a new module src/utils/devtools.ts providing 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

  • Switched the test runner from react-scripts test to vitest, updated test scripts in package.json, and added Vitest as a dev dependency. This modernizes the testing stack for better speed and flexibility. [1] [2]
  • Added a new Vitest configuration file vitest.config.ts to support the new testing setup.

Styles and Layout

  • Added new CSS classes in src/styles/layouts.css for a unit converter grid and related components, supporting improved UI for ETH unit conversions.
  • Removed all DevTools-specific styles from src/styles/components.css, cleaning up unused or deprecated CSS related to DevTools UI elements. [1] [2]

@AugustoL AugustoL changed the base branch from main to dev November 27, 2025 20:59
@AugustoL AugustoL marked this pull request as ready for review November 28, 2025 20:33
@AugustoL
Copy link
Collaborator Author

fix #52

@github-actions
Copy link

github-actions bot commented Nov 28, 2025

🚀 Preview: https://pr-45--openscan.netlify.app
📝 Commit: c498f176ee904a712fbaf62e42a9cff25907ec87

Copy link
Contributor

Copilot AI left a 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
Copy link
Contributor

Copilot AI left a 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>
@MatiasOS
Copy link
Collaborator

Missing jsdom dependency

image

@AugustoL AugustoL merged commit e6e2bfd into dev Nov 29, 2025
1 check passed
@AugustoL AugustoL deleted the add-more-devtools branch November 29, 2025 20:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants