Skip to content

feat(desktop): Projects v3 — overview redesign, activity feed, agent access & sync controls#1851

Draft
thomaspblock wants to merge 9 commits into
mainfrom
projects-v3
Draft

feat(desktop): Projects v3 — overview redesign, activity feed, agent access & sync controls#1851
thomaspblock wants to merge 9 commits into
mainfrom
projects-v3

Conversation

@thomaspblock

Copy link
Copy Markdown
Contributor

Summary

A broad UI/UX pass on the desktop Projects experience ("v3").

Overview page

  • Redesigned overview layout: contribution graph + top-callout stats, a GitHub-style activity feed in the left column, and a right rail with People, Top Languages, and Active Repositories.
  • Contribution graph uses the theme primary color and tints (not grayscale), tooltips on the legend dots, and subtle borders for not-yet-visited cells.
  • Activity feed rendered as a timeline with event-specific icons/connectors; bodies are flattened from Markdown to clean plain-text previews; status tags aligned top-right; avatars/names/timestamps deep-link to the underlying event.
  • Fixed overview responsiveness: the scroll pane no longer overflows horizontally; content reflows/truncates to the pane width.
  • "Active Repositories" rows: name + activity graph nested right of the icon, with the graph capped to the People avatar-row width.

Repositories / cards / toolbar

  • Removed card/list/sort borders; per-segment hover on repository progress bars.
  • Left-aligned toolbar, rounded + larger project/repo icons, reordered filters, pill-styled selected menu items (matching the sidebar), and a search entry point.

Agent access

  • Inline agentic access to git repositories directly on the Projects page (persisted conversation with a clear-conversation control, agent avatars, rich-text composer) instead of navigating away to a DM channel.

PR / issue / commit detail

  • Two-column PR detail layout with author attribution under the title.
  • Consistent "Created [date] by [name]" metadata for PRs and issues; natural-sentence issue creation line.
  • Commits tab: rounded day-group boxes connected to the timeline rail; filled terminal icon.

Local/remote sync

  • Repo source controls redesigned (source + branch dropdowns, single contextual action) with push/pull backed by a new pull_project_local_repository command and can_pull/can_push sync status.

Test plan

  • Overview renders correctly and reflows at narrow/wide desktop widths (no horizontal overflow)
  • Activity feed: markdown previews render as plain text; deep links open the right event; status tags top-right
  • Active Repositories graph stays within the People avatar-row width
  • Agent conversation persists on the Projects page and restores across reloads
  • Commits tab boxes are rounded and connected to the timeline
  • Local/remote push & pull work and reflect accurate sync status
  • CI green

Overview: primary-tinted contribution heatmap with per-dot legend
tooltips and flush-left month labels, pill filter toolbar (reordered,
content-aligned), larger rounded project/repo icons, per-segment
activity bar tooltips.

PR detail: full-height meta rail (two-column card layout), title-first
header with author attribution line.

Code tab: sync-aware Remote/Local pill toggle — a small round push or
pull button appears inside the toggle when the local checkout is ahead
of or behind the remote, backed by a new fast-forward-only
pull_project_local_repository Tauri command and can_pull sync status,
with 60s polling + focus refetch. Sync hooks split into
repoSyncHooks.ts to keep hooks.ts under the file-size ceiling.
…ropdown sync

Replace the projects search page with an agent prompt page that keeps the
conversation inline: submitting opens a DM with the agent under the hood,
renders the live thread full-width on the projects page, and pins the
composer for follow-ups. The agent picker and thread rows show profile
avatars. Also swap the remote/local pill toggle for a GitHub Desktop-style
source dropdown with a single contextual pull/push/fetch action button.
Split project card/list-row components out of ProjectsView into
ProjectCards.tsx to stay under the file-size cap.
Move pull request approval into the conversation flow, resolve creator names
across pull requests and issues, and present creation details as readable
sentences. Simplify issue rows, use a filled terminal action icon, and extract
project Git types to keep the shared API module within its size limit.
Add a workspace activity-focused overview, consistent selected navigation,
and restoration controls for inline project agent conversations.
…y feed

- Constrain the Projects overview scroll pane to the pane width so content
  reflows/truncates instead of overflowing horizontally
- Cap the "Active Repositories" activity bars to a full avatar-row width
- Render activity-feed bodies as plain text (strip Markdown syntax) for
  clean previews via a shared markdownToPlainText helper
- Add rounded corners and a timeline connector stub to commit day-group boxes
- Move the activity-feed status tag to the top-right, aligned with the meta text
…row width

Stack the activity bar beneath the repo name (both right of the icon) and cap
its width so its right edge stays within the People avatar row above.
The projects overview redesign no longer lists repository cards/rows by
default (it shows the activity feed + right rail), so the project-*.spec.ts
smoke tests timed out waiting for project-card-buzz / project-row-buzz.
Switch to the Repositories filter (exact-match button) before locating the
project entry to restore the card/row list.
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