Skip to content

Conversation

@juanmigdr
Copy link
Member

@juanmigdr juanmigdr commented Dec 11, 2025

Description

@Montoya raised the following issue he was experiencing: Auto detection on mainnet is working, it's just very slow and it fails to replace the content when switching networks so it's basically not possible to view NFTs on different networks, see below

video_1280.mp4

After an investigation into the matter I found out we were not virtualizing the list of NFTs which meant that every time the NFTs tab was opened, we were rendering all NFTs at once. For a wallet that has hundreds of NFTs this can be very noticeable. After adding virtualization to the list, no degradation can be seen (Look at the before and after videos)

NOTE: in the benchmarking videos you will see that the initil load time has been reduces by a LOT. In my test we have moved from 20+ seconds load time to 2 second. Since my test had hundreds of NFTs it was taking 20+ seconds but with more NFTs it would have taken even longer

Open in GitHub Codespaces

Changelog

CHANGELOG entry: add virtualization to NFTs list

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/ASSETS-2118

Manual testing steps

  1. Go to this page...

Screenshots/Recordings

Before

Screen.Recording.2025-12-11.at.15.00.23.mov
before.mov

After

Screen.Recording.2025-12-11.at.14.57.19.mov
after.mov

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Virtualizes the NFT grid using @tanstack/react-virtual, grouping NFTs into responsive rows and stubbing window.matchMedia in tests.

  • UI/NFTs:
    • Virtualizes ui/components/app/assets/nfts/nft-grid/nft-grid.tsx with useVirtualizer to render rows of NFTs.
    • Adds responsive row sizing via window.matchMedia (4 cols > 767px, else 3) and itemsPerRow state.
    • Groups NFTs into memoized rows for virtualization; measures rows and positions via translateY.
    • Disables virtualization when no scroll container (useScrollContainer) or when nfts.length <= 20.
  • Tests/Setup:
    • Updates test/helpers/setup-helper.js to stub window.matchMedia with addEventListener support for virtualization.

Written by Cursor Bugbot for commit da8b645. This will update automatically on new commits. Configure here.

@juanmigdr juanmigdr requested a review from a team as a code owner December 11, 2025 13:56
@metamaskbot
Copy link
Collaborator

metamaskbot commented Dec 11, 2025

✨ Files requiring CODEOWNER review ✨

💎 @MetaMask/metamask-assets (1 files, +111 -18)
  • 📁 ui/
    • 📁 components/
      • 📁 app/
        • 📁 assets/
          • 📁 nfts/
            • 📁 nft-grid/
              • 📄 nft-grid.tsx +111 -18

@metamaskbot
Copy link
Collaborator

Builds ready [40f721c]
UI Startup Metrics (1291 ± 118 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12911043179811813591494
load1061875147510011121257
domContentLoaded105487214699911061252
domInteractive2816170242385
firstPaint4819013833949971135
backgroundConnect21719728114220248
firstReactRender483296135574
getState391799144766
initialActions104112
loadScripts8446661213928931004
setupStore1363151724
numNetworkReqs1367519671
BrowserifyPower User HomeuiStartup19091553247916819972247
load1080888165512711861255
domContentLoaded1070881164012611791244
domInteractive3017152232893
firstPaint5399316754179771215
backgroundConnect24820065289233550
firstReactRender47396345056
getState224151755140209711
initialActions102112
loadScripts85868414241259651038
setupStore1493951428
numNetworkReqs72572192367131
WebpackStandard HomeuiStartup817677116487861997
load66055893076705799
domContentLoaded65455292375700793
domInteractive2614146232182
firstPaint22781789154214628
backgroundConnect13690111332
firstReactRender55322744060135
getState291496133654
initialActions106112
loadScripts65154991374697787
setupStore1172941319
numNetworkReqs1368020673
WebpackPower User HomeuiStartup14351087231420815481848
load7575891128116859955
domContentLoaded7495821118115846946
domInteractive34181692928113
firstPaint3901021018262684897
backgroundConnect71869513170297
firstReactRender52407875471
getState20115933729213264
initialActions104112
loadScripts7465801106115844943
setupStore16747101442
numNetworkReqs72562192667136
FirefoxBrowserifyStandard HomeuiStartup13891110231618414841722
load1106924154211111661309
domContentLoaded1106924154211111651309
domInteractive70322514387154
firstPaint------
backgroundConnect6521102610474138
firstReactRender39317584056
getState1173951124
initialActions103122
loadScripts107290513899511241231
setupStore165122201248
numNetworkReqs1568521876
BrowserifyPower User HomeuiStartup26211678346854031473402
load1662944251252121472387
domContentLoaded1662944251252121472387
domInteractive170301007274101952
firstPaint------
backgroundConnect191241118230209969
firstReactRender5539102115980
getState146621015100179227
initialActions40407230
loadScripts1547926248849520162282
setupStore4853558034290
numNetworkReqs76581322275125
WebpackStandard HomeuiStartup16111308215118417251943
load13131127175911213671543
domContentLoaded13121123175811213671543
domInteractive772729344112141
firstPaint------
backgroundConnect60232074069148
firstReactRender4333156134654
getState207198321562
initialActions103022
loadScripts12811105166910213391447
setupStore236236331782
numNetworkReqs1568421877
WebpackPower User HomeuiStartup27781839371852832283455
load19101192283149223492607
domContentLoaded19101192283149223482607
domInteractive14631114624395961
firstPaint------
backgroundConnect151241139152204325
firstReactRender5838136166293
getState146631415137160253
initialActions3040627
loadScripts18291175272146922542573
setupStore3752655538206
numNetworkReqs74471352370129
📊 Page Load Benchmark Results

Current Commit: 40f721c | Date: 12/11/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±40ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 723ms (±38ms) 🟢 | historical mean value: 722ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±16ms) 🟢 | historical mean value: 80ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 40ms 1.01s 1.35s 1.08s 1.35s
domContentLoaded 723ms 38ms 701ms 1.03s 751ms 1.03s
firstPaint 78ms 16ms 64ms 232ms 88ms 232ms
firstContentfulPaint 78ms 16ms 64ms 232ms 88ms 232ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 787 Bytes (0.01%)
  • ui: 1.85 KiB (0.02%)
  • common: 1.39 KiB (0.02%)

@metamaskbot
Copy link
Collaborator

Builds ready [caddf96]
UI Startup Metrics (1287 ± 119 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12871034165211913671509
load105486613489811051198
domContentLoaded104786213359710991191
domInteractive2616105212190
firstPaint50895127040210281152
backgroundConnect21719827913224242
firstReactRender4832103155681
getState4018140224574
initialActions103112
loadScripts838666111292884988
setupStore1273251322
numNetworkReqs1368020670
BrowserifyPower User HomeuiStartup18841516243516919632206
load1063878163812711441262
domContentLoaded1053873162912711391252
domInteractive2917197242787
firstPaint5229613074019561227
backgroundConnect253195680105231570
firstReactRender48378574959
getState18414127427194243
initialActions103112
loadScripts84467714271269221045
setupStore1464251430
numNetworkReqs71592032068127
WebpackStandard HomeuiStartup8407081020788821001
load67858483873725825
domContentLoaded67357983372718816
domInteractive2817131222396
firstPaint251104830178230719
backgroundConnect1064061018
firstReactRender58331913660145
getState291467123756
initialActions106112
loadScripts66957783071715811
setupStore1253861326
numNetworkReqs1367619673
WebpackPower User HomeuiStartup14701133218220116361814
load7576011198114856918
domContentLoaded7505941190112848905
domInteractive33181252429105
firstPaint29196916231279887
backgroundConnect63865312949479
firstReactRender52427465468
getState19314233341200297
initialActions104111
loadScripts7465921180112845902
setupStore1666391536
numNetworkReqs72602302467131
FirefoxBrowserifyStandard HomeuiStartup13601095252223614281856
load1094933228316311321324
domContentLoaded1094932228216311321323
domInteractive7732124012186137
firstPaint------
backgroundConnect52203525160162
firstReactRender38307683961
getState1173551122
initialActions103112
loadScripts1066914226415911041232
setupStore135107131238
numNetworkReqs1568021875
BrowserifyPower User HomeuiStartup26501649374057431533489
load1626991268752821222393
domContentLoaded1626984268752821222393
domInteractive166321145267104976
firstPaint------
backgroundConnect192251127225222958
firstReactRender5738178186090
getState1384324748173234
initialActions4070927
loadScripts1535972260750420522364
setupStore704103215450301
numNetworkReqs77591372568128
WebpackStandard HomeuiStartup17151354301526218362116
load14081151278622114461685
domContentLoaded14081151278622114461684
domInteractive99291429140118167
firstPaint------
backgroundConnect56241893463139
firstReactRender4635120124957
getState188148221663
initialActions103122
loadScripts13761134276421714161616
setupStore2361843320140
numNetworkReqs1568421874
WebpackPower User HomeuiStartup27051780426155430803491
load19291210324049123432549
domContentLoaded19291210323949123422548
domInteractive243291892376238995
firstPaint------
backgroundConnect178281104235190949
firstReactRender533694105966
getState1297130545160224
initialActions208123
loadScripts18161185317546622572444
setupStore4653437345244
numNetworkReqs75521292083123
📊 Page Load Benchmark Results

Current Commit: caddf96 | Date: 12/11/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.07s (±60ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 747ms (±56ms) 🟢 | historical mean value: 722ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±16ms) 🟢 | historical mean value: 79ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.07s 60ms 1.02s 1.41s 1.12s 1.41s
domContentLoaded 747ms 56ms 710ms 1.05s 792ms 1.05s
firstPaint 80ms 16ms 64ms 224ms 88ms 224ms
firstContentfulPaint 80ms 16ms 64ms 224ms 88ms 224ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.18 KiB (0.02%)
  • common: 20 Bytes (0%)

@juanmigdr juanmigdr enabled auto-merge December 12, 2025 08:27
@metamaskbot
Copy link
Collaborator

Builds ready [f3fe616]
UI Startup Metrics (1251 ± 103 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12511024154210313111401
load102486013028610721204
domContentLoaded101785612958510661190
domInteractive241595172179
firstPaint53082124840410311154
backgroundConnect21119526313216237
firstReactRender483289135774
getState4218139224893
initialActions104112
loadScripts813657110285855987
setupStore1464571628
numNetworkReqs1368319668
BrowserifyPower User HomeuiStartup19041542223314520052166
load1062860137612911621275
domContentLoaded1053856134812811541269
domInteractive30161272426108
firstPaint5667813734119781186
backgroundConnect269197716125239577
firstReactRender50399085264
getState19814069879205264
initialActions104112
loadScripts84366411421259401065
setupStore1575771532
numNetworkReqs72581992270125
WebpackStandard HomeuiStartup818676105288880990
load65757282977716815
domContentLoaded65156781777709807
domInteractive2515101192280
firstPaint21281830141212628
backgroundConnect155212231330
firstReactRender52333083853116
getState291558113650
initialActions103112
loadScripts64856481476707799
setupStore1172951318
numNetworkReqs1367620673
WebpackPower User HomeuiStartup14031129209219015121800
load720593113498743916
domContentLoaded714588112597736906
domInteractive30171232426107
firstPaint27796893201308728
backgroundConnect83763214799573
firstReactRender50408555258
getState19014373880189246
initialActions102111
loadScripts711585111796734903
setupStore1664091437
numNetworkReqs71562252767132
FirefoxBrowserifyStandard HomeuiStartup13721114174914514561662
load109995213088211451269
domContentLoaded109995213088211451268
domInteractive75271393191137
firstPaint------
backgroundConnect55231853767128
firstReactRender40326774153
getState156144201134
initialActions102012
loadScripts106893612737311161206
setupStore146218221132
numNetworkReqs1568720874
BrowserifyPower User HomeuiStartup26821643450761131123688
load1617997259551521322414
domContentLoaded1617991259551421322414
domInteractive1943311653041121006
firstPaint------
backgroundConnect198261105225231934
firstReactRender5733121156192
getState1413754566160244
initialActions208123
loadScripts1531968247648920002298
setupStore713105815757344
numNetworkReqs76571502474128
WebpackStandard HomeuiStartup15531305230915816141873
load1279112315199513331472
domContentLoaded1278112315199513331472
domInteractive75292344193133
firstPaint------
backgroundConnect51172383550137
firstReactRender433397104555
getState2382583716123
initialActions102122
loadScripts1250110914648913041428
setupStore165127191457
numNetworkReqs1668922877
WebpackPower User HomeuiStartup26141809435354230783369
load18261143336649122722582
domContentLoaded18261142336649122722582
domInteractive225291113332229975
firstPaint------
backgroundConnect153301093208168942
firstReactRender53368196067
getState1327938055162237
initialActions218127
loadScripts17431126259145422062546
setupStore425108511335167
numNetworkReqs75571332285130
📊 Page Load Benchmark Results

Current Commit: f3fe616 | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±36ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 719ms (±35ms) 🟢 | historical mean value: 727ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±10ms) 🟢 | historical mean value: 82ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 36ms 1.01s 1.30s 1.07s 1.30s
domContentLoaded 719ms 35ms 695ms 980ms 749ms 980ms
firstPaint 75ms 10ms 60ms 156ms 84ms 156ms
firstContentfulPaint 75ms 10ms 60ms 156ms 84ms 156ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.18 KiB (0.02%)
  • common: 20 Bytes (0%)

@github-actions github-actions bot added size-M and removed size-S labels Dec 12, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [828c4c5]
UI Startup Metrics (1276 ± 104 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12761039160710413521449
load104687113238611131174
domContentLoaded103986613068511051170
domInteractive261597172281
firstPaint53380128440510331136
backgroundConnect22019628716231250
firstReactRender5032105165982
getState4119131204874
initialActions106113
loadScripts827670103778894946
setupStore1353751423
numNetworkReqs1367919672
BrowserifyPower User HomeuiStartup19331515235015620182251
load1108898138711111831331
domContentLoaded1097894137611011751323
domInteractive3118131212981
firstPaint508103140641910051328
backgroundConnect24020158055239286
firstReactRender51408975363
getState234154747127225703
initialActions103112
loadScripts87869711691079461115
setupStore1674971538
numNetworkReqs70591381668117
WebpackStandard HomeuiStartup8126641467103861978
load65856294580719807
domContentLoaded65355893679713802
domInteractive251593182280
firstPaint21172813143205625
backgroundConnect1053851225
firstReactRender49332112946108
getState281562113649
initialActions103112
loadScripts65055393379707798
setupStore1163251227
numNetworkReqs1467920674
WebpackPower User HomeuiStartup13841066193719814851785
load700591119496719877
domContentLoaded693584118896710871
domInteractive32152303225112
firstPaint260101790173252684
backgroundConnect997660169112596
firstReactRender50416745157
getState18114070175181209
initialActions102011
loadScripts690581117895707863
setupStore1564691436
numNetworkReqs70552142465132
FirefoxBrowserifyStandard HomeuiStartup13051082193017313731633
load1052895166910711041223
domContentLoaded1051895166910710991223
domInteractive60311523184132
firstPaint------
backgroundConnect52212644654179
firstReactRender39316783961
getState14794141130
initialActions103112
loadScripts102387916429910691170
setupStore195421461150
numNetworkReqs1568221777
BrowserifyPower User HomeuiStartup26871651413658331383481
load1667972257550921462442
domContentLoaded1667972257550921462442
domInteractive2143111063221561002
firstPaint------
backgroundConnect2332611292842291013
firstReactRender5736180176079
getState1446847655168239
initialActions3141627
loadScripts1563953248549320282326
setupStore714109113964351
numNetworkReqs76571392567129
WebpackStandard HomeuiStartup15381276219818116281941
load12681078153610613311491
domContentLoaded12671078153610613311490
domInteractive67281423696132
firstPaint------
backgroundConnect55212193857138
firstReactRender42328484655
getState187132241553
initialActions103012
loadScripts1238106315079912921440
setupStore166121191259
numNetworkReqs1568621881
WebpackPower User HomeuiStartup25241731405149229063369
load17921165264844821962492
domContentLoaded17911165264844821952492
domInteractive2302912263412131003
firstPaint------
backgroundConnect147261116192173477
firstReactRender5537102125985
getState1266428947153224
initialActions3039528
loadScripts17121139262442921222478
setupStore254250333277
numNetworkReqs75571352285128
📊 Page Load Benchmark Results

Current Commit: 828c4c5 | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±43ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 721ms (±38ms) 🟢 | historical mean value: 724ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±12ms) 🟢 | historical mean value: 81ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 43ms 1.01s 1.33s 1.05s 1.33s
domContentLoaded 721ms 38ms 703ms 992ms 736ms 992ms
firstPaint 77ms 12ms 64ms 188ms 84ms 188ms
firstContentfulPaint 77ms 12ms 64ms 188ms 84ms 188ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.17 KiB (0.02%)
  • common: 20 Bytes (0%)

@juanmigdr juanmigdr requested a review from a team as a code owner December 12, 2025 10:20
@metamaskbot
Copy link
Collaborator

Builds ready [a4099ab]
UI Startup Metrics (1265 ± 112 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12651024148111213591442
load103786512599011071169
domContentLoaded103185712548911001162
domInteractive2615101202189
firstPaint47576118839010051137
backgroundConnect21619625112223241
firstReactRender473293135374
getState46171562855129
initialActions104112
loadScripts822661103587893956
setupStore1263751421
numNetworkReqs1367519671
BrowserifyPower User HomeuiStartup19281624269516420242242
load1099876157713011891307
domContentLoaded1089871156513111801302
domInteractive32171392628111
firstPaint567103140041810291253
backgroundConnect25220060180242527
firstReactRender51419385264
getState19914968057214260
initialActions102112
loadScripts86767712621249521087
setupStore1574161431
numNetworkReqs71581412070130
WebpackStandard HomeuiStartup849686110981902999
load67758293571729806
domContentLoaded67157892770723800
domInteractive2716101202387
firstPaint26083805191240723
backgroundConnect12699131230
firstReactRender64342944472154
getState3014104143756
initialActions103112
loadScripts66857691869720794
setupStore1163951319
numNetworkReqs1367819673
WebpackPower User HomeuiStartup14221119215519515271757
load726591958101818909
domContentLoaded719585950101809902
domInteractive32181452628102
firstPaint28499880199282716
backgroundConnect908661152101557
firstReactRender51419265364
getState17814527925187236
initialActions102012
loadScripts716583941100801899
setupStore1574981436
numNetworkReqs71562212566129
FirefoxBrowserifyStandard HomeuiStartup14221135236824215031862
load1137940201718111811375
domContentLoaded1136933201618211811375
domInteractive10332957151115236
firstPaint------
backgroundConnect61213465669188
firstReactRender42336884661
getState147148151226
initialActions103122
loadScripts1102914195017111291301
setupStore155121161250
numNetworkReqs1568521977
BrowserifyPower User HomeuiStartup27701687373254431893430
load17371015266050121572371
domContentLoaded17361015266050121562370
domInteractive232331135335253989
firstPaint------
backgroundConnect15925996132180389
firstReactRender6036137166499
getState1448238952169242
initialActions218126
loadScripts1682998263448421122316
setupStore575104114853231
numNetworkReqs73521512467130
WebpackStandard HomeuiStartup16551354273820217811964
load13551104224914114051578
domContentLoaded13541104224914114041578
domInteractive862822647127163
firstPaint------
backgroundConnect67222684886166
firstReactRender443596114559
getState207180291567
initialActions103123
loadScripts13211090201412213621530
setupStore277256401792
numNetworkReqs1568721876
WebpackPower User HomeuiStartup26971824402650331013445
load18781192278247323162501
domContentLoaded18781191278247323162500
domInteractive2733014363803171020
firstPaint------
backgroundConnect14526994167189310
firstReactRender55379596172
getState1327127346162236
initialActions208123
loadScripts18201141275545822492477
setupStore434106911234142
numNetworkReqs75561322289127
📊 Page Load Benchmark Results

Current Commit: a4099ab | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±41ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 720ms (±37ms) 🟢 | historical mean value: 724ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±10ms) 🟢 | historical mean value: 81ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 41ms 1.01s 1.33s 1.07s 1.33s
domContentLoaded 720ms 37ms 703ms 996ms 746ms 996ms
firstPaint 75ms 10ms 60ms 148ms 88ms 148ms
firstContentfulPaint 75ms 10ms 60ms 148ms 88ms 148ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.17 KiB (0.02%)
  • common: 20 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [c41aa56]
UI Startup Metrics (1266 ± 108 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12661039156310813461457
load103685812398810841205
domContentLoaded102985512328710771191
domInteractive261586172376
firstPaint5099712383979931154
backgroundConnect21819328816225249
firstReactRender4730107155279
getState3916137194689
initialActions105113
loadScripts818664100081867971
setupStore1265761324
numNetworkReqs1367619669
BrowserifyPower User HomeuiStartup19181565230914620012195
load1073869139612311831274
domContentLoaded1062865138512411761268
domInteractive2917111222696
firstPaint5179113454029751238
backgroundConnect256196619100240573
firstReactRender49388565162
getState20510872194207307
initialActions103112
loadScripts85067311601229621058
setupStore1463551424
numNetworkReqs72581992366132
WebpackStandard HomeuiStartup82468999268867942
load66358080363713790
domContentLoaded65757479063707783
domInteractive2616102192384
firstPaint23778799169223704
backgroundConnect1267081329
firstReactRender54331933156127
getState291479113846
initialActions106112
loadScripts65457278362705776
setupStore1173841219
numNetworkReqs1367318667
WebpackPower User HomeuiStartup13281026174118014711646
load68956399096779855
domContentLoaded68355798495764850
domInteractive2817108222492
firstPaint29199847204317788
backgroundConnect63660811686421
firstReactRender48396545156
getState18514530833196257
initialActions102011
loadScripts68055497494761842
setupStore1484681236
numNetworkReqs70581512267136
FirefoxBrowserifyStandard HomeuiStartup14231134238318615141760
load1133961199512611961288
domContentLoaded1132961199512611961288
domInteractive81329409589169
firstPaint------
backgroundConnect58232244671184
firstReactRender41327884261
getState1374571332
initialActions104122
loadScripts1100946192811611621242
setupStore146121161148
numNetworkReqs1568321875
BrowserifyPower User HomeuiStartup25931656381052229923423
load16011000279348220162339
domContentLoaded16011000279348220152339
domInteractive167361005255141901
firstPaint------
backgroundConnect206271006221231877
firstReactRender5637105106070
getState1306240157149243
initialActions41468329
loadScripts1525982277046219282188
setupStore61683611146313
numNetworkReqs75561412768137
WebpackStandard HomeuiStartup16231337226318017272037
load1325111116009713691523
domContentLoaded1325111115999713681522
domInteractive772915735102132
firstPaint------
backgroundConnect62232124368166
firstReactRender443394114665
getState197145231589
initialActions103112
loadScripts1294109315549013461478
setupStore216174271586
numNetworkReqs1668823881
WebpackPower User HomeuiStartup26391808450254530273346
load18971196365753523072514
domContentLoaded18971196365753523072514
domInteractive227301783359151997
firstPaint------
backgroundConnect163251058219184960
firstReactRender5636133146072
getState1357931853157246
initialActions2037427
loadScripts18051181355351522222478
setupStore244126253078
numNetworkReqs72471312175124
📊 Page Load Benchmark Results

Current Commit: c41aa56 | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±39ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 726ms (±37ms) 🟢 | historical mean value: 724ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±11ms) 🟢 | historical mean value: 82ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 39ms 1.02s 1.33s 1.08s 1.33s
domContentLoaded 726ms 37ms 703ms 1.00s 748ms 1.00s
firstPaint 77ms 11ms 60ms 172ms 84ms 172ms
firstContentfulPaint 77ms 11ms 60ms 172ms 84ms 172ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.17 KiB (0.02%)
  • common: 20 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [b18e657]
UI Startup Metrics (1284 ± 103 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12841045151810313541459
load105085912778811021201
domContentLoaded104385012718710941182
domInteractive261697172275
firstPaint4618412063759461117
backgroundConnect22320027215232252
firstReactRender4933147175581
getState41171602445100
initialActions105112
loadScripts827651100983879969
setupStore1364151424
numNetworkReqs1368320669
BrowserifyPower User HomeuiStartup19661582282518620412305
load1114907159412411781330
domContentLoaded1103900158712311731317
domInteractive3118129212896
firstPaint593113134342710721287
backgroundConnect23419728116244269
firstReactRender51408175463
getState230152736108231348
initialActions103112
loadScripts88269713741219481104
setupStore1795881637
numNetworkReqs71601321767123
WebpackStandard HomeuiStartup819678113688874978
load66356992278716797
domContentLoaded65856491778711790
domInteractive2616119212183
firstPaint23582693154234669
backgroundConnect1163971130
firstReactRender54332613655129
getState281557113750
initialActions105112
loadScripts65456190877709784
setupStore1163551221
numNetworkReqs1468320673
WebpackPower User HomeuiStartup14201097199119315491778
load71559299495742914
domContentLoaded70858798795736905
domInteractive31151532626101
firstPaint32892942245600864
backgroundConnect1137681184122621
firstReactRender50427345156
getState17614326426188242
initialActions102112
loadScripts70558597893734903
setupStore1573981435
numNetworkReqs71571412067132
FirefoxBrowserifyStandard HomeuiStartup13771117185217314781710
load1099926141510211631278
domContentLoaded1098926141510211621277
domInteractive65301753387134
firstPaint------
backgroundConnect54212354164156
firstReactRender40317484258
getState12798101124
initialActions102112
loadScripts107090813349411321215
setupStore176238321131
numNetworkReqs1568722878
BrowserifyPower User HomeuiStartup26751681394556830863531
load16211000272350220782403
domContentLoaded16211000272350220782403
domInteractive174311127276122975
firstPaint------
backgroundConnect2162411712792171069
firstReactRender5641102116382
getState1287325939151210
initialActions3038627
loadScripts1520975270146519742295
setupStore594103614548245
numNetworkReqs76561402469130
WebpackStandard HomeuiStartup15761300241318016401914
load12921108219013513481517
domContentLoaded12911107218913513481516
domInteractive71292173991132
firstPaint------
backgroundConnect56212203863141
firstReactRender453595104860
getState197149251572
initialActions104122
loadScripts12641087216013113191449
setupStore185147231390
numNetworkReqs1568121876
WebpackPower User HomeuiStartup27381744443055732033449
load19411131340451323792585
domContentLoaded19401131340351323792585
domInteractive2802810893792911021
firstPaint------
backgroundConnect15427987197182921
firstReactRender5735124156195
getState1337025445159236
initialActions2040427
loadScripts18581116270047622892506
setupStore4353286537190
numNetworkReqs72441312367126
📊 Page Load Benchmark Results

Current Commit: b18e657 | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±39ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 721ms (±35ms) 🟢 | historical mean value: 720ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±13ms) 🟢 | historical mean value: 76ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 39ms 1.01s 1.33s 1.06s 1.33s
domContentLoaded 721ms 35ms 702ms 988ms 743ms 988ms
firstPaint 77ms 13ms 56ms 188ms 84ms 188ms
firstContentfulPaint 77ms 13ms 56ms 188ms 84ms 188ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.17 KiB (0.02%)
  • common: 20 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [2081b66]
UI Startup Metrics (1341 ± 99 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1341111015939914101473
load111490613519311791236
domContentLoaded110790013379311691231
domInteractive2917115212494
firstPaint58989135244411111215
backgroundConnect22820526812234254
firstReactRender5335137166681
getState4120114154778
initialActions105114
loadScripts8876881120949521013
setupStore1373141523
numNetworkReqs181174171171
BrowserifyPower User HomeuiStartup19051555246516619912214
load1076873134812711951247
domContentLoaded1067865133712711821238
domInteractive3017119232597
firstPaint57987132942210241220
backgroundConnect249200650103229616
firstReactRender46386954855
getState20214676495201280
initialActions102112
loadScripts85666411371259681034
setupStore15104361434
numNetworkReqs65511361862122
WebpackStandard HomeuiStartup833675100377892966
load65356986973734779
domContentLoaded64756586373730773
domInteractive241588162275
firstPaint23972816164227635
backgroundConnect216105222582
firstReactRender57331893450141
getState3315146204057
initialActions107112
loadScripts64456386172723765
setupStore1063541118
numNetworkReqs171173171169
WebpackPower User HomeuiStartup13751061209420514811727
load7085881120102732897
domContentLoaded7015821114102728891
domInteractive30171382624103
firstPaint28287911209326697
backgroundConnect62761410972222
firstReactRender49399275159
getState17514027026185242
initialActions102011
loadScripts6985801104101726888
setupStore1464071334
numNetworkReqs66511452163126
FirefoxBrowserifyStandard HomeuiStartup13631106186417914561781
load1049912139510511211268
domContentLoaded1048912139410511201268
domInteractive61302033883133
firstPaint------
backgroundConnect57212114878175
firstReactRender4331484454157
getState197220341196
initialActions103122
loadScripts102189712599110931209
setupStore166194241158
numNetworkReqs19986191375
BrowserifyPower User HomeuiStartup26271628414855830633447
load1585972254551921152419
domContentLoaded1584972254551921152419
domInteractive17530112728999977
firstPaint------
backgroundConnect2362411912912231063
firstReactRender59381872062104
getState1447046563165260
initialActions3136427
loadScripts1490957243448920262328
setupStore545103112154238
numNetworkReqs69461322165115
WebpackStandard HomeuiStartup16911369214817217892022
load13631163170511214271586
domContentLoaded13631163170411214261586
domInteractive852821140112156
firstPaint------
backgroundConnect61222043581135
firstReactRender45356564958
getState258264401885
initialActions206122
loadScripts13291138167710813951524
setupStore226196331696
numNetworkReqs20987201380
WebpackPower User HomeuiStartup27831834844475831733439
load19741226745873523682585
domContentLoaded19741226745773523682584
domInteractive214311039315177973
firstPaint------
backgroundConnect205281085272200978
firstReactRender6040117146590
getState1378529649170253
initialActions2143426
loadScripts18561204734572822582560
setupStore3763695730189
numNetworkReqs70511312272119
📊 Page Load Benchmark Results

Current Commit: 2081b66 | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±40ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 724ms (±38ms) 🟢 | historical mean value: 720ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±10ms) 🟢 | historical mean value: 76ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 40ms 1.02s 1.33s 1.06s 1.33s
domContentLoaded 724ms 38ms 705ms 1.00s 740ms 1.00s
firstPaint 78ms 10ms 60ms 160ms 84ms 160ms
firstContentfulPaint 78ms 10ms 60ms 160ms 84ms 160ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.17 KiB (0.02%)
  • common: 576 Bytes (0.01%)

@metamaskbot
Copy link
Collaborator

Builds ready [da8b645]
UI Startup Metrics (1299 ± 112 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12991034167011213581513
load1080880136910211511253
domContentLoaded1073874136310111441247
domInteractive2615105202283
firstPaint54576127341010411178
backgroundConnect21519325611220236
firstReactRender4832119145078
getState371788124259
initialActions108112
loadScripts86666311511019331038
setupStore1273641319
numNetworkReqs181177171169
BrowserifyPower User HomeuiStartup19121560231414719942194
load1097906147812611861323
domContentLoaded1088902146712611781313
domInteractive31171382527106
firstPaint585109136841510251277
backgroundConnect24820665280242442
firstReactRender50418175362
getState19714969857211253
initialActions103112
loadScripts87069212521249531100
setupStore1575581533
numNetworkReqs67571331764121
WebpackStandard HomeuiStartup8616841124849051030
load67257695784729842
domContentLoaded66757095184723833
domInteractive261596202286
firstPaint25177818191233731
backgroundConnect3261773540115
firstReactRender57361813351143
getState311577164269
initialActions106112
loadScripts66356894883721828
setupStore1164371127
numNetworkReqs181182181173
WebpackPower User HomeuiStartup14541135217119415141798
load7236061138100746918
domContentLoaded7166011124100742911
domInteractive33171583127124
firstPaint29197926206253711
backgroundConnect1318693200131653
firstReactRender52397855460
getState17714236729190216
initialActions102011
loadScripts713599111198739901
setupStore1583681435
numNetworkReqs67541431963123
FirefoxBrowserifyStandard HomeuiStartup13681077207116714521747
load105090212658911091211
domContentLoaded105090212658911081211
domInteractive60311553484134
firstPaint------
backgroundConnect56202084172144
firstReactRender4431415384463
getState137107131231
initialActions103112
loadScripts102288612338210801171
setupStore145122171143
numNetworkReqs201090201380
BrowserifyPower User HomeuiStartup26411685362754730683405
load16501023259748520542373
domContentLoaded16501023259748520542373
domInteractive171331148279118985
firstPaint------
backgroundConnect225301077258267963
firstReactRender5939118156498
getState148761069104167233
initialActions3149627
loadScripts15311000257844619362282
setupStore52593811741293
numNetworkReqs70451432464131
WebpackStandard HomeuiStartup16161329223615617091893
load13191099159710213841514
domContentLoaded13191098159710213841514
domInteractive872917737121143
firstPaint------
backgroundConnect692221745103160
firstReactRender4433174174573
getState157118161533
initialActions102012
loadScripts1285107315138913411445
setupStore15576141457
numNetworkReqs20989211379
WebpackPower User HomeuiStartup28241817398854132893689
load19161203268348523632597
domContentLoaded19161203268348623632596
domInteractive280291117380218998
firstPaint------
backgroundConnect154241054190181311
firstReactRender5636143146175
getState1307229049161234
initialActions2028323
loadScripts18431183266045922772484
setupStore435103511038186
numNetworkReqs68451422079111
📊 Page Load Benchmark Results

Current Commit: da8b645 | Date: 12/15/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±39ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 718ms (±36ms) 🟢 | historical mean value: 732ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±13ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 39ms 1.01s 1.33s 1.06s 1.33s
domContentLoaded 718ms 36ms 697ms 993ms 751ms 993ms
firstPaint 76ms 13ms 56ms 192ms 88ms 192ms
firstContentfulPaint 76ms 13ms 56ms 192ms 88ms 192ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.53 KiB (0.02%)
  • common: 20 Bytes (0%)

@juanmigdr juanmigdr added this pull request to the merge queue Dec 15, 2025
Merged via the queue into main with commit a1ebb91 Dec 15, 2025
176 checks passed
@juanmigdr juanmigdr deleted the fix/add-virtualization-to-nfts branch December 15, 2025 12:35
@github-actions github-actions bot locked and limited conversation to collaborators Dec 15, 2025
@metamaskbot metamaskbot added the release-13.14.0 Issue or pull request that will be included in release 13.14.0 label Dec 15, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-13.14.0 Issue or pull request that will be included in release 13.14.0 size-M team-assets

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants