100 Commits
Author SHA1 Message Date
tom goriunovandzeekay aa349ab54f Name service: use protocol list instead of chain ID (#3283)
* Name service: use protocol list instead of chain ID

Resolves #3281

* fix envs for demo
2026-02-24 01:12:57 -08:00
tom goriunovandGitHub 537f572f7d Add address highlight provider to transaction page and lists (#3266)
* add address highlight provider to the transaction page

* add address highlight provider to lists

* fix tests
2026-02-20 08:02:52 +01:00
tom goriunovandGitHub df09a8d295 UI: Tags in tables (#3261)
Resolves #3243
2026-02-19 18:11:15 +01:00
tom goriunovandGitHub e6e83ee4e7 Add cross-chain transaction tracking and visualization (#3227)
* envs and feature setup

* home page layout

* cross-chain txs page

* cross-chain transfers page

* cross-chain transfers on tx page

* cross-chain messages on tx page

* cross-chain tx page

* cross-chain tx details token transfers

* stats and counters for lists

* migrate to new API version

* add swagger

* mobile lists

* placeholder views on address page

* tests

* fix adaptive tabs initial state when there is only one tab in the list

* tweaks

* bug fixes

* fix tests

* update screenshots

* migrate to new api version

* add chain label tooltip, copy button to txs in lists and same address highlight

* list views on address page

* fix tests

* fix links to current address in the list views

* update tooltips

* update tables layout

* review fixes

* fix spelling

* update screenshots

* update screenshot
2026-02-19 15:14:32 +01:00
tom goriunovandGitHub 401dc58402 Smart wallet auth (#3220)
* basic login button implementation

* refactoring and add dynamic auth button to the other pages

* connect wallet without authenticating an user

* login and logout user in blockscout account

* refactoring and RPC overrides

* authenticate user with connected wallet

* add ENS to profile button

* override evm chains and fix contract write with waas wallet

* disconnect wallet and fix docker build

* add dynamic imports to components that use web3 wallet packages

* refactor user profile directory

* clean up

* tweaks

* update pw ci script

* fix "connect wallet" button behavior

* handle linking email to profile with dynamic provider

* fix test

* async loading web3 hooks and remove dynamic loading from components that use them

* fix pw tests

* add account navigation in horizontal layout when auth provider is dynamic

* fix address verification modal

* review fixes

* spelling fixes
2026-02-18 19:42:44 +01:00
tom 4f614c4677 add "--no-must-find-files" flag to cspell command 2026-02-18 10:35:07 +01:00
tom b5f005bcb2 add bugbot rules 2026-02-13 12:09:33 +01:00
tom goriunovandGitHub fd52568916 Integrate cspell (#3279)
* add cspell config

* remove eslint plugin

* adjust pre-commit hook and add check to CI

* fixes
2026-02-13 07:48:43 +01:00
tom 42475a12a0 migrate to new response format from MegaETH flash blocks websocket 2026-02-12 18:20:49 +01:00
tom goriunovandGitHub af8b657f2e Remove success status from txs lists (#3276)
Resolves #3274
2026-02-11 12:17:29 +01:00
tom goriunovandGitHub 9070cb278b Add llms.txt to footer links (#3275)
* Add llms.txt to footer links

Resolves #3211

* update screenshots
2026-02-10 19:09:58 +01:00
tom goriunovandGitHub 8554a956de Migrage to 24-hour time format (#3273)
* Migrate to 24h time format

Resolves #3240

* update screenshot
2026-02-10 12:01:26 +01:00
tom 131811a946 update pw report workflow 2026-02-09 13:53:09 +01:00
tom 44a92a77e0 Enhance CI workflow for Playwright reports
- Added step to upload HTML report artifact if reports are generated and the PR is from a different repository.
- Updated conditions for uploading HTML report to S3 to ensure it only occurs under specific circumstances.
- Improved summary output to provide clearer instructions for accessing the report based on availability.
2026-02-09 13:49:15 +01:00
tom goriunovandGitHub 97a972b01d Add license check to CI (#3271)
add license check to CI
2026-02-09 11:41:12 +01:00
tom goriunovandGitHub a61238a75a Support emitted event date on the logs list (#3268)
* Support emitted event date on the logs list

* change copy button alignment in Logs

* update screenshots
2026-02-06 18:14:14 +01:00
tom 0f3442d3a4 disable automatic deployment on push to main branch in GitHub Actions workflow to prevent unnecessary deployments 2026-02-05 11:32:01 +01:00
tom a6723fb14e adjust rollbar config 2026-02-05 11:26:37 +01:00
tom goriunovandGitHub 7f05a9cbda Show small ERC-20 token balance instead of zero (#3264)
Resolves #1942
2026-02-05 11:25:31 +01:00
tom goriunovandGitHub db9ada61d9 Public tags form: send ReCaptcha payload to API (#3263)
* Public tags form: send ReCaptcha payload to API

Resolves #3262

* update screenshots
2026-02-05 11:24:10 +01:00
2ff074ee3b Release v2.6.1 (#3247)
* essential dapps config: switch to concurrent request and and add worker termination

* fix rollbar error logging and enable it for server errors

* fix for tokens request on address page

* update generator script for multichain config

* fix hot contracts interval select

* update screenshot

* update screenshots

* pass chainId to trackTransaction for essential dapps

* fix vertical alignment in hot contracts table

* bump next.js to v15.5.10

---------

Co-authored-by: isstuev <[email protected]>
Co-authored-by: Max Alekseenko <[email protected]>
2026-02-03 18:05:00 +01:00
tom goriunovandGitHub 15eb4e47f5 UI: Highlight color in dark theme (#3229)
UI: Highlight color

Resolves #3206
2026-02-02 15:30:00 +01:00
tom goriunovandGitHub 1895ee4901 Mobile. A/B test: txs/token transfers table view (address details page) (#3241)
* Mobile. A/B test: txs/token transfers table view (address details page)

Resolves #3230

* fixes and test

* [skip ci] change mixpanel event
2026-01-29 12:52:49 +01:00
tom 5a35493596 [skip ci] edit cursor rules and add "after file edit" format hook 2026-01-23 19:56:56 +01:00
tom 290b66bb72 [skip ci] fix essential dapps config for main preset 2026-01-22 12:08:31 +01:00
tom 9fc23d311e [skip ci] fix typo in rollup feature validator 2026-01-20 12:43:35 +01:00
tom goriunovandGitHub 088f469e79 Set the auth header for the merits API inside useApiFetch (#3239)
* Set the auth header for the merits API inside `useApiFetch`

Resolves #2978

* fixes

* [skip ci] fix comment position
2026-01-19 18:12:26 +01:00
tom goriunovandGitHub 0a53890f64 Incorrect size of DialogHeader for mobile (#3236)
* Incorrect size of `DialogHeader` for mobile

Resolves #2979

* update screenshots
2026-01-19 11:38:07 +01:00
tom goriunovandGitHub 7ae9b1a216 Do not display error message on user's sign out on Profile page (#3238)
Resolves #2732
2026-01-16 19:05:03 +01:00
tom goriunovandGitHub 683aa7cc3c UI/UX: Contract verification alert cases (#3234)
* UI/UX: Contract verification alert cases

Resolves #3199

* fixes
2026-01-16 18:06:08 +01:00
tom goriunovandGitHub 3f02686825 UI: Toast. Close icon location. (#3237)
Resolves #3111
2026-01-16 18:05:51 +01:00
e28e7e2db7 Fixes for release v2.6.0 (#3214)
* Search: redirect to a ENS domain page in case of no address is resolved for this domain

* pass csrf-token to contracts info service

* batch details for eigenda blobs

* fix protocol tag in txs table

* additional token type fix

---------

Co-authored-by: isstuev <[email protected]>
2026-01-15 15:01:19 +01:00
tom c374aad0bd prepare release 2026-01-05 19:26:13 +01:00
tom goriunovandGitHub 176cdb5aba Show conflicting proxy implementations warning (#3179)
* Show conflicting proxy implementations warning

Resolves #2884

* fix: add conflicting_implementations field to contract mocks

* fix tests

* proxy info tweaks

* fix ts
2026-01-05 19:14:56 +01:00
tom goriunovandGitHub 1c025b26fb Add possibility to change timestamp format (#3201)
* add global setting to change between local and utc time

* add control to change time format on detailed views

* tweaks

* adapt uptime graphs to work with utc time from settings

* fix tests

* add maxDiffPixels for SearchResults test

* fix test
2026-01-05 13:19:47 +01:00
tom goriunovandGitHub 266d167419 Smart contracts: get supported languages for filter from the API instead of ENV (#3200)
* Smart contracts: get supported languages for filter from the API instead of ENV

Resolves #3158

* fix ts and test

* add test.slow() to Block test
2026-01-05 13:19:28 +01:00
tom goriunovandGitHub 8f96f4031d Public tags: protocol tag for transaction list (#3182)
Resolves #2976
2026-01-05 11:33:43 +01:00
tom goriunovandGitHub 4335faeb35 UI/UX: Implement unified EmptyState component for stats page (#3195)
* add EmptyState component to toolkit and use it in the stats page

* remove EmptySearchResult component

* tweaks

* refactor ComingSoon component

* fix toolkit build

* rollback changes in main preset
2025-12-23 11:34:33 +01:00
tom goriunovandGitHub d3d2afc903 Fix REST API docs request interceptor URL replacement (#3196)
fix request interceptor for REST API docs snippet
2025-12-23 08:33:41 +01:00
tom goriunovandGitHub e251a3fccd Pass the x-csrf-token to the call to the admin API (#3194)
* pass the `x-csrf-token` to the call to the admin API

* fix tokens test
2025-12-22 11:23:39 +01:00
tom goriunovandGitHub e8e4175e4f Hide the tooltip on the button whenever the dropdown is open (#3193)
Resolves #3151
2025-12-19 15:12:34 +01:00
tom goriunovandGitHub ccc7f561e6 Fix deposits table layout on small desktops (#3192)
fix deposits table layout
2025-12-19 11:53:01 +01:00
tom goriunovandGitHub a77568ce0a Refactor navigation icon (#3191)
* move nav icons to separate directory

* remove unnecessary "slim" suffix from some icon names

* fix screenshots
2025-12-19 10:29:29 +01:00
tom goriunovandGitHub 5571346d76 Refactor token media-type API to be token-scoped and safer (#3190)
* refactor media-type next.js API resource to mitigate request forgery attack

* fix typescript
2025-12-18 18:05:36 +01:00
tom goriunovandGitHub dc9f400fa8 Hot contracts table (#3165)
* page layout

* add interval filter

* fix navigation

* value formatting and test

* fix: correct empty state message from 'pools' to 'hot contracts'

* update screenshots

* add disabled state to tag select and fix some bugs

* fix screenshot

* update select texts
2025-12-18 16:02:53 +01:00
tom goriunovandGitHub fa69b33a8b OP batches: show EigenDA tag (#3186)
* OP batches: show EigenDA tag

Resolves #3183

* fix revoke test
2025-12-18 14:58:22 +01:00
tom goriunovandGitHub 5627820db8 Highlights banners on home page (#3175)
* basic implementation

* fix loading state of image

* tests

* try to fix flaky tests
2025-12-18 12:21:53 +01:00
tom goriunovandGitHub 4c87032459 Always display Internal txns tab on Block details (#3185)
Resolves #3181
2025-12-16 19:34:03 +01:00
tom goriunovandGitHub bd1d0db74a Minor packages bump and security updates (#3184)
* remove unused packages and bump some dev dependencies to resolve security alerts

* update permissions of jobs in pre-release workflow
2025-12-16 19:33:49 +01:00
tom e6fc11ce9c [skip ci] fix condition in Next.js API proxy resource 2025-12-16 10:27:12 +01:00
tom d1f31234f9 [skip ci] disable next API proxy if the variable is not set 2025-12-15 19:30:03 +01:00
tom 3319279238 [skip ci] fix csv export screenshot 2025-12-12 13:10:06 +01:00
65a0c87b2f Release v2.5.1 (#3174)
* fail the app start if multichain config or essential dapps config were not generated properly

* add timeouts for essential dapps and multichain config generators

* fix "add to wallet" button in address tokens table

* [skip ci] update docs

* fix tx tables when there are no fee and value columns

* add support for promoted multichain provider

* fixes

* change action button logic

* fix tests

* fix

* hide "add network" button for multichain

* shorten the amount of txs on multichain homepage

* change name formatting for multichain button

* add bright color variants and lg size for badges

* fix y-axis margin calculation for chart with custom tick formatter

* superchain bug fixes

* bump versions of react and nextjs

* update screenshot

* bump dappscout-iframe

* increase timeouts for multichain and essential dapps config generators

---------

Co-authored-by: Max Alekseenko <[email protected]>
2025-12-11 11:30:55 +01:00
tom goriunovandGitHub 5d337fc555 Migrate from Jest to Vitest (#3173)
* first part of transition

* second part of transition

* remove jest

* bump up node version and playwright version

* update all screenshots because of the new playwright version

* fix tests

* one more screenshot update
2025-12-10 19:21:07 +01:00
tom goriunovandGitHub fb7fa1ba98 Public tags: attributions (#3169)
Resolves #3163
2025-12-09 13:39:04 +01:00
tom ff6e603ea4 Merge branch 'main' of github.com:blockscout/frontend 2025-12-09 09:48:59 +01:00
tom cab2731fe7 [skip ci] add chakra MCP server 2025-12-09 09:48:54 +01:00
tom goriunovandGitHub a8252d54ad Promote Credit Wallet in WalletConnect for all Creditcoin chains (#3166)
Resolves #3162
2025-12-08 19:10:32 +01:00
tom 44e466b054 [skip ci] fix z-index for select dropdown 2025-12-08 15:59:50 +01:00
tom goriunovandGitHub 932add9d96 Change zero to <0.001 value within different pages (#3150)
* basic components and address page refactoring

* second part of refactoring

* third part of refactoring

* NativeCoinValue component

* more refactoring

* rename TruncatedValue into TruncatedText

* minor fixes

* refactor block details

* fix layout of value and fee in tx table

* update screenshots

* different units for tooltip and stats widget small value fix

* update screenshots

* update tx table screenshot

* fix copy button vertical alignment
2025-12-05 16:04:27 +01:00
tom goriunovandGitHub 5fb591572f Bump package versions to mitigate security vulnerabilities (#3164)
bump package versions to mitigate security vulnerabilities
2025-12-04 18:44:24 +01:00
9a977d191b Fixes for release v2.5.0 (#3142)
* fail the app start if multichain config or essential dapps config were not generated properly

* add timeouts for essential dapps and multichain config generators

* fix "add to wallet" button in address tokens table

* [skip ci] update docs

* fix tx tables when there are no fee and value columns

* add support for promoted multichain provider

* fixes

* change action button logic

* fix tests

* fix

* hide "add network" button for multichain

* shorten the amount of txs on multichain homepage

* change name formatting for multichain button

* add bright color variants and lg size for badges

* fix y-axis margin calculation for chart with custom tick formatter

* superchain bug fixes

* bump versions of react and nextjs

* update screenshot

* bump dappscout-iframe

---------

Co-authored-by: Max Alekseenko <[email protected]>
2025-12-04 18:44:01 +01:00
tom 2469406682 [skip ci] change value to placeholders 2025-12-02 18:28:36 +01:00
tom 01c57f11bd [skip ci] remove title field 2025-12-02 18:26:29 +01:00
tom d72a3226cd [skip ci] more fixes 2025-12-02 18:24:20 +01:00
tom b5b6ceffd9 [skip ci] fix template 2025-12-02 18:22:45 +01:00
tom ebfca118e9 [skip ci] feature spec template 2025-12-02 18:17:11 +01:00
tom goriunovandGitHub d1b90c92bb Refactor envs validator: split schema and migrate to vite (#3140)
* migrate to vite

* split validation schema
2025-11-19 11:01:05 +01:00
tom goriunovandGitHub 65e7d289f9 Create useApiQueries hook to manage multiple API requests to the same resource in parallel (#3136) 2025-11-18 19:00:03 +01:00
tom goriunovandGitHub 3140affd4c Fix default color for separator component (#3137)
* Fix default color for separator component

* fix test
2025-11-18 18:59:49 +01:00
tom fedcb839c2 [skip ci] update docs 2025-11-18 10:16:31 +01:00
tom bd577788bd [skip ci] prepare release 2025-11-18 10:03:49 +01:00
edc54514f1 OP Superchain explorer: aggregated views (#3040)
* refactor widgets on home page

* coming soon placeholder component

* top accounts page

* contract data

* address ERC-20 tokens list

* chain filter for address ERC-20 tokens

* token select for address detailed view

* address details fields

* tokens table

* stats widgets on home page

* chain indicators graph on the home page

* quick search

* search results all tab

* tabs and chain select on search results page

* search results mobile view

* add contract info to search and address details

* add text filter for tokens and search improvements

* load all results inside tab on search results page

* token balance info

* add support for domains in the full search

* Multichain explorer

Resolves #2989

* add envs validator for multichain

* add some tests

* fix search bar on search results page on mobile

* home stats fixes

* fix ts

* optimize amount of queries on address page

* add more contract info on address page

* add enter key hint to search input

* fix tests

* fix test

* update bg.primary css-variable on color theme change

* sitemap for multichain

* txs page: render first tab if blob tab is not available on the chain

* filter out in active chains from chain select on address page and user ops page

* add chain icon to advanced filter table

* fix tooltip on entity with shield

* fix ts

* show contract implementations

* fixes

* add chain icon to all lists

* refactor zetachain chains config type

* use chain id as primary option instead of chain slug

* refactor chain config type for multichain and essential dapps

* refactor chain icon and chain select

* rename chain-slug in chain_slug

* change default radius of chain icon and update screenshots for multichain tests

* change conditions for "isContract" and "isVerified"

* test fixes

* make shield optional for external chain entities

* add chain icon to approvals lists

* add stats page for multichain

* add chain postfix to chart .png and .csv assets name

* fix tests

* sync verified contracts language filter and fix loading state in the search results page

* fix sol2uml diagram and csv export

* regcred from helmfile for review

* link fixes

* fix state for unknown address

* fix incorrect chain in the context during spa transition to the same route on different chain

* add links to stats widgets

* add mixpanel to L2 demo values

* show message of on-demand contract verification

* fix screenshots

---------

Co-authored-by: Nick Zenchik <[email protected]>
2025-11-18 09:44:22 +01:00
tom 54c63614db update max-height of tx raw trace on desktop 2025-11-18 09:42:55 +01:00
tom goriunovandGitHub 2205672dd5 Direct OP Withdrawal Claim button (#3123)
* Direct OP Withdrawal Claim button instead of NEXT_PUBLIC_ROLLUP_L2_WITHDRAWAL_URL env

Resolves #3022

* [skip ci] fix envs preset
2025-11-18 07:53:48 +01:00
tom goriunovandGitHub ff411308b8 Update Vite and Rollbar dependencies (#3133)
update vite and rollbar packages
2025-11-17 18:56:50 +01:00
tom goriunovandGitHub f1b51f162a Show multichain buttons on EOA + code addresses (#3134)
Resolves #3132
2025-11-17 18:56:30 +01:00
0c5a297834 "Add chain" button in the header (#3084)
* redesign "add chain" button

* fix wallet detection

* [skip ci] update default value for ENV

* fix tests

* return button to the footer and add source to mixpanel event

* regcred from helmfile for review

* [skip ci] remove wallets env from values for demo stand

* use react-query to cache detection result

* add cookie to hide button in the topbar

* add prefix to svg ids to fix rabby icon

* update screenshot

* remove unnecessary comment

---------

Co-authored-by: Nick Zenchik <[email protected]>
2025-11-17 18:15:21 +01:00
tom 670259eab9 [skip ci] update "Create PR" command 2025-11-17 18:00:01 +01:00
tom goriunovandGitHub 799729cf4d GraphQL: use latest tx hash for example query (#3096)
Resolves #3008
2025-11-17 17:37:20 +01:00
tom goriunovandGitHub c8fd550b2b Add setting to show giga-wei as nano-ETH (#3119)
Resolves #3108
2025-11-17 15:55:23 +01:00
tom goriunovandGitHub cec9182058 Migrate from cookies to headers for scam tokens and bypassing rate li… (#3118)
Migrate from cookies to headers for scam tokens and bypassing rate limits

Resolves #3092
2025-11-17 15:55:08 +01:00
tom 12f43f548a [skip ci] change default value for NEXT_PUBLIC_FEATURED_NETWORKS_MODE 2025-11-17 15:41:01 +01:00
tom f4fdd623dd [skip ci] NPM publisher workflow: rollback from Trusted publishers to NPM token 2025-11-17 12:48:41 +01:00
tom goriunovandGitHub 199f693101 Block countdown. Infinite loop if 404 block is in the past. (#3130)
* Block countdown. Infinite loop if 404 block is in the past.

Resolves #3124

* fix test
2025-11-14 18:50:17 +01:00
tom 2b1c727f23 update dev presets 2025-11-14 15:58:54 +01:00
tom goriunovandGitHub 9b89142dbd Incorrect amount of tx value if decimals for native token is not equal 18 (#3129)
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS is not respected in transaction amounts

Resolves #3128
2025-11-14 13:03:36 +01:00
tom goriunovandGitHub 770980044d Chain menu updates (#3127)
* UI/UX: Dropdown DeFi button fixes

Resolves #3104

* move chain menu to the right of the topbar

* add list mode to chains menu

* rollback price diff on mobile
2025-11-14 11:39:15 +01:00
tom goriunovandGitHub 2aecde7104 UI/UX: Dropdown DeFi button fixes (#3126)
Resolves #3104
2025-11-13 18:49:29 +01:00
tom goriunovandGitHub f93fa016d8 Render only one ad banner container on home page (#3120) 2025-11-12 12:06:43 +01:00
tom goriunovandGitHub 8c70d3be88 Stats: format dates using UTC time instead of local time by default (#3103)
* Stats: format dates using UTC time instead of local time by default

* hide chart tooltip whenever new data comes in
2025-11-05 11:59:25 -03:00
tom d22281dc07 [skip ci] update preset for mega eth 2025-11-05 08:41:00 -03:00
tom goriunovandGitHub 4413a5cb32 UI: "1 Solana txn" style (#3098)
Resolves #2880
2025-11-04 17:17:34 +01:00
tom goriunovandGitHub c47d54cf1c Add lowercase option for NEXT_PUBLIC_VIEWS_NFT_MARKETPLACES (#3097)
Resolves #3093
2025-11-04 15:42:11 +01:00
tom 6c27697666 [skip ci] fix sitemap for name services route 2025-11-03 14:55:22 +01:00
tom af7843f977 fix the clusters icon so it functions correctly in Safari 2025-11-03 13:42:42 +01:00
tom 21e38a2a5b [skip ci] add missing export to toolkit package 2025-10-31 16:02:06 +01:00
tom goriunovandGitHub 654fe303bb Add progress bar component to toolkit (#3088)
add progress bar component to toolkit
2025-10-31 14:56:05 +01:00
tom goriunovandGitHub 37a38ec481 Make NEXT_PUBLIC_ROLLUP_L2_WITHDRAWAL_URL env optional for OP rollups (#3087)
Resolves #3083
2025-10-31 14:18:43 +01:00
tom goriunovandGitHub 4ea6daf298 Remove link from the tags in public tag submit form (#3086)
* remove link from the tags in public tag submit form

* update screenshots
2025-10-31 14:18:23 +01:00