Skip to content

feat: add congratulatory balloons and confetti on job offer stage transition#619

Open
Mr-Nobody1 wants to merge 5 commits into
DaKheera47:mainfrom
Mr-Nobody1:offer-stage
Open

feat: add congratulatory balloons and confetti on job offer stage transition#619
Mr-Nobody1 wants to merge 5 commits into
DaKheera47:mainfrom
Mr-Nobody1:offer-stage

Conversation

@Mr-Nobody1

Copy link
Copy Markdown
Contributor

I added a small silly animation when you finally get a Offer!

image

Copilot AI review requested due to automatic review settings June 12, 2026 20:24

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

This PR centralizes the “offer celebration” UI effect into a reusable client helper, updates pages/tests to use it, and makes the Typst template path tests Windows-path-safe.

Changes:

  • Normalize Typst template-path assertions to be cross-platform (Windows vs POSIX separators).
  • Introduce celebrateOffer() helper and replace inline canvas-confetti calls in client pages.
  • Update client tests/docs to align with the new celebration helper and document the effect.

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
orchestrator/src/server/services/resume-renderer/typst.test.ts Normalizes path separators before asserting template paths.
orchestrator/src/client/pages/JobPage.tsx Replaces inline confetti logic with celebrateOffer().
orchestrator/src/client/pages/JobPage.test.tsx Mocks the new celebration helper for test stability.
orchestrator/src/client/pages/InProgressBoardPage.tsx Uses celebrateOffer() for offer-stage transitions (including DnD path).
orchestrator/src/client/pages/InProgressBoardPage.test.tsx Updates mocks from canvas-confetti to celebrateOffer().
orchestrator/src/client/lib/celebrate.ts Adds a new reusable celebration implementation (confetti + balloons).
docs-site/docs/features/in-progress-board.md Documents the celebration effect on Offer transitions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +7 to +15
export function celebrateOffer() {
// 1. Primary confetti burst from the middle/bottom area
confetti({
particleCount: 140,
spread: 90,
origin: { y: 0.6 },
zIndex: 999999,
colors: ["#10b981", "#34d399", "#6ee7b7", "#3b82f6", "#f59e0b", "#ec4899", "#a855f7"],
});
origin: { y: 0.6 },
colors: ["#10b981", "#34d399", "#6ee7b7", "#ffffff"],
});
celebrateOffer();
Comment on lines +1 to +6
---
id: in-progress-board
title: In Progress Board
description: Post-application kanban board for tracking fewer, higher-attention jobs through interview and offer stages.
sidebar_position: 3
---

it("exposes the bundled Typst template", async () => {
expect(getTypstTemplatePath()).toContain("typst-themes/classic/main.typ");
expect(getTypstTemplatePath().replace(/\\/g, "/")).toContain("typst-themes/classic/main.typ");
expect(manifest.tokens).toBeUndefined();
}
expect(getTypstTemplatePath(theme)).toContain(
expect(getTypstTemplatePath(theme).replace(/\\/g, "/")).toContain(
@Mr-Nobody1

Copy link
Copy Markdown
Contributor Author

omg, every time. @DaKheera47 Do you think user setting for this is needed?

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.

2 participants