feat: explore page v2#29473
Conversation
racitores
left a comment
There was a problem hiding this comment.
Would it be possible to add component view test to this PR before it is merged.
It would be nice it you could add things such:
- Feature-flag fallback works end-to-end
- Dapps tab favorites behavior (new star/remove flow)
- Dapps/Sites row browser navigation contract
- Sites Full View mode: favorites behavior
- Sports tab loading/empty/list transitions
- Predict featured carousel integration in Explore context
- Tab strip UX regression guard
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection:
The Performance Test Selection: |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
There are 3 total unresolved issues (including 1 from previous review).
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 97f3435. Configure here.
|
Thanks @racitores 🫶 Discussed with @juanmigdr and we will do this as a fast follow once this is merged. I'll create tickets around CV tests (I agree that we should capture these). |
|
There was a problem hiding this comment.
One component-library concern stood out here. The TabsBar spacing change looks like an Explore-driven fix, but because it changes how caller-provided padding works it affects every existing TabsBar consumer, not just this screen.
non-blocking: since this PR also adds several Explore-specific UI compositions, it would be useful to get a quick pass from @brianacnguyen on design-system usage and whether any newer shared components fit here before we grow these patterns further.
hjetpoluru
left a comment
There was a problem hiding this comment.
It was confirmed that the additional e2e tests for Explore v2 would be submitted in a separate PR. As a result, the current changes to the E2E files look correct to me.



Description
Rollout / safety net
explorePageV2Enabled(app/selectors/featureFlagController/explorePageV2/index.ts): defaults tofalse. When off, users get the legacy single-page Explore inExplorePageV1.tsx(one scroll: Quick Actions, predictions, tokens, perps, stocks, sites). When on, they get the tabbed Explore V2—ops can switch back to V1 via the flag without reverting code.Main additions
TrendingView.tsxusingTabsList: Now, Macro, RWAs, Crypto, Sports, and Dapps—each tab is its own focused vertical experience instead of one long mixed feed.app/components/Views/TrendingView/tabs/that split content by theme (e.g. Macro uses macro-style perps + predictions; Crypto emphasizes crypto perps/tokens; Sports uses sports-oriented prediction markets viauseSportsMarketsFeed).PillScrollList,PillToggleCardList,ExplorePill, perps/token pill row items) so movers and macro views are easier to scan than the old single-stack layout alone.feeds/dapps/hooks and tile/list UI) plus trending sites, wired through Sites / UrlAutocomplete / SitesFullView and hooks likeuseBrowserFavoritesSitesanduseBrowserRecentsSites.usePerpsFeedsupports variants (all/macro/crypto, etc.) so each tab can show the right subset with row vs tile vs pill layouts as needed.app/components/Views/TrendingView/search/(useExploreSearch,ExploreSearchResults,SearchFeedRow,TapView, search analytics)—multi-feed omni-search with debouncing and clearer section typing for renderers.Main removals / replacements
sections.config.tsx(and tests) that drove dynamic section composition is gone in favor of explicit tab components.exploreSectionsOrderfeature-flag plumbing—remote ordering of Explore sections is no longer the model with fixed tabs on V2 (V1 keeps a fixed legacy stack inExplorePageV1).utils/exploreSearchand the hooks-localuseExploreSearchin favor of thesearch/module and a single consolidated hook API.What stayed the same (high level)
Changelog
CHANGELOG entry: developed explore page v2 behind a FF
Related issues
Fixes: https://consensyssoftware.atlassian.net/browse/ASSETS-3088
Manual testing steps
Screenshots/Recordings
Before
After
Screen.Recording.2026-04-29.at.19.23.23.mov
s] -->
Pre-merge author checklist
Performance checks (if applicable)
trace()for usage andaddTokenfor an exampleFor performance guidelines and tooling, see the Performance Guide.
Pre-merge reviewer checklist
Note
Medium Risk
Large UI/navigation refactor across Explore, search, and Sites with new hooks/components and removed legacy section-config plumbing; regression risk is mitigated by gating V2 behind
explorePageV2Enabledbut still touches multiple user entry points.Overview
Adds a feature-flagged tabbed Explore V2 in
TrendingView(Now/Macro/RWAs/Crypto/Sports/Dapps) and preserves a newExplorePageV1fallback whenexplorePageV2Enabledis off.Reworks Explore’s composition primitives with new reusable UI building blocks (
HorizontalCarousel,CardList, pill rows/toggles) and updatesPredictHomeFeaturedCarouselto render directly fromusePredictionsFeedinstead of the oldSectionabstraction.Overhauls Explore search to use the new
search/useExploreSearchAPI (section list shape + debouncing), updates UrlAutocomplete to adapt the new sections model (including mergingtokens+stocks), and updates “View all” results rendering to useSearchFeedRow.Improves Sites UX and data plumbing:
SiteRowItemnow supports local/remote icons withWebsiteIconfallback + favorite removal action,SitesListowns navigation (removingSiteRowItemWrapper),SitesFullViewgains a favorites mode wired to ReduxremoveBookmark, and adds new Redux-driven hooks for favorites/recents plus shared query matching helpers.Includes small correctness/UX fixes: avoids
usePredictMarketDataempty-frame flash viauseLayoutEffect, appendscustomQueryParamsto Polymarket pagination queries, adds newTokenDetailsSourcevalues for Explore entry points, refactors trending token row press handling intouseTrendingTokenPress, and adjustsTabsBarpadding for scroll vs non-scroll layouts.Reviewed by Cursor Bugbot for commit 97f3435. Bugbot is set up for automated code reviews on this repo. Configure here.