Skip to content

feat(home): refine landing animations and server report privacy - #19

Merged
devchaudhary24k merged 2 commits into
mainfrom
dev
Sep 29, 2026
Merged

devchaudhary24k merged 2 commits into
mainfrom
dev

Conversation

@devchaudhary24k

@devchaudhary24k devchaudhary24k commented Sep 29, 2026 •

Copy link
Copy Markdown
Member

Summary

Refines the home page animations and tightens what Sentry receives from the server and browser.

Home page

  • Uses every core: the grey total bar that turned green is replaced with an up-next queue of the last twelve images. Workers visibly take the next image, the queue empties as the count climbs, and the batch ends on "All 240 saved as WebP". The workers then clear and the queue refills, so the loop restarts without a jump.
  • Quick tools each show the cause before the effect: Convert runs an encode sweep over the result, Compress moves a quality slider before the file shrinks, Resize has a pointer dragging the corner handle, Crop has an aspect-ratio chip strip with a sliding highlight, Rotate presses its button and turns its icon, and Strip metadata strikes through each field before it leaves.
  • On your device: the diagram is now a GSAP scene. Files run through Decode, Edit and Encode one at a time, with the tab's status naming each step, and the batch goes to the ZIP on one pass and to the folder on the next. Pointing at a chip lights its path, and clicking an input sends that file through next.
  • useScene takes an optional timelineRef, so a scene can be steered, for example by jumping to a label.

Sentry

  • Visitor IPs: Sentry copies the first X-Forwarded-For address into every server span as http.client_ip, even with personal data off. It is now removed from every span, in line with ADR 0005.
  • Client disconnects: a browser that closes its tab while sending a report through the tunnel route made the server's read fail with an unhandled AbortError 500. The server now drops those.
  • PostHog noise: PostHog's own console messages, such as its toolbar failing to load for a signed-in admin, stay out of Sentry logs.
  • DEPLOY.md lists what Sentry leaves out and asks for Prevent Storing of IP Addresses in the project settings.

After merging

  • Sentry: turn on Settings → Projects → hexlode → Security & Privacy → Prevent Storing of IP Addresses.

Testing

  • pnpm validate: Biome, types, unit tests and the production build.
  • Unit tests cover dropping client disconnect aborts (including one wrapped as a cause), keeping other server errors, removing IP attributes from spans, and filtering PostHog messages from browser logs.
  • Each scene was checked frame by frame in headless Chromium at 1600 px wide and on a 390 px phone, with no console errors.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Release Please writes .release-please-manifest.json without spaces, which
fails biome ci on every release pull request.
* feat(home): refine landing animations and server report privacy

- Add interactive processing scenes and polished tool animations
- Filter visitor IPs and ignore client disconnect errors in Sentry
- Cover server report filtering with tests

* feat: refine home animations and record Sentry deploys

- Animate file conversion and device signals through connected ports
- Send server console logs to Sentry and record staging and production deploys
@devchaudhary24k
devchaudhary24k merged commit 453ddce into main Sep 29, 2026
16 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