Skip to content

feat(frontend): find a person on Manage Teams - #330

Merged
sabinem merged 1 commit into
mainfrom
feat/team-person-search
Oct 9, 2026
Merged

sabinem merged 1 commit into
mainfrom
feat/team-person-search

Conversation

@sabinem

@sabinem sabinem commented Oct 9, 2026 •

Copy link
Copy Markdown
Collaborator

Manage Teams: find a person by name

As an organizer arranging a hundred people into teams, I can type part of
someone's name and see at once where they are — on which team, or in
Unassigned — and jump straight to them.
Before, the only way was to scan every
team card and scroll through the Unassigned column by eye, or use the browser's
own find, which knows nothing about the Unassigned column's separate scrolling
or about accents.

  • A "Find a person…" field sits right above the projects and the Unassigned
    column, and sticks below the save bar while you scroll, so the field and the
    counter stay in view as you jump between matches.
  • Everyone whose name matches gets an accent outline, with the matched letters
    marked. The current match gets a thicker outline, and a counter shows where you
    are ("2 of 3").
  • Typing jumps to the first match; Enter and ↓ go to the next one, Shift+Enter
    and ↑ to the previous one, wrapping around. Esc or × clears. Jumping scrolls
    the page, and the Unassigned column too when the person is there.
  • Matching ignores case and accents and finds a match anywhere in the name:
    "jose" finds "José Núñez", "nunez" too.
  • The search only highlights. It never hides or reorders anyone, and it works
    independently of the answer and project filters. Someone in the greyed "Not
    matching" part of Unassigned is shown at full strength when the search finds
    them.

Why the field sticks

Browsers keep the field you are typing in on screen. While the field scrolled
away with the page, every jump to someone further down was pulled straight back
up to it, so people far down the page could not be reached by typing. Keeping
the field in view removes that tug. Its sticking position is measured from the
save bar's actual height, so it stays below the bar when the bar wraps onto two
lines on a narrow screen.

Deliberately left out

  • Names only: the search does not look at registration answers or emails.
    Answers already have the filters, and emails are not shown on this page.
  • Not remembered: unlike the filters, the search is cleared when you leave
    the page. A search left over from yesterday would look like people had been
    marked for some reason.
  • Typing restarts at the first match: each keystroke jumps back to the
    first match rather than staying near the current one.
  • Unassigned heading hidden while scrolling, an existing problem: the
    Unassigned column sticks about 1rem from the top of the window, which is
    under the nav bar, so its heading disappears behind the bars when you scroll
    down. The sticky search row covers a little more of it. To be fixed
    separately.

Type part of a name to highlight everyone who matches, on teams and in
Unassigned, and jump between matches with Enter / Shift+Enter or the
arrow buttons. Matching ignores case and accents and finds the text
anywhere in the name. It only highlights: nobody is hidden or reordered,
and it works independently of the pool filters.

The search row sits right above the teams and sticks below the save
bar. Browsers keep the field being typed in on screen, so a field that
scrolled away with the page pulled every jump back up to itself.
@sabinem
sabinem force-pushed the feat/team-person-search branch from cbbb46b to a52c858 Compare October 9, 2026 08:40
@sabinem
sabinem merged commit 6865828 into main Oct 9, 2026
3 checks passed
@sabinem
sabinem deleted the feat/team-person-search branch October 9, 2026 13:46
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.

1 participant