Skip to content

feat: a Sankey chart of how applications went - #78

Merged
coderback merged 1 commit into
feat/gmail-backfillfrom
feat/application-sankey
Nov 3, 2026
Merged

coderback merged 1 commit into
feat/gmail-backfillfrom
feat/application-sankey

Conversation

@coderback

Copy link
Copy Markdown
Owner

Why

To show the bigger picture of the job hunt: how many applications got a reply, and where they ended up.

What changed

A third view on the Applications page, "How they went": from Applied through Responded and Interview to Offer, Rejected, No reply, Still waiting or Closed by you, over 3 months to 2 years.

  • Paths: each application's path comes from its status history. Applications never sent aren't counted.
  • No reply: nothing has happened for 4 weeks. Before that it's Still waiting.
  • Reading it: every node is labelled with its count. Hovering or focusing a flow gives its count, and the same figures are in a table.
  • Limits: the chart says it misses applications with no confirmation email and steps that happened by phone.

The layout is plain SVG in lib/flow.ts, with no new dependency: fixed columns made d3-sankey unnecessary.

Colours

Three meanings rather than one colour per node: moving forward (blue), turned down (orange), silence (grey). Green and orange failed the colourblind check, so Offer is blue and identified by its label. Colourblind separation passes in light and dark. The checker still flags the grey as too neutral, which is intended, and blue and orange sit slightly outside its lightness range in dark mode.

Testing

  • Frontend: type check, lint, build and all 20 browser tests pass, including a new one for the chart's counts and range.
  • Backend: 1169 passed, 8 skipped, 46 browser tests deselected, with the whole stack applied.
  • Looked at a screenshot of the light theme with sample data. Dark mode hasn't been looked at, and the chart hasn't been seen with real data.

Merge order

Last of three. Based on feat/gmail-backfill.

The Applications page gains a third view, How they went: from Applied through Responded and Interview to Offer, Rejected,
No reply (nothing for 4 weeks), Still waiting or Closed by you, over 3 months to 2 years. It takes each application's path
from its status history, and it shows how many heard back. Hovering or focusing a flow gives its count, and the figures
are also there as a table. It says what it can't know: applications with no confirmation email, and steps by phone.
@coderback
coderback merged commit 4d5e3da into feat/gmail-backfill Nov 3, 2026
3 of 4 checks passed
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