Skip to content

New discovery page which shows trending waves you are not yet following#2091

Merged
GelatoGenesis merged 3 commits intomainfrom
b-17730693723
Mar 9, 2026
Merged

New discovery page which shows trending waves you are not yet following#2091
GelatoGenesis merged 3 commits intomainfrom
b-17730693723

Conversation

@GelatoGenesis
Copy link
Copy Markdown
Collaborator

@GelatoGenesis GelatoGenesis commented Mar 9, 2026

Summary by CodeRabbit

  • New Features

    • Added a new Discovery section showcasing active discussions you're not yet following.
    • Integrated Discovery navigation item across sidebar and header menus.
  • Tests

    • Updated navigation tests to reflect Discovery feature additions.

Signed-off-by: GelatoGenesis <tarmokalling@gmail.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 9, 2026

Warning

Rate limit exceeded

@GelatoGenesis has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 11 minutes and 14 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 432de305-3ebb-4a1d-b9d8-a9b4654b1c0f

📥 Commits

Reviewing files that changed from the base of the PR and between 29c51f6 and dfb9729.

📒 Files selected for processing (3)
  • app/discover/page.tsx
  • components/home/explore-waves/ExploreWavesSection.tsx
  • openapi.yaml
📝 Walkthrough

Walkthrough

The pull request introduces a new Discovery page and navigation feature by adding a DiscoverIcon component, creating a /discover route, updating navigation across multiple UI components (sidebar, header, bottom navigation), removing the ProfileIcon component, and refactoring ExploreWavesSection to accept configurable props for title, endpoint, limit, and view-all behavior.

Changes

Cohort / File(s) Summary
Navigation Tests
__tests__/components/header/AppSidebar.test.tsx, __tests__/components/navigation/BottomNavigation.test.tsx
Updated test expectations to reflect the new Discovery menu item and removal of Profile from bottom navigation.
Discovery Feature
app/discover/page.tsx, components/common/icons/DiscoverIcon.tsx
Added new Discovery page with metadata and a new DiscoverIcon SVG component for the feature.
Icon Updates
components/common/icons/ProfileIcon.tsx
Deleted ProfileIcon component as it is replaced by DiscoverIcon in navigation.
Navigation Component Updates
components/header/AppSidebar.tsx, components/header/header-search/HeaderSearchModal.tsx, components/layout/sidebar/WebSidebarNav.tsx, components/navigation/BottomNavigation.tsx
Added Discovery navigation items with DiscoverIcon across multiple navigation UI surfaces; replaced Profile with Discovery in bottom navigation.
ExploreWavesSection Refactor
components/home/explore-waves/ExploreWavesSection.tsx
Introduced ExploreWavesSectionProps interface and refactored component to accept configurable props (title, subtitle, limit, endpoint, viewAllHref) with defaults, replacing hardcoded values and enabling reusability.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • boosted 3cols #1784: Modifies ExploreWavesSection layout to a responsive grid, directly related to the refactoring of the same component in this PR.
  • profile link to mobile menu #2063: Updates BottomNavigation and ProfileIcon usage, overlapping with the Profile-to-Discovery migration in this PR.
  • App ui/ux fixes #1582: Adds a "Discover" navigation item and associated icon/imports to AppSidebar, matching the navigation changes in this PR.

Suggested reviewers

  • simo6529
  • ragnep
  • analyticsflowee

Poem

🐰 A discovery awaits beneath the morning dew,
New icons hop and navigate where paths run true,
From sidebar to header, the waves explore,
With configurable props, we unlock the door!
Hop, hop, hooray! 🎉

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: a new discovery page displaying trending waves that users are not following, which aligns with the core changes across multiple files.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch b-17730693723

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@components/layout/sidebar/WebSidebarNav.tsx`:
- Around line 244-252: The new WebSidebarNavItem uses pathname.startsWith which
can throw if usePathname() returned null; change the active prop to guard
against null by using optional chaining and a boolean fallback (e.g., compute
active as pathname?.startsWith("/discover") || false) so WebSidebarNavItem
receives a safe boolean; locate the call to WebSidebarNavItem in the component
and replace the active expression accordingly.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 713e5f1a-1926-457b-8c55-8549ec89dcd6

📥 Commits

Reviewing files that changed from the base of the PR and between a4f36a1 and 29c51f6.

📒 Files selected for processing (10)
  • __tests__/components/header/AppSidebar.test.tsx
  • __tests__/components/navigation/BottomNavigation.test.tsx
  • app/discover/page.tsx
  • components/common/icons/DiscoverIcon.tsx
  • components/common/icons/ProfileIcon.tsx
  • components/header/AppSidebar.tsx
  • components/header/header-search/HeaderSearchModal.tsx
  • components/home/explore-waves/ExploreWavesSection.tsx
  • components/layout/sidebar/WebSidebarNav.tsx
  • components/navigation/BottomNavigation.tsx
💤 Files with no reviewable changes (1)
  • components/common/icons/ProfileIcon.tsx

Comment thread components/layout/sidebar/WebSidebarNav.tsx
Signed-off-by: GelatoGenesis <tarmokalling@gmail.com>
Signed-off-by: GelatoGenesis <tarmokalling@gmail.com>
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Mar 9, 2026

@GelatoGenesis GelatoGenesis merged commit 02e1ff8 into main Mar 9, 2026
7 checks passed
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.

2 participants