Skip to content

ENG-9742: Update mobile drawer menu for web#6642

Open
carlosabadia wants to merge 2 commits into
mainfrom
carlos/update-mobile-drawer
Open

ENG-9742: Update mobile drawer menu for web#6642
carlosabadia wants to merge 2 commits into
mainfrom
carlos/update-mobile-drawer

Conversation

@carlosabadia

Copy link
Copy Markdown
Contributor

No description provided.

@carlosabadia carlosabadia requested a review from Alek99 as a code owner June 10, 2026 09:20
@carlosabadia carlosabadia added the skip-changelog For doc/internal changes label Jun 10, 2026
@carlosabadia carlosabadia requested a review from a team as a code owner June 10, 2026 09:20
@linear-code

linear-code Bot commented Jun 10, 2026

Copy link
Copy Markdown

ENG-9742

@codspeed-hq

codspeed-hq Bot commented Jun 10, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 26 untouched benchmarks
⏩ 8 skipped benchmarks1


Comparing carlos/update-mobile-drawer (eedbf1f) with main (fdb00db)

Open in CodSpeed

Footnotes

  1. 8 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@greptile-apps

greptile-apps Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR replaces the docs app's local mobile drawer with the shared marketing-site drawer, giving both sites a unified collapsible navbar menu (Products, Resources, Solutions panels). The old flat-item-list drawer is removed from docs/app and a full-featured version is promoted to reflex_site_shared.

  • docs/app/.../sidebar.py is reduced to a 5-line re-export, eliminating ~155 lines of duplicated code.
  • reflex_site_shared/views/sidebar/__init__.py gains products_panel, resources_panel, solutions_panel, collapsible/link/footer helpers, and a drawer_top_offset utility for viewport-aware sizing.
  • icons.py adds the feather_pen SVG used by the "Read customer stories" row in the Solutions panel.

Confidence Score: 4/5

Safe to merge; the only concern is a potential layout regression in docs_sidebar_drawer where explicit height and flex helpers were dropped from the inner container.

The new docs_sidebar_drawer replaces h-[calc(100dvh-4rem)] min-h-0 on the outer content and flex-1 min-h-0 on the inner container with simpler h-full and no flex modifiers. If the drawer portal doesn't supply a properly sized parent, the sidebar may not scroll correctly on mobile. All other changes — the collapsible panel system, icon addition, and lock file bumps — look correct.

packages/reflex-site-shared/src/reflex_site_shared/views/sidebar/init.py — specifically the docs_sidebar_drawer height and flex classes.

Important Files Changed

Filename Overview
docs/app/reflex_docs/components/docpage/navbar/buttons/sidebar.py Replaced ~159-line local sidebar implementation with a 5-line re-export from reflex_site_shared, eliminating duplication.
packages/reflex-site-shared/src/reflex_site_shared/views/sidebar/init.py Full rewrite of the shared sidebar: replaces flat item list with a collapsible multi-panel menu (Products/Resources/Solutions). docs_sidebar_drawer loses explicit height calculation and flex-1/min-h-0 on the inner container compared to the old implementation.
packages/reflex-site-shared/src/reflex_site_shared/components/icons.py Adds the feather_pen SVG icon used in the Solutions panel's 'Read customer stories' row.
docs/app/reflex.lock/bun.lock Lock file updates bumping several @radix-ui packages to minor/patch versions.

Comments Outside Diff (1)

  1. packages/reflex-site-shared/src/reflex_site_shared/views/sidebar/__init__.py, line 498-510 (link)

    P2 The docs_sidebar_drawer inner container dropped flex-1 and min-h-0 that were present in the previous implementation. Without flex-1, the inner div won't grow to fill the available drawer height, and without min-h-0, overflow scrolling won't work correctly in a flex container when the sidebar content is taller than the visible area. The outer content also changed from the explicit h-[calc(100dvh-4rem)] min-h-0 to h-full, which only works if the drawer portal provides a properly sized parent.

Reviews (1): Last reviewed commit: "Merge branch 'main' of https://github.co..." | Re-trigger Greptile

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-changelog For doc/internal changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant