Skip to content

[Feature]: Add minimize/collapse option for "My Notes" panel #748

Description

@tazmeen24

Problem or limitation

The "My Notes" panel on algorithm pages (e.g. Math Theory) always renders at full size, even when empty. It takes up a large fixed block of space above the actual visualizer, pushing the core content (controls, animations) further down the page. This is especially inconvenient on smaller screens or for users who don't use the notes feature at all, since there's currently no way to collapse it out of the way.

Proposed solution

Add a minimize/expand toggle to the notes panel:

  • A "minimize" button (next to "Clear Notes") collapses the panel into a small floating pill or icon button, similar in style to the existing floating scroll-to-bottom button already used on the page.
  • The minimized icon shows a subtle indicator dot when there is saved note content, so users know notes exist without expanding the panel.
  • Clicking the icon re-expands the full panel.
  • The minimized/expanded state is persisted in localStorage (keyed alongside the existing notes storageKey), so it stays collapsed/expanded across refreshes and page visits.

Alternatives considered

  • Auto-collapsing the panel only when empty: rejected because it would hide the feature's discoverability for new users and cause layout shift as soon as they start typing.
  • Moving notes into a sidebar or modal instead of inline: bigger structural change, more disruptive to the current layout, and loses the "always visible while scrolling" convenience of an inline panel.

Use case

Users working through algorithm pages who don't need notes for every topic currently have to scroll past a large empty textarea to get to the actual content. A minimize option lets them collapse notes out of the way while browsing/learning, and quickly reopen it when they want to jot something down - without losing anything they've already written.

Additional context

N/A

Metadata

Metadata

Assignees

Labels

GSSoCOfficial issue for GSSoC contributors

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions