// changelog

Changelog

Everything we ship to Catch — new capabilities, refinements, and fixes. Updated as we release.

v2.3
The feedback release

Shake-to-report feedback, on every platform

Catch now collects in-app feedback everywhere you ship: users shake their phone — or click a button — to capture the screen, annotate it, and send a note.

  • newApple & Android SDKs. Shake to report — CatchDev captures the current screen, lets users draw on it, and attaches device context. Built on UIKit and Android Views with zero third-party dependencies; in early access via Swift Package Manager and GitHub Packages, with CocoaPods and Maven Central to follow at public launch.
  • newWeb feedback widget. @catch.dev/feedback renders the reporter inside a Shadow DOM so it never collides with your styles — an ESM bundle plus a single-tag script, publishing to npm and the CDN at public launch.
  • newFeedback inbox. Reports land in the dashboard under App → Feedback, with the annotated screenshot, device context, and any custom metadata you attach.
  • improvedReport ingest is idempotent — client retries deduplicate on a reportId, and the API reports exactly what happened to a screenshot upload instead of dropping it silently.
  • newSetup guides for the iOS, Android, and web SDKs in the docs.
v2.2
A fresh coat of paint

A redesigned catch.dev

The public site was rebuilt end to end — and the dashboard picked up a set of fixes along the way.

  • newBlog & case studies. Engineering notes and customer stories, with full SEO plumbing underneath.
  • improvedMarketing pages redesigned on a stricter version of our design system — the same one this changelog is built on.
  • improvedPolicy pages rebuilt on a shared template, so every legal page reads and renders consistently.
  • fixedDashboard pages opened by direct URL no longer render empty — server-side fetches now carry your session.
  • fixedTeam invite links resolve reliably for new teammates.
v2.1
Boring on purpose

Hardened tenant isolation & gated deploys

A security and reliability pass on the core: stricter isolation between organizations, and a test gate in front of every deploy.

  • improvedTenant isolation, checked at compile time. Organization-scoped queries are now verified to carry an explicit tenant filter before anything ships.
  • improvedThe dashboard API is locked to a single origin; SDK ingest endpoints stay key-authenticated, so they keep working from any app, anywhere.
  • improvedEvery push runs the full test suite — typecheck, unit, and end-to-end — before it can reach staging or production.
  • improvedDashboard chrome consolidated into a single page header — less clutter on every screen.
v2.0
A new foundation

The dashboard, rebuilt on Nuxt 4

We moved the whole frontend to a new application architecture — the foundation everything since has shipped on.

  • improvedNuxt 4 migration. The dashboard and site now run on Nuxt 4's app architecture — a current, fully supported foundation.
  • improvedSDK submodules updated across the board.
  • fixedA long tail of dashboard bugs that surfaced during the migration.
v1.2
Sweating the back end

A NestJS SDK

Catch server-side errors in NestJS apps, plus a clearer pricing page.

  • newNestJS SDK. Drop the module into a Nest app and exceptions are captured automatically.
  • newA clearer pricing page.
  • fixedAlert delivery edge cases, and the dashboard no longer refreshes more often than it needs to.
v1.1
Sweating the small stuff

Better search & dashboard quality of life

A round of dashboard quality-of-life work, led by a proper server-side issue search.

  • improvedIssue search. Search now runs server-side and matches every issue in your app — not just the page the dashboard had already loaded.
  • improvedThe dashboard remembers the last organization and app you visited.
  • fixedComment readability in dark mode.
// that's the start of the trail — more soon