Skip to content

[agent-team] Homepage UX improvements: remove noise, iOS keyboard fix, slower drip#116

Draft
github-actions[bot] wants to merge 1 commit intomainfrom
agent-team/issue-115-homepage-ux-fixes-cfaaf2a7be963599
Draft

[agent-team] Homepage UX improvements: remove noise, iOS keyboard fix, slower drip#116
github-actions[bot] wants to merge 1 commit intomainfrom
agent-team/issue-115-homepage-ux-fixes-cfaaf2a7be963599

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Closes #115

Summary

Seven UX issues on the homepage chat UI are addressed: the static hero tagline and name-initials avatar are removed to give the chat panel more vertical space; the JSON Resume footer credit is dropped; the "clear conversation" button is removed; MAX_RESPONSE_CHARS is cut from 2000 → 800 for conversational brevity; DRIP_TICK_MS is slowed from 18 → 40 ms/char for comfortable reading pace; and a visualViewport resize/scroll listener writes a --keyboard-inset CSS variable so the .resume-viewport height shrinks when the iOS Safari on-screen keyboard appears, keeping the chat input visible and reachable.

Plan reference

Implemented from the plan posted in issue #115 comment by github-actions[bot].

Test status

cd web && npx vitest run

✅ 21 test files, 105 tests — all passing.

Note: ChatPanel — UX optimizations > caps response length and appends a truncation indicator now has a 12 000 ms per-test timeout (up from the 5 000 ms default) because the 40 ms drip takes ~6 s to fully reveal 800 chars before appending the truncation suffix.

🤖 agent-team / implementer

Generated by Implementer Agent ·

To install this agentic workflow, run

gh aw add verkyyi/github-agent-runner/catalog/agent-team/implementer-agent.md@main

- Remove static hero-explainer tagline (duplicated chat greeting)
- Remove name-initials avatar; keep avatar only when a photo is provided
- Remove JSON Resume credit from footer
- Remove "clear conversation" button from ChatPanel
- Reduce MAX_RESPONSE_CHARS 2000→800 for conversational brevity
- Slow DRIP_TICK_MS 18→40ms for comfortable reading pace
- Add visualViewport resize/scroll listener writing --keyboard-inset CSS
  variable so iOS Safari keyboard no longer hides the chat input
- Update global.css .resume-viewport height to respect --keyboard-inset
- Update tests: Hero (explainer + initials), ChatPanel (clear button +
  truncation), App (explainer) — 105 tests passing

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions github-actions Bot added agent-team Opt-in marker for the agent-team pipeline agent-team:pr labels Apr 21, 2026
@github-actions
Copy link
Copy Markdown
Contributor Author

Review

Verdict: ✅ Approve

Spec alignment: All 7 acceptance criteria satisfied.

  • iOS keyboard fix ✅ — ChatPanel.tsx adds a visualViewport resize/scroll listener that writes --keyboard-inset to document.documentElement; global.css updates .resume-viewport height to calc(100dvh - var(--keyboard-inset, 0px)). Guard for missing visualViewport is in place; cleanup is correct.
  • Hero explainer removed ✅ — Hero.tsx drops <p className="hero-explainer">, Hero.css drops the rule.
  • Avatar initials removed ✅ — Hero.tsx condtionalizes the avatar div on image prop; initials() helper deleted.
  • Footer JSON Resume credit removed ✅ — Separator + link deleted from Footer.tsx.
  • Clear conversation button removed ✅ — reset() function and chatp-header JSX block removed from ChatPanel.tsx; CSS rules removed from ChatPanel.css.
  • MAX_RESPONSE_CHARS ≤ 800 ✅ — Changed from 2 000 to 800; truncation suffix and test updated to match.
  • Drip rate ≤ 40 ms/char ✅ — DRIP_TICK_MS changed from 18 to 40.

Plan adherence: All 8 plan-listed files changed as specified. One additional file (App.test.tsx) was updated to remove an assertion that checked for the now-deleted explainer text — a required side-effect, not out-of-scope.

Tests: PR body shows ✅ 21 test files, 105 tests — all passing. Truncation test updated with 800-char limit and 12 000 ms timeout to account for the slower drip. Test count (21 / 105 vs plan's 16 / 101) reflects tests added after planning — expected.

Issues found: None.

Nits (non-blocking)

  • App.test.tsx was not listed in the plan's "Files to change" but needed updating. Minor planning miss — harmless.
  • Test count discrepancy in PR body vs plan (21/105 vs 16/101) — a note in the PR body explaining this would be helpful for future readers, but not required.

🤖 agent-team / reviewer

Generated by Reviewer Agent ·

To install this agentic workflow, run

gh aw add verkyyi/github-agent-runner/catalog/agent-team/reviewer-agent.md@cb66d12806d7f00d220f11e964bc27dfec672913

@github-actions github-actions Bot added the agent-team:reviewed agent-team: PR has been reviewed label Apr 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent-team:pr agent-team:reviewed agent-team: PR has been reviewed agent-team Opt-in marker for the agent-team pipeline

Projects

None yet

Development

Successfully merging this pull request may close these issues.

UI/UX Problem of HomePage

0 participants